Commit Graph

589 Commits

Author SHA1 Message Date
Felipe g
e829bcf042 feat: finished desugaring 2022-10-20 10:28:26 -03:00
Felipe g
23bd93c18b feat: fixed sttm desugaring 2022-10-19 15:20:01 -03:00
Felipe g
9e2df6c7e1 feat: implemented some desugar things 2022-10-19 15:05:44 -03:00
Felipe g
5d86855a41 feat: started desugaring 2022-10-18 14:03:04 -03:00
Felipe g
da2596b954 style: format 2022-10-17 11:14:01 -03:00
Felipe g
bb4e61fabc feat: added error message to detect when a function or constructor is defined multiple times 2022-10-17 11:12:03 -03:00
Felipe g
6b39d4b79c feat: started glossary parsing 2022-10-17 09:53:36 -03:00
Felipe g
94d279c4f0 fix: fixed some parser issues 2022-10-17 09:53:26 -03:00
Felipe g
471b73f1b2 feat: made let bindings with destructuring for record constructors 2022-10-14 14:27:55 -03: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
Felipe g
13f017c375 chore: removed query and macros from the toml because they're not being used 2022-10-14 13:13:58 -03:00
Felipe g
ea57a81409 chore: fmt 2022-10-14 13:13:58 -03:00
Felipe g
769d891bf6 feat: added a bunch of structures to the parsing step 2022-10-14 13:13:58 -03:00
Felipe g
780ad2c417 feat: modified case parsing and removed open 2022-10-14 13:13:58 -03:00
Felipe g
6b72ae1bb8 fix: added no-code property to kind-driver 2022-10-14 13:13:58 -03:00
Felipe g
a894540939 fix: fixed problem with ascii validation in lexer 2022-10-14 13:13:58 -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
bad25400d7
chore: update src/kind-parser/src/errors.rs
Co-authored-by: Martin Mauch <martin.mauch@gmail.com>
2022-10-13 16:03:51 -03:00
Felipe g
a16a7cb514 fix: better error messages for unclosed parenthesis and string errors and no_code in end of line errors 2022-10-13 10:10:21 -03:00
Felipe g
56e5878fb5 fix: fixed bug with unicode width of characters like chinese ones that takes a lot of space 2022-10-13 10:09:29 -03:00
Felipe g
ef3097067e chore: fmt 2022-10-13 08:26:21 -03:00
Felipe g
c1d51d9827 feat: made simple cli 2022-10-13 08:26:11 -03:00
Felipe g
912b9fccde chore: fmt 2022-10-13 08:25:29 -03:00
Felipe g
e2a4df9577 feat: finished a simple version of the query handler 2022-10-12 19:51:34 -03: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
77a452e5fb feat: started query system 2022-10-11 17:52:52 -03:00
Felipe g
59c4281aae feat: started unbound variable checkage 2022-10-10 12:04:38 -03:00
Felipe g
82f1c41f79 fix: fixed capitalized names 2022-10-10 12:04:20 -03:00
Felipe g
921e70d668 fix: changed span to range because generated spans make no sense in the concrete tree 2022-10-09 19:35:50 -03:00
Felipe g
dbf740ff5b chore: removed grammar and fixed lockfile 2022-10-09 15:16:05 -03:00
Felipe g
e742466d5c fix: parser and expanded tree for more nodes 2022-10-09 15:11:36 -03:00
Felipe g
938fec8ca4 feat: finished report module 2022-10-09 15:10:59 -03: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
021e7560b0 feat: finalized parser \o/ 2022-10-06 14:12:49 -03:00
Felipe g
8b225b9072 feat: finalized expr parsing 2022-10-06 11:19:30 -03: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
b5f28b5caf feat: started parser 2022-10-05 16:32:12 -03:00
Felipe g
b09b544e55 refactor: started to refactor the entire compiler inspired in rustc 2022-10-04 14:02:44 -03: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