1
0
forked from GitHub/gf-core
Commit Graph

1017 Commits

Author SHA1 Message Date
krangelov b6047463a9 we can finally compile the English RGL 2021-10-20 19:39:02 +02:00
krangelov 5ee960ed7c fix the evaluation for Prod 2021-10-14 10:24:20 +02:00
krangelov 27f0ff14a3 VT should preserve its environment 2021-10-13 19:43:01 +02:00
krangelov c3eb6973f4 working PMCFG generation 2021-10-13 19:14:56 +02:00
krangelov 8c721e063c partial support for runtime parameters 2021-10-12 12:06:59 +02:00
krangelov 62d5ed5b42 small progress on PMCFG 2021-10-08 19:25:21 +02:00
krangelov 15e3ca9acd use prependModule to make the current module available 2021-10-08 11:56:28 +02:00
krangelov 98f42051b1 first steps towards PMCFG generation 2021-10-08 11:53:07 +02:00
krangelov e33d881ce8 finished the partial evaluator 2021-10-07 11:47:51 +02:00
krangelov fd6cd382c5 added VGlue to cover the case where we can't precompute the glue 2021-10-05 19:39:24 +02:00
krangelov 2a2d7269cf remove the Term(Error) constructor. Better propagation of errors. 2021-10-05 19:31:12 +02:00
krangelov dc59d9f3f9 trivial implementation for EPatt & EPattType 2021-10-05 15:45:16 +02:00
krangelov 3c4e7dd20c partial evaluation for (+) 2021-10-05 15:37:42 +02:00
krangelov 93c2f47752 missed VStr -> string2value 2021-10-05 13:38:00 +02:00
krangelov 51954c60ea fix the printer for strings with escape characters 2021-10-05 13:36:54 +02:00
krangelov 557cdb82a7 strings computed from a predefined operation should be tokenized 2021-10-05 11:50:59 +02:00
krangelov 26be741dea most primitives in Predef.gf are now implemented 2021-10-05 11:31:39 +02:00
krangelov 0229329d7c implemented pattern macros 2021-09-29 17:38:53 +02:00
krangelov 6efb878c43 pattern matching for "x"* 2021-09-29 14:57:18 +02:00
krangelov edd7081dea implement measured patterns 2021-09-29 13:26:06 +02:00
krangelov 2137324f81 safe pattern matching in the presence of a variable 2021-09-29 09:32:09 +02:00
krangelov 86326d282f pattern matching on strings 2021-09-29 09:18:52 +02:00
krangelov fee186feca fix table selection with meta variables and lambda variables 2021-09-28 13:49:35 +02:00
krangelov 28dd0eda22 evaluation for Prod 2021-09-28 11:47:31 +02:00
krangelov f82f19ba68 better error handling 2021-09-24 19:54:29 +02:00
krangelov f83ea160da more patterns in the partial evaluator 2021-09-24 19:14:48 +02:00
krangelov c5b6432016 implemented tables and parameters 2021-09-24 17:20:25 +02:00
krangelov ac304ccd7c more low-handing fruits in the partial evaluator 2021-09-24 15:14:52 +02:00
krangelov 3dc2af61a6 done with partial evaluation for records and variants 2021-09-24 15:00:34 +02:00
krangelov a2102b43bd got started with the new partial evaluation 2021-09-22 18:17:50 +02:00
krangelov 348c348e14 the compiler can now boot and load an .ngf file 2021-09-17 13:15:58 +02:00
krangelov b408650125 createFunction now takes arity as argument 2021-09-16 11:04:45 +02:00
krangelov fc268a16df We can now compile abstract grammars 2021-09-16 10:59:48 +02:00
krangelov 22f62be511 added PGF(pIdent,pExpr) 2021-09-14 09:34:00 +02:00
krangelov cf7673525f the compiler now compiles with the new runtime 2021-09-13 18:32:57 +02:00
krangelov 155657709a Merge branch 'master' into c-runtime 2021-07-30 11:20:04 +02:00
Andreas Källberg 7faf8c9dad Clean up redundant case expressions 2021-07-12 16:38:29 +08:00
Andreas Källberg b3881570c7 Remove last traces of the Either in value2term 2021-07-12 15:53:49 +08:00
Andreas Källberg bd270b05ff Remove the Either Int from value2term
This prevents HUGE space leak and makes compiling a PGF a LOT faster

For example, an application grammar moved from taking over 50GB
of ram and taking 5 minutes (most of which is spent on garbage colelction)
to taking 1.2 seconds and using 42mb of memory

The price we pay is that the "variable #n is out of scope" error is now
lazy and will happen when we try to evaluate the term instead of
happening when the function returns and allowing the caller to chose how
to handle the error.
I don't think this should matter in practice, since it's very rare;
at least Inari has never encountered it.
2021-07-12 15:50:43 +08:00
John J. Camilleri a1fd3ea142 Fix bug introduced in cdbe73eb47
Apparently I don't understand how pattern-matching works in Haskell
2021-07-08 13:56:58 +02:00
John J. Camilleri cdbe73eb47 Remove two missing-methods warnings 2021-07-08 12:10:41 +02:00
John J. Camilleri 0954b4cbab More cabal file cleanup. Remove some more tabs from Haskell source. 2021-07-07 13:04:09 +02:00
John J. Camilleri f2e52d6f2c Replace tabs for whitespace in source code 2021-07-07 09:40:41 +02:00
John J. Camilleri ef42216415 Add import from command line invocation to command history
Closes #64
2021-07-06 15:35:03 +02:00
Inari Listenmaa d2fb755fab Merge branch 'master' into concrete-new 2021-07-06 09:37:22 +02:00
Inari Listenmaa 1b66bf2773 Merge pull request #121 from Meowyam/issue97
resolves GrammaticalFramework/gf-core/#97
2021-07-06 09:22:48 +02:00
Meowyam 1e3de38ac4 remove redundant options 2021-07-06 15:22:59 +08:00
Inari Listenmaa 4e8859aa75 Merge pull request #118 from GrammaticalFramework/canonical
Fixes to canonical compilation
2021-07-06 09:16:52 +02:00
Meowyam dff215504a resolves GrammaticalFramework/gf-core/#97, without l 2021-07-06 15:00:17 +08:00
Inari Listenmaa 173ab96839 Hotfix for https://github.com/GrammaticalFramework/gf-core/issues/56 2021-07-06 14:59:53 +08:00