|
|
bc8b362878
|
better naming for the typecheck functions
|
2024-12-31 01:50:22 +01:00 |
|
|
|
af953eb133
|
assert that lazy values are constant
|
2024-12-21 17:00:16 +01:00 |
|
|
|
859ab6c518
|
arithmetic optimizations
|
2024-12-21 16:26:37 +01:00 |
|
|
|
6a321ef1a3
|
constant evaluation of builtins
|
2024-12-21 16:02:19 +01:00 |
|
|
|
3db2380734
|
"""compiled""" calculator
|
2024-12-21 15:16:13 +01:00 |
|
|
|
42bb62ee5f
|
allow underscore in names
|
2024-12-20 17:32:27 +01:00 |
|
|
|
fc72ac8357
|
compiler optimizations
|
2024-12-20 15:41:35 +01:00 |
|
|
|
a9cf220fcb
|
clean up code
|
2024-12-20 01:35:39 +01:00 |
|
|
|
7e7574f3a9
|
cargo fmt
|
2024-12-20 01:33:28 +01:00 |
|
|
|
60df6ddcb5
|
the most cumbersome way to read in a string and print it again
|
2024-12-20 01:32:39 +01:00 |
|
Jonas Maier
|
2de4bdb89f
|
make test check multiplicity subtyping instead of multiplicity violation in nfun
|
2024-12-17 16:30:35 +01:00 |
|
Jonas Maier
|
a673569543
|
subtyping to make some operations simpler
|
2024-12-17 16:08:23 +01:00 |
|
|
|
b3de189e5d
|
properly display builtins
|
2024-12-17 13:35:53 +01:00 |
|
|
|
f4f0393c1e
|
document parsing limitation and explicitly fail
|
2024-12-17 13:35:53 +01:00 |
|
|
|
c430bf3733
|
list test
|
2024-12-17 12:32:57 +01:00 |
|
|
|
d3f449c17f
|
generic list example
|
2024-12-17 01:58:17 +01:00 |
|
|
|
8dbaca2bbc
|
implement panic
|
2024-12-15 04:36:04 +01:00 |
|
|
|
9316f21146
|
cargo fmt
|
2024-12-15 04:34:30 +01:00 |
|
|
|
c065c854fc
|
builtins using a macro
|
2024-12-15 04:34:05 +01:00 |
|
|
|
4883817cf1
|
fmt
|
2024-12-15 00:09:07 +01:00 |
|
|
|
e575d87791
|
slightly better parse error when integer literal is too big
|
2024-12-15 00:06:44 +01:00 |
|
|
|
a89d3b2283
|
optimization: do not perform last clone of substituted expression
|
2024-12-14 22:14:19 +01:00 |
|
|
|
66e81452a5
|
add timing info
|
2024-12-14 19:54:46 +01:00 |
|
|
|
ecc2523132
|
implement eager evaluation
|
2024-12-14 19:40:35 +01:00 |
|
|
|
1e39aa2c7c
|
replace never-args with dummy values
|
2024-12-14 19:31:10 +01:00 |
|
|
|
24cbdffa7d
|
keep laziness in check
|
2024-12-11 22:42:58 +01:00 |
|
|
|
505d5b88db
|
testing implicit return types
|
2024-11-24 23:19:03 +01:00 |
|
|
|
d0ff3d6b6e
|
fmt, fix, clippy
|
2024-11-23 01:10:44 +01:00 |
|
|
|
6ba2443ff6
|
whitespace trimming
|
2024-11-23 01:03:29 +01:00 |
|
|
|
fa73fda4a7
|
make type errors somewhat readable
|
2024-11-23 00:22:48 +01:00 |
|
|
|
5e2c28dec7
|
if and booleans purely as lambdas
|
2024-11-22 23:49:20 +01:00 |
|
|
|
8637fa8791
|
arrow when asking for input during evaluation
|
2024-11-22 21:54:19 +01:00 |
|
|
|
a3c7224a0c
|
different Ctrl+C behaviour
|
2024-11-22 21:34:27 +01:00 |
|
|
|
cad68e93a1
|
allow functions to omit return type
|
2024-11-22 21:28:26 +01:00 |
|
|
|
72cdf3f0ff
|
let bindings
|
2024-11-22 21:22:24 +01:00 |
|
|
|
6b24d4b636
|
proper repl
|
2024-11-22 20:29:22 +01:00 |
|
|
|
95042c999f
|
repl
|
2024-11-17 23:47:18 +01:00 |
|
|
|
0f1d24d03d
|
more test
|
2024-11-17 23:46:21 +01:00 |
|
|
|
cfcbc0b3cd
|
reading from and writing to the console
|
2024-07-21 19:09:03 +02:00 |
|
|
|
bbdd0f9a8a
|
fix substitution bug
|
2024-07-21 18:38:12 +02:00 |
|
|
|
24432d2b37
|
add primitive types
|
2024-07-21 17:54:28 +02:00 |
|
|
|
1160957873
|
lambda-calculus panics are now results in Rust
|
2024-07-21 16:26:10 +02:00 |
|
|
|
adaa9daa27
|
evaluation
|
2024-07-21 16:18:06 +02:00 |
|
|
|
865ec5a889
|
cargo fmt && cargo clippy --fix
|
2024-07-21 15:30:48 +02:00 |
|
|
|
18267a3d79
|
more test
|
2024-07-21 15:28:46 +02:00 |
|
|
|
9346b1b6be
|
typechecking tests
|
2024-07-21 14:29:41 +02:00 |
|
|
|
309b6b16b1
|
better error message for multiplicity scope violation
|
2024-07-21 14:12:08 +02:00 |
|
|
|
dc9d94e6b9
|
type errors now display span
|
2024-07-21 14:03:34 +02:00 |
|
|
|
a39ff9258b
|
parser adds span to nodes
|
2024-07-21 13:41:07 +02:00 |
|
|
|
fedf1d65c0
|
proper multiplicity
|
2024-07-21 13:18:43 +02:00 |
|