Skip to content

Jonathans ToDo list

Jonathan Gordon edited this page Nov 28, 2019 · 1 revision

Brain dump of the various ideas floating around in Jonathans head....


CodeGen

  • Re-enable auto-generated sysl file loading for validation
  • Determine if it is feasible to switch to using the sysl grammar file as THE input, not a seperate grammar language. This would require we define a method of adding raw strings for output (and i guess in the future using the same system for text parseing)....
!type MyRule:
   foo <: string [~static, text="hello"]
   world World

Which would be equivalent of MyRule: "hello" World. IF that were possible then we could likely reuse most of the evaluation engine to implement AST-codegen, replacing the current implementation.

Sysl Validation

  • Currently the only validation on input sysl files (outside of parseing) is for the codegen validation, which determines that the correct AST types are being built from a given transform. This should be extended as much as possible to a full sysl validator for every sysl file, ensuriing that the types are correct, views/functions exist, etc. https://github.com/anz-bank/sysl/projects/11

Language Support

  • Implement LSP server in the binary which can interact with the existing vscode plugin (and make an intelliJ plugin to connect also)
  • Work on shrinking the grammar

Use SYSL to PARSE files

  • Based on the codegen changes, it may be possible to self-host sysl(!) (i.e have the sysl grammar defined sysl files which can then generate the sysl parser) remove the use of antlr!