softlang / metalib

A Chrestomathy of DSL implementations
https://softlang.github.io/metalib
9 stars 1 forks source link

Making pythonExternal and pythonInternal stronger #3

Closed rlaemmel closed 7 years ago

rlaemmel commented 7 years ago

Model pythonExternal

Let's add a section.

https://github.com/softlang/yas/blob/master/languages/FSML/sample.fsml Features: Concrete syntax (object perspective) Concept: External DSL

BTW, this is an example where I start to use abstract features especially in the object perspective because it feels wrong associating this sample with the same concrete feature as the implementation (which would be Text-to-AST).

Let's add section dealing with "capture".

https://github.com/softlang/yas/blob/master/languages/FSML/Python/FsmlLexer.py Features: Scanning (capture!) Concepts: Parser generation Selection: None

https://github.com/softlang/yas/blob/master/languages/FSML/Python/FsmlParser.py Features: Text-to-AST (capture!) Concepts: Parser generation Selection: None

There is still some stuff in pythonExternal that should be in pythonInternal: https://raw.githubusercontent.com/softlang/yas/master/languages/FSML/Python/FsmlVisualizer.py

Model pythonInternal

Two more sections

https://github.com/softlang/yas/blob/master/languages/FSML/Python/sample.input Feature: Interpretation (test perspective) Headline: Input for interpretation Languages: JSON

https://github.com/softlang/yas/blob/master/languages/FSML/Python/sample.output Feature: Interpretation (test perspective) Headline: Output for interpretation Languages: JSON

rlaemmel commented 7 years ago

Language "Python" missing for section "FsmlVisualizer.py". cc @sschauss Any chance the well-formedness checker can catch this, given it must have some language awareness? Well, for now, just add the missing language to the model.

rlaemmel commented 7 years ago

Further, "Template Processing" for section "FSMLCGenerator.py". (Also https://softlang.github.io/metalib/pythonInternal.html)