Commit Graph

22 Commits

Author SHA1 Message Date
Suzanne Soy
31dbe188f0 Factor out some of the common parts of the grammar 2020-08-26 00:03:15 +00:00
Suzanne Soy
6d5d0dd00b Generate grammar from precedence DAG 2020-08-24 02:40:36 +00:00
Suzanne Soy
1cf8cb6bd8 Adding operators should work now 2020-08-23 03:54:12 +00:00
Suzanne Soy
62f7209b14 Moved Parser.cs to MixFix.cs to keep the grammar generation separate. 2020-08-21 01:32:18 +00:00
Suzanne Soy
fce4e7f53c Lenses are working, implemented addition of an operator to the parser. 2020-08-21 00:21:42 +00:00
Suzanne Soy
b517d4f032 This causes an internal error (null pointer exception) in mono when it tries to initialize the types 2020-08-20 20:22:18 +00:00
Suzanne Soy
36ed190a5c Cleaned up metaprogramming utility and lenses for records 2020-08-20 07:02:00 +00:00
Suzanne Soy
b3d41496d5 Use Immutable collections pretty much everywhere" 2020-08-20 00:42:04 +00:00
Suzanne Soy
799795ffab Found a way to use System.Collections.Immutable on repl.it 2020-08-19 22:49:35 +00:00
Suzanne Soy
9e234f0663 ImmutableDictionary 2020-08-19 22:49:35 +00:00
Suzanne Soy
b0c47947a6 Custom exception classes, HashCode, started Parser 2020-08-19 18:36:41 +00:00
Suzanne Soy
967e1e3266 Simple function memoization 2020-08-19 02:28:46 +00:00
Suzanne Soy
b2b630368c Auto-generate .Equals(), .GetHashCode() and friends 2020-08-19 02:28:46 +00:00
Suzanne Soy
ea6f61f9d3 Generate record (immutable plain data objects) types in addition to variant-like (safe enums with values) 2020-08-18 23:42:41 +00:00
Suzanne Soy
f21786d6b1 Use .replit to customize the build command 2020-08-17 03:41:48 +00:00
Suzanne Soy
c1b3bd783b Some notes on parsers 2020-08-17 02:11:47 +00:00
Suzanne Soy
c534c2c6ab Epsilon transitions in lexer 2020-08-16 02:58:40 +00:00
Suzanne Soy
ff459fb1fd Lexer now uses a proper automaton. 2020-08-16 00:45:07 +00:00
Suzanne Soy
9a885195c2 Unicode lexer & compilation to JS of strings and of numbers (previously a placeholder). 2020-08-16 00:45:06 +00:00
Suzanne Soy
3f23248c14 Added .gitignore files 2020-08-16 00:45:06 +00:00
Suzanne Soy
5328827565 Added license (public domain) 2020-08-16 00:45:06 +00:00
Suzanne Soy
900749670e Initial commit 2020-08-16 00:45:06 +00:00