Commit Graph

311 Commits

Author SHA1 Message Date
Nicolas Abril
a4ae8db8c3
fix: Remove copy/paste leftover in syntax.md 2022-11-10 17:49:53 +01:00
Felipe G
a7650f37af
Merge pull request #413 from developedby/parse-u120
feat: Add Xu120 syntax for U120 numbers
2022-11-10 11:41:46 -03:00
Nicolas Abril
4a85dee027 feat: Add Xu120 syntax for U120 numbers 2022-11-10 15:13:52 +01:00
Felipe G
b662eefcb5
Merge pull request #410 from developedby/kdl-hash-long-names
feat: Use hash of name instead of random chars for long kdl names
2022-10-27 09:25:07 -03:00
Nicolas Abril
88f6ac73b0 feat: Use hash of name instead of random chars for long kdl names 2022-10-26 14:29:46 +02:00
Felipe G
9b15b8f78b
Merge pull request #405 from developedby/inline-simple
Accept more cases of inlined functions
2022-10-14 13:15:22 -03:00
Nicolas Abril
eb0cc9a768 feat: Accept more cases of inlined functions 2022-10-14 11:03:07 +02:00
Nicolas Abril
0337096aff refactor: Add description to kdl compilation functions 2022-10-14 11:02:01 +02:00
Nicolas Abril
6fcfca0308 feat: indent dup terms in generated kdl files 2022-10-14 10:54:25 +02:00
Felipe G
bb38de7585
Merge pull request #403 from developedby/inline-attr
feat: add inline attr, separate kdl compiler passes
2022-10-12 14:04:39 -03:00
Nicolas Abril
d82ed4d61a feat: add inline attr, separate kdl compiler passes
Add an inline attribute that substitutes a function
  application for the body of the rule that matches.
This is still limited and rejects many easily
  rewritable programs.
We would need to compile the intermediate terms to HVM
  and normalize them then to properly and efficiently
  handle all valid inlining cases.

I also separated each of the passes of the kdl compiler
  to separate functions that go over the whole AST.
This is probably less efficient, but makes it easier
  to reuse this code for other targets and to develop
  new passes.

This commit also does some light refactoring of other
  things surrounding the kdl compiler.
2022-10-12 18:01:18 +02:00
Felipe G
95964b3a79
Merge pull request #402 from developedby/excl-lam-kdl
Some stylistics improvements to kdl compilated code
2022-10-07 09:30:58 -03:00
Nicolas Abril
01937a919f Fix indentation for initial state 2022-10-07 08:09:57 +02:00
Nicolas Abril
bfa7f28401 Slightly improve genereated kdl indentation 2022-10-07 08:07:27 +02:00
Nicolas Abril
4566c26ce7 Compile kind lambdas to lambdas with ! in kdl 2022-10-07 08:07:27 +02:00
Nicolas Abril
7782961b5b Fix test for name shortening 2022-10-07 08:07:27 +02:00
Felipe G
b8625ebd5d
Merge pull request #401 from developedby/kdl-state-attr
Kdl state attr
2022-10-06 09:40:48 -03:00
Nicolas Abril
9d8faa15b3 Add kdl_state attribute for initial state for kindelia function 2022-10-05 21:44:02 +02:00
Felipe G
3aefe15bab
Merge pull request #398 from mjh316/patch-1
Fixed a typo in the `map` function example
2022-10-04 08:37:06 -03:00
Nicolas Abril
d835522697 Use Ident type in more places 2022-10-04 11:28:42 +02:00
Nicolas Abril
06a500d5a7 Check if rule patterns are valid after compilation 2022-10-04 11:06:17 +02:00
mjh
10e496dcd2
Fixed a typo in the map function example 2022-10-04 00:45:09 -07:00
Felipe G
d1694c4c65
Merge pull request #396 from felipegchi/parser-use-fix
Fixed use statement
2022-10-03 10:27:53 -03:00
Felipe g
7d3d1db24a Fixed use statement 2022-10-03 10:26:14 -03:00
Felipe G
115e70d3b2
Merge pull request #395 from developedby/num-flatten
Fix flattening of rules with nums
2022-10-03 09:25:53 -03:00
Nicolas Abril
69170c8c8c Fix flattening of rules with nums 2022-10-03 10:22:04 +02:00
Victor Maia
d4ef33305c Inc version 2022-10-01 16:33:56 -03:00
Victor Taelin
9a75f2749b
Merge pull request #393 from developedby/kdl-attrs
Switch kindelia name to an attribute
2022-10-01 16:33:43 -03:00
Nicolas Abril
b9f8124ef7 Switch kindelia name to an attribute 2022-10-01 19:52:58 +02:00
Victor Maia
959914a6b3 Inc version 2022-09-30 11:58:08 -03:00
Victor Maia
c40fb4eb11 Merge branch 'master' of github.com:kindelia/kind2 2022-09-30 11:57:59 -03:00
Felipe g
2c6bb724fd Fix tests 2022-09-30 10:08:37 -03:00
Felipe g
ab77205405 Fix error mesasge 2022-09-30 10:08:37 -03:00
Felipe g
49063557e7 Add target 2022-09-30 10:08:31 -03:00
Felipe g
b12c7db5d5 Style cargo clippy 2022-09-30 10:07:42 -03:00
Felipe g
d0513e2cdd Removed file 2022-09-30 10:07:40 -03:00
Felipe g
3dfdc03765 Fix conflicts 2022-09-30 10:07:19 -03:00
Felipe G
224fcde905
Merge pull request #391 from felipegchi/use-namespaces
Added parsing and resolution of names
2022-09-30 10:03:11 -03:00
Felipe g
f5e683266a Added parsing and resolution of names 2022-09-29 14:58:46 -03:00
Felipe G
30b9ee5ca9
Merge pull request #390 from felipegchi/record-fix
Fix record
2022-09-28 14:56:52 -03:00
Felipe g
a720d1b976 Fix record 2022-09-28 14:56:32 -03:00
Felipe G
5b3bcdf318
Merge pull request #388 from felipegchi/record-types
Record types
2022-09-28 12:56:03 -03:00
Felipe g
773b33b4e1 Fix tests 2022-09-28 12:55:49 -03:00
Felipe G
5ee00e2c33
Merge pull request #385 from developedby/ns-option
Add option to use namespace on kdl compilation
2022-09-28 12:52:57 -03:00
Felipe g
678258d296 Fix ope 2022-09-28 12:51:41 -03:00
Felipe g
7fbe7a3014 Added open statements 2022-09-28 12:24:10 -03:00
Nicolas Abril
a07e8e584e Add option to use namespace on kdl compilation 2022-09-27 21:06:34 +02:00
Felipe g
767831a86a Added record type derivation 2022-09-27 15:00:57 -03:00
Felipe g
3ec16e935a Refactor to make it easier to add new derivations 2022-09-27 13:13:16 -03:00
Felipe G
628cb75ed3
Merge pull request #387 from felipegchi/hole-fix
Added better rules for holes
2022-09-27 11:44:45 -03:00