Commit Graph

158 Commits (61bf45754bd67ed9b8bc8e930f2461ab386e0328)

Author SHA1 Message Date
Alex Bethel 61bf45754b Revert "Update README.md"
This reverts commit 535093f0bc.

It is, in fact, still better than Javascript.
2021-07-01 17:17:48 -05:00
Alex Bethel 72b434a877 Add more info to Cargo.toml 2021-06-30 16:45:44 -05:00
Alex Bethel 2e84ecb6f8 Merge branch 'feature/read' 2021-06-19 17:34:19 -05:00
Alex Bethel 5f2987f33a Merge 'feature/forty-two' into master 2021-06-19 17:32:12 -05:00
Alex Bethel 4d73b29e88 Implement `read` semantics in interpreter
Also added a test file `iotest.able` to just read data and print
it (the `cat` of AbleScript I guess).
2021-06-18 16:05:50 -05:00
ondra05 793d41e614 Implemented read in Parser 2021-06-18 20:28:53 +02:00
Alex Bethel 47e8f542aa Forbid use of `unwrap` w/ clippy 2021-06-16 10:36:52 -05:00
Alex Bethel 98fe899373 Clippy conformance 2021-06-16 10:35:06 -05:00
Alex Bethel d75945d79c Add `--debug` option for printing AST 2021-06-16 10:29:27 -05:00
Alex Bethel 70172bc01c Better error messages, remove debug AST printing 2021-06-16 10:25:55 -05:00
Alex Bethel 8099cb86bd Remove quotes around rickroll string
They're not necessary, because the `rickroll` file is already included
as a string.
2021-06-15 11:47:39 -05:00
Alex Bethel 119d99800d Fix ignored unit tests in interpret.rs 2021-06-15 11:46:01 -05:00
Alex Bethel e50f2a47e3 Fix unit tests 2021-06-15 11:29:52 -05:00
Alex Bethel 273e2ba8a6 `rustfmt`: whoops, let's put a semicolon there
maybe I should have actually looked at what rustfmt produced before I
just blindly accepted it and pushed it onto master.
2021-06-15 10:26:44 -05:00
Alex Bethel 049d12645b `rustfmt`: break long line 2021-06-15 10:24:50 -05:00
Alex Bethel b051972834 Use pass-by-reference for variables, pass-by-value for expressions 2021-06-15 09:51:00 -05:00
Alex Bethel d5d7f1a037 Implement most of pass-by-reference
We need some parser changes to make it work fully: function arguments
are now identifiers rather than expressions.
2021-06-15 09:51:00 -05:00
Alex Bethel 0b99884c66 Lack of `else` statements is intentional 2021-06-15 09:51:00 -05:00
Alex Bethel d861eaf230 Improve pass-by-reference test 2021-06-15 09:51:00 -05:00
Alex Bethel 2dfc0f1470 Add pass-by-reference test (doesn't work yet)
Also rename the "hello_world.able" test to "hello-world.able" for
consistency.
2021-06-15 09:51:00 -05:00
Alex Bethel 5e0e2b83f9 Implement `functio` declaration & calling 2021-06-15 09:51:00 -05:00
Able ae96b4b235
Merge pull request #33 from HTG-YT/master 2021-06-15 04:39:07 -05:00
HTG-YT 53ee36fff4
comply with the move of `rickroll` 2021-06-14 20:53:27 +08:00
HTG-YT fe932e0148
move `rickroll` to `src/` folder 2021-06-14 20:52:38 +08:00
HTG-YT ee4023f30a
Update rickroll 2021-06-14 09:42:38 +08:00
HTG-YT 7fbd8e0186
move `rickroll` content into a file 2021-06-14 09:42:23 +08:00
HTG-YT 4639270aa5
Create rickroll 2021-06-14 09:41:20 +08:00
HTG-YT 133b15b01e
`rustfmt`: add trailing comma 2021-06-14 09:40:42 +08:00
HTG-YT 25149d54da Merge branch 'AbleCorp:master' into master 2021-06-14 09:40:00 +08:00
ondra05 1725ea0943 Added build staus badge 2021-06-13 18:43:09 +02:00
ondra05 ada7d9efbb
Added CI config
Rust Template
2021-06-13 18:14:41 +02:00
ondra05 13cf3b76df
Update README.md 2021-06-13 18:12:21 +02:00
HTG-YT 3246bec404
handle `Token::Rickroll` in parser 2021-06-13 13:24:09 +08:00
HTG-YT f0b4fff857
Update interpret.rs 2021-06-13 13:22:30 +08:00
HTG-YT 99320312be
handle `StmtKind::Rickroll` 2021-06-13 13:22:01 +08:00
HTG-YT a1962b1f1e
add `StmtKind::Rickroll` 2021-06-13 13:11:51 +08:00
HTG-YT a93307fb0a
add `rickroll` lexeme in lexer 2021-06-13 13:11:02 +08:00
Alex Bethel 6f7a5722f8 Make arithmetic errors evaluate to 42 2021-06-12 10:48:44 -05:00
Alex Bethel a3ddb4d108 Integrate `const.rs` as `consts` 2021-06-12 10:45:25 -05:00
Alex Bethel 597b994c00 Reimplement BF function declaration semantics 2021-06-12 09:26:21 -05:00
ondra05 c9ccf336af Better comment 2021-06-11 19:44:53 +02:00
ondra05 38cef6fea3 Removed todo when unknown token 2021-06-11 18:34:34 +02:00
ondra05 39aad6eb78 Fixed invalid spanning of UnexpectedToken in `parse_expr` 2021-06-11 18:31:25 +02:00
ondra05 69fcc0b550 BF code is now Vec<u8> 2021-06-11 18:10:11 +02:00
ondra05 4d3adbf89f Basic BfFunctio support 2021-06-11 17:52:47 +02:00
Alex Bethel 7228dafe29 Re-enable assignment semantics 2021-06-11 10:05:48 -05:00
ondra05 b9c56b5d3a Added variable assignment to parser
- Fixed parse error, that `rlyeh` returned HopBack
2021-06-11 16:59:40 +02:00
ondra05 c06e0747b8
Merge pull request #29 from HTG-YT/interpreter-fixes
add `interessant`, `nevergonnagiveyouup` and `funny` constants
2021-06-11 09:33:48 +02:00
HTG-YT b44bef1101
add `nevergonnagiveyouup` constant 2021-06-11 15:26:30 +08:00
HTG-YT 7de2e8b260
add `interessant` and `funny` constants 2021-06-11 15:19:27 +08:00