greg
|
e3b236a15d
|
If expressions
|
2017-09-19 22:11:04 -07:00 |
|
greg
|
68bbd62ab6
|
Make token debug nicer
|
2017-09-19 22:11:04 -07:00 |
|
greg
|
a8b77848b4
|
kill old EBNF in comments
|
2017-09-19 22:11:04 -07:00 |
|
greg
|
839731f2d1
|
Make op! macro part of binexp!/prefexp! macros
For tests
|
2017-09-19 22:11:04 -07:00 |
|
greg
|
f51e1a3c47
|
make Operation a tuple-style struct
|
2017-09-19 22:11:04 -07:00 |
|
greg
|
fc350cd03e
|
Prefix operators
|
2017-09-19 22:11:04 -07:00 |
|
greg
|
8fe7c85b00
|
return keyword + idea for how to use it in for
|
2017-09-19 22:11:04 -07:00 |
|
greg
|
b920fae93b
|
variable bindings
|
2017-09-19 22:11:04 -07:00 |
|
greg
|
1981b74d89
|
Nicen up precedence-testing
|
2017-09-19 22:11:04 -07:00 |
|
greg
|
077ab8ddb8
|
Add trace to binexp parser
|
2017-09-19 22:11:04 -07:00 |
|
greg
|
9775bfc342
|
bool literals
|
2017-09-19 22:11:04 -07:00 |
|
greg
|
505d23a327
|
Parse . operator
|
2017-09-19 22:11:04 -07:00 |
|
greg
|
81c4566c2b
|
Improved operator parsing
|
2017-09-19 22:11:04 -07:00 |
|
greg
|
8be757beca
|
Some changes to EBNF grammar
|
2017-09-19 22:11:04 -07:00 |
|
greg
|
20c74953b5
|
Get rid of unimplemented! and panic!
|
2017-09-19 22:11:04 -07:00 |
|
greg
|
d5c3227966
|
Parse string literals
|
2017-09-19 22:11:04 -07:00 |
|
greg
|
18c761a5b5
|
Wrap all parse methods in record-printing macro
|
2017-09-19 22:11:04 -07:00 |
|
greg
|
89cf101362
|
Refactoring prace trace infra
|
2017-09-19 22:11:04 -07:00 |
|
greg
|
66d10604ba
|
make parse_method! macro more naturalistic
|
2017-09-19 22:11:04 -07:00 |
|
greg
|
565461e1db
|
Show more useful information in parse tracing
|
2017-09-19 22:11:04 -07:00 |
|
greg
|
5ecd28d057
|
Print parse record in REPL as TraceArtifact
|
2017-09-19 22:11:04 -07:00 |
|
greg
|
6c5dbac406
|
Starting to add logic to track recursive descent calls
|
2017-09-19 22:11:04 -07:00 |
|
greg
|
5dd1cd79ff
|
Parsing call expressions
|
2017-09-19 22:11:03 -07:00 |
|
greg
|
dfc89e5060
|
Index expressions
This only partially works
|
2017-09-19 22:11:03 -07:00 |
|
greg
|
5871bf68de
|
test for function parsing
|
2017-09-19 22:11:03 -07:00 |
|
greg
|
34b569eb5f
|
Starting to parse formal params
|
2017-09-19 22:11:03 -07:00 |
|
greg
|
5810fb7961
|
type alias test
|
2017-09-19 22:11:03 -07:00 |
|
greg
|
1a3076a949
|
Change syntax of rc macro
|
2017-09-19 22:11:03 -07:00 |
|
greg
|
1d9e5edfba
|
Rudimentary type stuff
|
2017-09-19 22:11:03 -07:00 |
|
greg
|
555d2a7ba5
|
Identifier tests
|
2017-09-19 22:11:03 -07:00 |
|
greg
|
291fb61c8d
|
Parse identifiers
Some more complicted types of expression
|
2017-09-19 22:11:03 -07:00 |
|
greg
|
685b579fdd
|
paren exprs
|
2017-09-19 22:11:03 -07:00 |
|
greg
|
f72e77cbb6
|
Remove printlns
|
2017-09-19 22:11:03 -07:00 |
|
greg
|
4b5afef17e
|
Added one more test
|
2017-09-19 22:11:03 -07:00 |
|
greg
|
5889998126
|
Precedence parsing
Using the Pratt parser algorithm (probably with some bugs as of yet).
Need to clean up the code some as well
|
2017-09-19 22:11:03 -07:00 |
|
greg
|
c19946bb6d
|
Additional test
|
2017-09-19 22:11:03 -07:00 |
|
greg
|
d1301b30e6
|
Added infra for operators
|
2017-09-19 22:11:03 -07:00 |
|
greg
|
f8287e42ce
|
Binary literal test case
|
2017-09-19 22:11:03 -07:00 |
|
greg
|
bd6bf2f4bb
|
Parse binary literal
|
2017-09-19 22:11:03 -07:00 |
|
greg
|
a6b336d84c
|
type anno EBNF
|
2017-09-19 22:11:03 -07:00 |
|
greg
|
deab74b992
|
Kill extraneous lines
|
2017-09-19 22:11:03 -07:00 |
|
greg
|
0755d42112
|
More parsing work
|
2017-09-19 22:11:03 -07:00 |
|
greg
|
117e0e38a8
|
Starting types
|
2017-09-19 22:11:03 -07:00 |
|
greg
|
c52fd4c73d
|
Parse test
|
2017-09-19 22:11:03 -07:00 |
|
greg
|
cac3ea86cf
|
Import TokenType and Kw everywhere
|
2017-09-19 22:11:03 -07:00 |
|
greg
|
92ece39d5e
|
Only IntLiteral
Signed/unsigned is via - operator
|
2017-09-19 22:11:03 -07:00 |
|
greg
|
14c09bb40c
|
Float literals too
|
2017-09-19 22:11:03 -07:00 |
|
greg
|
0dabbc700b
|
Concise-ify code
|
2017-09-19 22:11:03 -07:00 |
|
greg
|
741e5f7f9b
|
Parsing basic numbers!
|
2017-09-19 22:11:03 -07:00 |
|
greg
|
cfefceabf9
|
More infra
Don't want EOF after all
|
2017-09-19 22:11:02 -07:00 |
|
greg
|
ea08f8cab8
|
More parse infra
|
2017-09-19 22:11:02 -07:00 |
|
greg
|
7d1c07c481
|
Parsing infrastructure
|
2017-09-19 22:11:02 -07:00 |
|
greg
|
7831cb8d8a
|
Start parsing
|
2017-09-19 22:11:02 -07:00 |
|
greg
|
737dad6438
|
Added some tests
And commented out old tests for Maaru that don't compile
|
2017-09-19 22:11:02 -07:00 |
|
greg
|
74f8c16599
|
Fix bug with _
|
2017-09-19 22:11:02 -07:00 |
|
greg
|
a82f24a158
|
Kill import
|
2017-09-19 22:11:02 -07:00 |
|
greg
|
6459ad28e8
|
A few more keywords
|
2017-09-19 22:11:02 -07:00 |
|
greg
|
57d4222746
|
Operators, keywords largely working
|
2017-09-19 22:11:02 -07:00 |
|
greg
|
88d1896281
|
Identifiers and keywords
|
2017-09-19 22:11:02 -07:00 |
|
greg
|
7fe0a6589e
|
Unclosed string
|
2017-09-19 22:11:02 -07:00 |
|
greg
|
ac5bdd7bcb
|
Change some func signatures around tokenizing and errors
|
2017-09-19 22:11:02 -07:00 |
|
greg
|
8bf5f40a2a
|
Some string tokenizing - not done
|
2017-09-19 22:11:02 -07:00 |
|
greg
|
7e505dd88e
|
Stuff
|
2017-09-19 22:11:02 -07:00 |
|
greg
|
f15427e5d9
|
A bunch of token stuff
|
2017-09-19 22:11:02 -07:00 |
|
greg
|
a53135a897
|
More elaborate tokens
|
2017-09-19 22:11:02 -07:00 |
|
greg
|
8dc8d15437
|
Cleaned up Repl struct
|
2017-09-19 22:11:02 -07:00 |
|
greg
|
b5a6c5903e
|
Switch to contentful output types
|
2017-09-19 22:11:02 -07:00 |
|
greg
|
c97e58c2aa
|
Cleared out all remaining linter warnings
|
2017-09-19 22:11:02 -07:00 |
|
greg
|
fb009497a4
|
Still more cleanup
|
2017-09-19 22:11:02 -07:00 |
|
greg
|
4b13fef734
|
More cleanup
|
2017-09-19 22:11:02 -07:00 |
|
greg
|
192a7e611f
|
Parsing BNF
|
2017-09-19 22:11:01 -07:00 |
|
greg
|
d3febb201b
|
More parsing
|
2017-09-19 22:11:01 -07:00 |
|
greg
|
f9fe81993f
|
Beginning parsing code
|
2017-09-19 22:11:01 -07:00 |
|
greg
|
ff01d4b798
|
Initial Schala (for real) commit
|
2017-09-19 22:11:01 -07:00 |
|
greg
|
dd22ca0291
|
Grand renaming of things
|
2017-09-19 22:11:01 -07:00 |
|
greg
|
5d15d60ab6
|
Structs implemented
albeit very inefficiently
|
2017-09-19 22:11:01 -07:00 |
|
greg
|
e0f5f01e69
|
Kill error messges for not using Result
|
2017-09-19 22:11:01 -07:00 |
|
greg
|
424998c128
|
Lists work!
|
2017-09-19 22:11:01 -07:00 |
|
greg
|
b93625819c
|
Update ReducedValue to handle lists
|
2017-09-19 22:11:01 -07:00 |
|
greg
|
f90bfb88ca
|
Fix display of list
|
2017-09-19 22:11:01 -07:00 |
|
greg
|
850b77541b
|
Display of lists sorta works
|
2017-09-19 22:11:01 -07:00 |
|
greg
|
dbf5886aad
|
List evaluation technically working
|
2017-09-19 22:11:01 -07:00 |
|
greg
|
dd93adf5b7
|
try!() -> ?
|
2017-09-19 22:11:01 -07:00 |
|
greg
|
d8df98ba01
|
Beginnings of list literals
|
2017-09-19 22:11:01 -07:00 |
|
greg
|
4da771036a
|
Part of evaluation path for indexing done
|
2017-09-19 22:11:01 -07:00 |
|
greg
|
3911c45dde
|
Introduced index notation
|
2017-09-19 22:11:01 -07:00 |
|
greg
|
f3c3d4595e
|
Immediate lambda call
|
2017-09-19 22:11:01 -07:00 |
|
greg
|
34dba9cc4d
|
Schala - fix bug with comments
|
2017-09-19 22:11:01 -07:00 |
|
greg
|
039022bfc5
|
Get rid of println
|
2017-09-19 22:11:01 -07:00 |
|
greg
|
8fd5fb5a0b
|
Added language name functionality
|
2017-09-19 22:11:00 -07:00 |
|
greg
|
6dec35d460
|
Think I've nearly gotten it traitified correctly...
|
2017-09-19 22:11:00 -07:00 |
|
greg
|
421a9a7e9b
|
Abstract evaluation into EvaluationMachine trait
|
2017-09-19 22:11:00 -07:00 |
|
greg
|
f37ab80163
|
Fix tests
|
2017-09-19 22:11:00 -07:00 |
|
greg
|
178434171e
|
Cleaning up some types
|
2017-09-19 22:11:00 -07:00 |
|
greg
|
fd4610e175
|
Make newtype for LLVM code strings
|
2017-09-19 22:11:00 -07:00 |
|
greg
|
5103f03fa5
|
Forgot to add mod.rs file
|
2017-09-19 22:11:00 -07:00 |
|
greg
|
1a4bf24ab1
|
Move schala-specific stuff into its own module
|
2017-09-19 22:11:00 -07:00 |
|