Erin
5a5403a8df
Changed way of String lexing
2022-03-13 13:18:51 +01:00
Erin
c567341775
Added support for idents starting with _
2022-03-12 23:26:39 +01:00
Erin
070f3b2f0e
fixed spelling of ain't
2022-03-02 11:36:08 +01:00
Erin
9d6f5740b1
\ is valid part of identifiers
2022-03-01 23:07:23 +01:00
Erin
0ec54ecc51
Introduced newtype for Rc<RefCell<Value>>
2022-03-01 22:13:49 +01:00
Erin
3f4cc58b87
Satisfied most of THE ALLMIGHTY CLIPPY's requests.
2022-03-01 21:53:58 +01:00
Erin
b975bc52d0
Bool, Abool and Nil values are no longer tokens
2022-03-01 18:57:03 +01:00
Erin
567665a314
fixed strings
2022-02-24 21:53:43 +01:00
Erin
a23dac3ce0
Rust 2021
...
- Consts map generated using iterators
2022-02-23 21:47:07 +01:00
Erin
cb6fcceb79
Fixed tests and examples
2022-02-22 22:49:56 +01:00
Erin
f55f9e0512
Changed string delimiters
...
You know what could be cursed? Using Rust's block comment syntax as String delimiters!
2022-02-22 22:39:03 +01:00
Erin
d1f18be279
Removed unused tokens from Lexer
...
Uh, they were lying there with no use for 9 months!
2022-02-22 22:31:05 +01:00
Erin
43ae772894
Exposed variables to public API
2022-02-14 00:12:03 +01:00
Erin
edce9dcc91
Add from_value variable constructor
2022-02-14 00:11:37 +01:00
Erin
ca4a9aba4c
added new_with_vars
2022-02-14 00:08:48 +01:00
Erin
e79c98f2f6
Fixed all errors
2022-02-13 00:58:50 +01:00
Erin
5d29c8cf87
fixed base 55
2022-02-13 00:55:51 +01:00
Erin
8c867c7899
Value::Int is isize
2022-02-13 00:55:19 +01:00
Erin
5b320259f6
Changed Built-in functio -> integer coercion
2022-02-13 00:37:17 +01:00
Erin
a9a9cc71e1
Implemented builtin functio division
2022-02-13 00:30:40 +01:00
Erin
3338ec94c2
implemented subtraction for built-in functios
2022-02-13 00:25:56 +01:00
Erin
d634692f12
Implemented not for built-in functios
2022-02-13 00:07:23 +01:00
Erin
a1f6d1ae5f
Implemented Display for built-ins
2022-02-12 22:52:14 +01:00
Erin
06ec25e717
Implemented coercions for built-in functios
2022-02-12 22:10:30 +01:00
Erin
405f88e394
Implemented built-in functios
...
- Missing coercions and operations
2022-02-12 21:14:55 +01:00
Erin
68e5e7cf41
Functio -> Int more cursed
2022-01-22 21:02:10 +01:00
Erin
7cf9433462
Cart -> Int more cursed
2022-01-22 20:52:09 +01:00
Erin
2191e126f0
Implemented [] as length operator
2022-01-22 20:48:21 +01:00
Erin
8e55872f10
Implemented Len in parser
2022-01-22 20:37:44 +01:00
Alex Bethel
912437f10c
Add martens owo
2021-12-29 17:06:46 -06:00
Alex Bethel
b6413f6219
Merge branch 'feature/coercions' of ssh://git.ablecorp.us:20/AbleScript/able-script into feature/coercions
2021-12-14 16:16:44 -06:00
Alex Bethel
20b1408179
Implement function chain division
2021-12-14 16:16:28 -06:00
Erin
573df02ba6
Fixed T-Dark blocks in blocks
2021-12-14 23:16:19 +01:00
Erin
c1471bcdb7
Removed clone
2021-12-14 23:05:21 +01:00
Erin
6c836125b3
Renamed stuff
2021-12-14 23:02:55 +01:00
Alex Bethel
57939a87b0
Arity-based functio deinterlacing
2021-12-14 15:56:40 -06:00
Erin
db95d2f718
🚗 Implemented ordered functio chaining
2021-12-14 21:45:44 +01:00
Erin
872a16578f
Removed a feature which disallowed comments in functios
2021-12-14 21:10:58 +01:00
Erin
a9d9c7aa27
Implemented subtraction for functio chains... maybe?
2021-12-09 17:51:03 +01:00
Erin
6430387119
Implemented coercions when subtracting able functios
2021-12-09 17:18:37 +01:00
Erin
c92cb7e818
Who cares about the content, we have 256 commits!
...
And I readded a thing
2021-12-09 00:38:36 +01:00
Erin
6d48dca547
sync
2021-12-09 00:35:43 +01:00
Erin
61ee6b3597
Git things beyond your comprehension mortals
2021-12-09 00:34:41 +01:00
Erin
3bfe600103
Implemented halfway of functio sub
2021-12-09 00:33:45 +01:00
Alex Bethel
0b703173f8
Function division
2021-12-08 16:33:06 -07:00
Erin
3c98caf2d6
Made Clippy happy (so he will not kill us in sleep)
2021-12-08 22:56:12 +01:00
Alex Bethel
3cdca1666a
Use b-string instead of array of b-chars
2021-12-08 14:39:04 -07:00
Erin
20c6b4c7cf
Implemented Abool -> Functio
2021-12-07 22:58:41 +01:00
Alex Bethel
3044ef91e3
Better BF function conversions
2021-12-07 14:27:45 -07:00
Alex Bethel
ffcd0000c2
I made a cursed thing 😂
2021-12-07 14:24:58 -07:00
Erin
f5e4be4d67
Implemented Functio to Aboolean
2021-12-07 21:57:37 +01:00
Erin
904d647031
huh???
2021-12-07 21:20:24 +01:00
Erin
6889c3f3b2
Fmt!
2021-12-07 21:20:16 +01:00
Erin
65bb29d401
Function negation
2021-12-07 21:18:45 +01:00
Alex Bethel
6ee12a7c91
Merge branch 'fix/unused-code'
2021-11-27 17:20:54 -06:00
Alex Bethel
2f31e7c3d5
Fix unused code warnings
2021-11-27 11:15:29 -06:00
Alex Bethel
6cd2b8bd44
Avoid trailing comma in cart printout
2021-11-27 11:11:03 -06:00
Alex Bethel
711b8e1c03
Slightly better ExecEnv::assign
...
A little more idiomatic, avoid some borrow checker clumsiness, add
comments.
2021-11-27 11:02:41 -06:00
Alex Bethel
9727a9b577
Assign read syntax
2021-11-05 17:09:53 -06:00
Alex Bethel
6849f7f296
Coerce indexing assignments into non-carts
2021-11-05 16:18:07 -06:00
Erin
5d6ac150ab
Renamed semi_terminated
to semicolon_terminated
2021-10-23 23:20:45 +02:00
Alex Bethel
5634a8ad2b
Get cart assignments working
2021-10-23 15:08:10 -06:00
Alex Bethel
5db6eebdc0
Almost get cart assignments working
2021-10-23 14:17:17 -06:00
Erin
ae1416e329
Read in AST takes Assignable instead of Ident
2021-10-23 21:53:21 +02:00
Alex Bethel
706d39e860
Merge branch 'feature/line_continuations'
2021-10-23 12:46:05 -06:00
Erin
bcd446c5d1
Moved Assignable creation functions
2021-10-21 20:51:24 +02:00
Erin
3e8b80af2a
Removed in_the_past_this_used_to_crash_but_not_anymore
test
2021-10-19 23:35:46 +02:00
T-Dark
6779d7c898
Fixed integer overflows. Why did I even write in the first place?
2021-10-19 17:29:53 +01:00
Erin
610ba7fc40
Change Cart AssignableKind to Index.
2021-10-13 13:20:23 +02:00
Alex Bethel
31fe3f53be
Sort of fix cart assignments
2021-10-12 14:33:23 -06:00
Erin
cdf4c5a308
improvement
2021-10-12 22:22:33 +02:00
Erin
4c6dd311a7
Added Assignable support in parser / AST
2021-10-12 22:14:20 +02:00
Alex Bethel
6eb97c6032
Add statement continuation in REPL in CLI
...
Typing ```
var foo = [
``` into the REPL now causes it to prompt you to complete the
statement rather than just printing an "unexpected EOF" error.
2021-10-09 22:31:14 -06:00
Erin
e47e739e02
Generalised some lexer functions
2021-10-04 23:03:23 +02:00
Erin
71c5738a6e
Renamed Iden
to Ident
2021-10-04 23:00:18 +02:00
Alex Bethel
e8349bf0d9
Improve consistency of code & comments
...
Changed all `&str.to_string()` into `&str.to_owned()`, and made the
grammar of the `Value::into_*` comments uniform.
2021-09-04 10:54:53 -06:00
Erin
a288db985d
Variable name shortened
2021-09-02 18:36:25 +02:00
Erin
4d1e85a295
Fixed division
...
x/0 is now x/42 instead of 42 which makes it more confusing
2021-09-02 18:35:33 +02:00
Erin
113554428f
Clippy
2021-09-01 17:46:17 +02:00
Erin
82c09e5b1b
All operations except functio ones are implemented
...
- Aboolean logic
- Cart division/multiplication
2021-08-31 00:41:37 +02:00
Erin
14e9eb5c6b
Implemented negation for most types
2021-08-30 23:19:25 +02:00
Alex Bethel
6f8a49b711
Add parsing negative numbers
2021-08-30 15:03:29 -06:00
Erin
82239be160
Not is now lexing and parsing correctly
2021-08-30 22:55:31 +02:00
Erin
92f2c62d59
Removed And and Or ops because they aren't cursed enough
2021-08-30 22:18:09 +02:00
Erin
49ba66de07
Most of operations are implemented
2021-08-30 22:14:13 +02:00
Erin
58f0645b54
fmt + docs
2021-08-29 00:34:08 +02:00
Erin
31296ec0b8
Used body length for AbleFunctio to i32 instead of AST length
2021-08-29 00:28:45 +02:00
Erin
7a275556c7
Revert "Eval errors are now correctly spanned"
...
This reverts commit 2f5b954b7c
.
2021-08-29 00:26:40 +02:00
Erin
2f5b954b7c
Eval errors are now correctly spanned
2021-08-29 00:23:59 +02:00
Erin
e30eef32b5
Eval's integer representation is now its length
...
- consistency with other types
2021-08-29 00:07:26 +02:00
Erin
1c8722ba99
Added placeholders for And + Or
...
and used placeholders for -, * and / in interpret
2021-08-28 23:59:04 +02:00
Erin
c66616ee2c
Fixed add overflows
2021-08-28 23:55:36 +02:00
Erin
e8f08a90d5
Display carts sorted
2021-08-28 23:52:58 +02:00
Erin
4c74e3bef3
Implement custom PartialEq
for Value
2021-08-28 23:43:59 +02:00
Erin
8b57cbe5a5
Most coercions implemented
2021-08-28 23:27:35 +02:00
Erin
2c36b2a5f7
Require space after owo
for making comments.
2021-08-23 18:58:28 +02:00
Alex Bethel
4c3d44dfd8
Fix panics on invalid indexes
2021-08-16 15:06:40 -06:00
Erin
c70e77f717
Relicensed to MIT
2021-08-11 20:32:12 +02:00
Erin
aa854a067b
Restructured project ( #37 )
...
* Separation to two crates
- `ablescript`: library, language
- `ablescript_cli` - cli: repl and executor for files
* Added lints (back) to library
- unsafe_code and unwrap_used are forbidden
2021-08-10 21:32:12 +02:00