Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

implement first additional input language #27

Open
4 tasks
soc opened this issue Aug 23, 2022 · 0 comments
Open
4 tasks

implement first additional input language #27

soc opened this issue Aug 23, 2022 · 0 comments
Labels
enhancement improving existing functionality feature adding a new feature language-properties changes to the Properties language

Comments

@soc
Copy link
Collaborator

soc commented Aug 23, 2022

Motivation

Over the last decades it has become clear that providing access to language-external schemas and types is important.

But the techniques to do so, like code generation, compiler plugins (e. g. Manifold), macros, type providers and direct embedding have each shown their weaknesses.

Instead of going down this path again, make these schema definitions first-class citizens, by accepting them as valid source files.

This means that *.properties, *.xsd, *.jssd, etc. shall be treated similar to *.core files, i. e. they are parsed according to their grammar, an AST is constructed and typed, and code is emitted.

Goal

Implement support for *.properties files as first-class citizens in Core.

Tasks

  • make Core pick up *.properties files
  • lex and parse *.properties files
  • build AST for *.properties files
  • typecheck *.properties files
@soc soc added this to the 0.8 milestone Aug 23, 2022
@soc soc added enhancement improving existing functionality feature adding a new feature language-properties changes to the Properties language labels Oct 4, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement improving existing functionality feature adding a new feature language-properties changes to the Properties language
Projects
None yet
Development

No branches or pull requests

1 participant