Commit Graph

34 Commits

Author SHA1 Message Date
Suzanne Soy
7fd15028d4 Version submited to the language jam 2020-09-01 13:05:15 +00:00
Suzanne Soy
5f11930009 WIP 2020-09-01 06:55:29 +00:00
Suzanne Soy
de12594067 WIP 2020-09-01 06:41:07 +00:00
Suzanne Soy
5b536be53b Parser seems to work 2020-09-01 04:52:24 +00:00
Suzanne Soy
d0249b9a76 WIP 2020-09-01 00:19:53 +00:00
Suzanne Soy
592a758fb1 Keep annotations in Parser 2020-08-31 20:21:56 +00:00
Suzanne Soy
89c9908957 Fixed bug: an empty or is not vacuously .IsEmpty 2020-08-31 15:26:53 +00:00
Suzanne Soy
74c3abcccc Debugging the parser 2020-08-31 13:36:14 +00:00
Suzanne Soy
829bff6c2b Parser on immutable stream of lexemes, returns a rough representation of the AST 2020-08-31 02:27:59 +00:00
Suzanne Soy
afb04df4a6 Lexer on IImmutableEnumerable (replayable streams, leaves open the possibility to make coroutines to update the lexer's tokens later) 2020-08-30 22:22:04 +00:00
Suzanne Soy
90e9a53107 draft for the parser 2020-08-28 02:15:32 +00:00
Suzanne Soy
139ed61fcd Hide default case shorthands for Grammar to check for empty grammars 2020-08-26 00:19:11 +00:00
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