|
|
|
|
|
by panstromek
129 days ago
|
|
Interesting. It looks to me this was more about the portability of the resulting binary, IIUC. Dion project was more about user interface to the programming language and unifying tools to use AST (or Typed AST?) as a source of truth instead of text and what that unlocks. Dion demo is here: https://vimeo.com/485177664 |
|
Their system allow for intermediate state with errors. If that erroneous state can be stored to disk, they using a storage representation that is equivalent to text. If erroneous state cannot be stored, this makes Dion system much less usable, at least for me.
They also deliberately avoided pitfalls of languages like C. While they can do that because they can, I'd like to see how they will extend their concepts of user interface to the programming language and unifying tools to use (Typed) AST to C or, forgive me, C++, and what it'll unlock.
Also, there is an interesting approach of error correcting parsers: https://www.cs.tufts.edu/comp/150FP/archive/doaitse-swierstr...
Much extended version is in Haskell at Hackage: https://hackage.haskell.org/package/uu-parsinglib
As it allows monadic parsing combinators, it can parse context-sensitive grammars such as C.
It's interesting to see whether their demonstration around 08:30 of Visual Studio unable to recover from an error properly can be improved with error correction.