rvcas
77386893d7
test: actually repeat
2022-12-14 09:45:23 +01:00
Kasey White
15dc202810
Feat: generic function call tests work
2022-12-14 09:45:23 +01:00
Kasey White
e4d9ca4586
support generics
2022-12-14 09:45:23 +01:00
rvcas
16fbf5bbcd
feat: fix recursive functions
2022-12-14 09:45:22 +01:00
Kasey White
3d3b3d7e10
checkpoint
2022-12-14 09:45:22 +01:00
KtorZ
04c05f8d63
Add some tests that make the compiler panick.
2022-12-14 09:45:22 +01:00
KtorZ
95986fed83
Fix lexer for signed integers.
2022-12-13 19:52:30 -05:00
KtorZ
18bf89418a
Fix codegen for binary operator 'or'
...
a && b → if a { b } else { false }
a || b → if a { true } else { b }
2022-12-13 18:52:23 -05:00
KtorZ
431b0cfcf2
Preserve newlines after blocks of comments.
...
This is an example of output from the formatter now:
```
//// Some module documentation
// foo
const a: Int = 42
// Some comment block
// For which newlines are respected.
// Foo
// Another one
/// add_one documentation
pub fn add_one(n: Int) -> Int {
// n + 1
n + 1
}
```
before this commit, comments would all be collapsed into one group
above the function as:
```
// Some comment block
// For which newlines are respected.
// Foo
// Another one
/// add_one documentation
pub fn add_one(n: Int) -> Int {
```
2022-12-13 18:52:23 -05:00
KtorZ
22a526bb13
Enforce unique top-level names for tests too.
...
This prevents the compiler from crashing later on. Test names should be unique and not clash with function names.
2022-12-13 18:52:23 -05:00
rvcas
4dfb454d8a
refactor: change match to if matches!
2022-12-13 10:34:34 -05:00
KtorZ
1637a0d30e
Add --match-tests to 'check' cmd
...
For running only tests matching a certain pattern. Useful when doing TDD.
2022-12-13 10:34:34 -05:00
KtorZ
0d891daac8
Rework the language-tour
...
To be more progressive in introducing concepts. It also now groups similar concepts together so that they are easier to find and connect with one another.
I've also added few precisions along the way, as well as corrected a few old syntax (e.g. 'case', generics, tuples..).
Note that some examples provided in the language tour currently fail to parse / type-check properly.a
2022-12-13 10:29:38 -05:00
KtorZ
308cbb76ff
Show resources as links + use permalink + add a few.
2022-12-13 10:29:38 -05:00
KtorZ
6361a1da08
Rename 'comparisons' to 'Ecosystem Overview'
...
'comparisons' felt a bit out-of-context on the summary/sidebar.
2022-12-13 10:29:38 -05:00
KtorZ
9add261006
Review 'comparisons', add some precisions here and there.
2022-12-13 10:29:38 -05:00
KtorZ
8a4c5a5516
Add some minor precisions in 'getting-started'
...
And tweaks the link to the editor plugins already -- a bit ahead of time.
2022-12-13 10:29:38 -05:00
rvcas
69db9696d6
feat: prefix tuples with hash again cause ambguity with call
2022-12-13 10:27:17 -05:00
rvcas
6dc4738b66
feat: update formatter for new changes
2022-12-12 19:22:11 -05:00
rvcas
a4f6388eca
feat: remove the need for # in front of tuples
2022-12-12 19:22:11 -05:00
rvcas
dfc57b347a
feat: switch generic type args to be delimited by chevrons
2022-12-12 19:22:11 -05:00
Olof Blomqvist
51d1dce180
update link to user manual
2022-12-12 09:15:11 -05:00
rvcas
a18aad7daf
refactor(project): use new Options instead of a spiderweb of bools
2022-12-10 19:14:58 -05:00
Matthias Benkort
0449c818e5
Merge pull request #160 from txpipe/pairing_testing
...
Aiken Testing Framework
2022-12-09 16:03:59 +01:00
KtorZ
0eb3cf221b
Trigger and report on more events in the compilation pipeline.
2022-12-09 15:04:02 +01:00
KtorZ
749d8ecb10
Fix formatter to not prefix tests as 'pub'
2022-12-09 14:35:50 +01:00
KtorZ
a541018a56
Complete CHANGELOG about new test support.
2022-12-09 14:29:13 +01:00
KtorZ
d09d38d65b
Add a flag '--skip-tests' to the 'check' cmd.
...
So that tests can be skipped, and the old behavior recovered if necessary.
Tests execution is on by default however.
2022-12-09 14:14:15 +01:00
rvcas
4ad74bef1f
refactor: move prints to cli via EventListener trait
2022-12-08 19:25:28 -05:00
KtorZ
801ab3989e
feat: display test runner summary alongside test results.
...
Moar sexy.
2022-12-08 19:25:28 -05:00
KtorZ
4cae4a4467
pad left instead of right, so units/thousands are aligned.
2022-12-08 19:25:28 -05:00
rvcas
2ba712eef6
feat: start adding padding to test output
2022-12-08 19:25:28 -05:00
KtorZ
5770ea2456
Make test runner more sexy.
...
Using colors.
2022-12-08 19:25:28 -05:00
KtorZ
db25ff3817
refactor: run_tests to avoid repetition.
2022-12-08 19:25:28 -05:00
rvcas
e9d8e1d317
feat: print budget consumed by test
2022-12-08 19:25:24 -05:00
rvcas
141a9aef30
feat: impl Sub for ExBudget
2022-12-08 19:24:20 -05:00
rvcas
f250d3df84
feat: eval should take initial budget
2022-12-08 19:24:20 -05:00
KtorZ
4cdb5d8d02
Implement test runner.
...
easy.
2022-12-08 19:24:20 -05:00
rvcas
384c4daa4a
feat: add test_gen function
2022-12-08 19:24:20 -05:00
KtorZ
bc785673b2
Fix compilation errors for the newly introduce test & add type inference.
...
Tests are basically functions for which the return type should unify with bool. In principle, the type checker could also check that a test function has no arguments but, a test function with arguments wouldn't parse in the first place; feels a bit hacky but it works when considering the pipeline as a whole.
Note that the code generation is still to be done.
2022-12-08 19:24:20 -05:00
KtorZ
ea48747825
Extend parser for 'test' keyword.
2022-12-08 19:24:20 -05:00
rvcas
a65b4aa471
feat: add test def and test token
2022-12-08 19:24:20 -05:00
Kasey White
80a9b7b36a
feat: add map support and tuple deconstruction in let
2022-12-08 14:28:30 -05:00
Kasey White
26d2a95618
missing a couple forces
2022-12-08 14:28:30 -05:00
Kasey White
543f62e9f4
update contribution docs
2022-12-08 14:27:19 -05:00
Sasha Bogicevic
56009eb88b
Update readme to include fresh rustup start
2022-12-08 08:59:05 -05:00
Kasey White
2f7131e9b8
feat: add tuples and streamline conversion of types to and from data
2022-12-07 08:40:23 -05:00
rvcas
d8ff574045
chore: nuke stdlib from main repo
2022-12-06 22:26:07 -05:00
rvcas
45990f1f84
feat: unify tuples and stdlib updates
2022-12-06 22:23:40 -05:00
Kasey White
3f47a1f4b8
fix: constr issue
...
- also fixed constant parsing
- added new cbor flag to eval
Co-authored-by: rvcas <x@rvcas.dev>
2022-12-05 22:55:57 -05:00