1
0
forked from GitHub/gf-core
Commit Graph

486 Commits

Author SHA1 Message Date
Krasimir Angelov
a216c1aa6d ensure left-to-right pattern maching of records 2022-01-11 13:31:44 +01:00
Krasimir Angelov
310b40be31 strip redundant code 2022-01-11 13:31:00 +01:00
Krasimir Angelov
54993bce12 deepForce VSymCat 2022-01-11 12:48:14 +01:00
Krasimir Angelov
f5435dba38 restore the rigt order for terms 2022-01-09 08:00:05 +01:00
Krasimir Angelov
00f857559d restore the sharing of sequences. Shrinks the grammar by ~45% 2022-01-08 19:49:42 +01:00
Krasimir Angelov
16b0eea568 code cleanup 2021-12-28 13:38:19 +01:00
Krasimir Angelov
c9b90a509c first draft of a working "create lin" command 2021-12-28 13:36:53 +01:00
krangelov
21d38a7b4a detect when we load a grammar with a different abstract and don't try to merge 2021-12-24 16:01:42 +01:00
krangelov
12b4958b99 make it possible to merge PGF files in the compiler 2021-12-22 10:47:22 +01:00
krangelov
13b6d51d43 support records as parameter types 2021-12-21 11:16:01 +01:00
krangelov
0a8b6d2586 make sure that types in ResValue are precomputed 2021-12-21 09:16:53 +01:00
krangelov
f2b6f36e02 generalize the syntax for pre patterns 2021-12-20 15:44:30 +01:00
krangelov
2be3fd7e78 eval pattern macroses 2021-12-20 15:03:15 +01:00
krangelov
ef84adf107 refactoring 2021-12-19 14:18:19 +01:00
krangelov
f6789fdfbf refactor VC -> VC & VEmpty 2021-12-19 14:13:37 +01:00
krangelov
275f8f37ce handle pre when it is in the arguments of a Predef function 2021-12-19 10:43:06 +01:00
krangelov
b266c55f8a narrowing for table [...] 2021-12-17 17:26:23 +01:00
krangelov
2cb4fda502 more clean up 2021-12-17 10:05:20 +01:00
krangelov
2f79892463 clean up imports 2021-12-17 10:01:07 +01:00
krangelov
c8dcc10325 another fix for cc 2021-12-16 14:00:25 +01:00
krangelov
4ed287a809 bug fix and refactoring in the cc command 2021-12-16 13:14:29 +01:00
krangelov
8466692584 a bit more refactoring 2021-12-16 10:58:40 +01:00
krangelov
60c9d46141 simplify the Ident type 2021-12-16 09:53:39 +01:00
krangelov
7dea9598a4 remove the trace messages 2021-12-16 08:46:37 +01:00
krangelov
937a78c628 drop the -trace option 2021-12-15 13:08:10 +01:00
krangelov
f793ed4413 generate PMCFG only for complete modules 2021-12-15 09:53:45 +01:00
krangelov
b61e870783 a better error message 2021-12-15 09:36:12 +01:00
krangelov
4b7eaaf43f make sure that everything is evaluated before conversion 2021-12-15 08:23:31 +01:00
krangelov
14feb56140 bugfix in the conversion of parameters to numbers 2021-12-14 19:08:01 +01:00
krangelov
e2b6774bd3 the elimination of empty tokens is moved to the typechecker 2021-12-14 15:59:13 +01:00
krangelov
7556662344 compile record expansions with let bindings to avoid duplication 2021-12-14 15:27:53 +01:00
krangelov
f332a03c79 support Ints n as a parameter type 2021-12-14 15:27:03 +01:00
krangelov
51e337a910 prevent the compilation of empty tokens 2021-12-14 11:39:18 +01:00
krangelov
77693dca3e one more trivial optimization for string patterns 2021-12-14 09:25:08 +01:00
krangelov
4886c7ce3b optimize certain pathological pattern matchings for strings 2021-12-14 09:16:40 +01:00
krangelov
9efb6b002f if a module is compiled with -no-pmcfg the PMCFG is generated on demand 2021-12-13 11:17:10 +01:00
krangelov
bb053119b3 when a pattern macro is invoked, the operation must be computed first 2021-12-13 09:55:37 +01:00
krangelov
f7bf18d101 fix value2term for predefined functions 2021-12-13 09:44:28 +01:00
krangelov
ad4c5029a3 fix the implementation for Predef.tk & Predef.dp 2021-12-10 12:05:01 +01:00
krangelov
9b0b038984 handle records of parameters 2021-12-09 17:45:39 +01:00
krangelov
0069946f42 linearization for HOAS expressions 2021-12-09 08:45:53 +01:00
krangelov
cd3f290ff2 always generate PMCFG for the literal categories 2021-12-07 15:51:34 +01:00
krangelov
d274f4856e compile lindef & linref rules 2021-12-06 15:47:57 +01:00
krangelov
bbff79aaa3 added API for print names 2021-12-03 16:49:36 +01:00
krangelov
655576c291 the variable labeling should start with 0. 2021-12-03 15:00:04 +01:00
krangelov
483f93822c fix in the PMCFG generation 2021-12-01 10:13:01 +01:00
krangelov
4a68ea93b3 generate and store the ranges for all linearization rules 2021-11-26 14:05:03 +01:00
krangelov
794e15aca3 fix in the PMCFG generation 2021-11-26 08:32:00 +01:00
krangelov
06980404a9 correctly distinguish between fun and data judgements 2021-11-18 13:50:09 +01:00
krangelov
6295b32405 generate field names and pipe them to the runtime 2021-11-17 11:34:31 +01:00