Krasimir Angelov
|
8926a4f4c2
|
alloca.h -> malloc.h
|
2023-01-26 08:35:11 +01:00 |
|
Krasimir Angelov
|
b138d0c89b
|
use alloca for compatibility with MSVC
|
2023-01-26 08:31:44 +01:00 |
|
Krasimir Angelov
|
8f7e4c084c
|
an API to create unique function names
|
2022-12-05 08:11:43 +01:00 |
|
Krasimir Angelov
|
e2a7974853
|
partial support for epsilon rules
|
2022-10-04 11:44:22 +02:00 |
|
Krasimir Angelov
|
cd280272f3
|
bottom up prediction and maximal chunks
|
2022-09-23 11:33:16 +02:00 |
|
Krasimir Angelov
|
3e0cc91a02
|
first rudimentary version of a parser
|
2022-09-16 12:34:46 +02:00 |
|
Krasimir Angelov
|
96304a52d1
|
added checks to control compilation with emscripten
|
2022-07-04 14:26:04 +02:00 |
|
Krasimir Angelov
|
5594679a83
|
first draft of the new allocator with transactions support
|
2022-05-20 13:55:45 +02:00 |
|
Krasimir Angelov
|
4d240f7260
|
working fullFormLexicon. Slows down loading and compilation
|
2022-02-08 16:38:30 +01:00 |
|
Krasimir Angelov
|
c36d804c11
|
an attempt to fix the compilation on Mac
|
2022-01-11 14:57:41 +01:00 |
|
Krasimir Angelov
|
d87b3ce166
|
get rid of the destructive updates for seq_ids
|
2022-01-10 10:27:09 +01:00 |
|
Krasimir Angelov
|
00f857559d
|
restore the sharing of sequences. Shrinks the grammar by ~45%
|
2022-01-08 19:49:42 +01:00 |
|
krangelov
|
d274f4856e
|
compile lindef & linref rules
|
2021-12-06 15:47:57 +01:00 |
|
krangelov
|
4a68ea93b3
|
generate and store the ranges for all linearization rules
|
2021-11-26 14:05:03 +01:00 |
|
krangelov
|
857e85c8a1
|
implement pre {..}
|
2021-11-25 19:04:35 +01:00 |
|
krangelov
|
1107b245da
|
remove obsolete code
|
2021-11-19 09:38:04 +01:00 |
|
krangelov
|
06980404a9
|
correctly distinguish between fun and data judgements
|
2021-11-18 13:50:09 +01:00 |
|
krangelov
|
c806ce2d26
|
minimal changes to make the runtime compilable on Windows
|
2021-11-10 15:52:02 +01:00 |
|
krangelov
|
9eb88f9281
|
a number of new API functions for the concrete syntax.
|
2021-11-09 09:16:20 +01:00 |
|
krangelov
|
a4ad17a478
|
pgf_create_lin now has access to the abstract function
|
2021-11-09 08:50:54 +01:00 |
|
krangelov
|
2bed0b708c
|
PgfVector -> Vector
|
2021-11-09 02:10:17 +01:00 |
|
krangelov
|
6552bcf909
|
Unify the data model between the C runtime and the Haskell binding
|
2021-11-09 02:04:36 +01:00 |
|
krangelov
|
b3ef14c39b
|
another fix for MacOS
|
2021-11-08 10:41:09 +01:00 |
|
krangelov
|
02b9915d11
|
attempt to fix compilation on Mac
|
2021-11-07 20:22:41 +01:00 |
|
krangelov
|
06b59b1f10
|
fix
|
2021-11-07 19:48:35 +01:00 |
|
krangelov
|
3f261c2854
|
first draft of the data model for the concrete syntax
|
2021-11-07 19:45:11 +01:00 |
|
krangelov
|
309a16d471
|
reference counting for concrete syntaxes
|
2021-11-03 10:48:20 +01:00 |
|
krangelov
|
1413c273cc
|
API for adding concrete syntaxes. Garbage collection to be fixed!
|
2021-10-21 19:18:14 +02:00 |
|
John J. Camilleri
|
3bdfe1a336
|
Minor cleanup
|
2021-10-12 23:27:49 +02:00 |
|
John J. Camilleri
|
ead1160a75
|
More changes to compile on macOS (incomplete)
|
2021-10-12 15:29:29 +02:00 |
|
krangelov
|
c6d6914688
|
switch to using FILE * in the reader
|
2021-09-15 08:06:18 +02:00 |
|
krangelov
|
ae0a6aa6b6
|
clean up everything after revision is not needed anymore.
|
2021-09-11 16:33:22 +02:00 |
|
krangelov
|
bcc33af36b
|
added support for branches and explicit transaction commit
|
2021-09-08 14:09:23 +02:00 |
|
krangelov
|
2e846cdf59
|
added safeguard to ensure that PgfRevision is an actual object
|
2021-09-08 09:17:12 +02:00 |
|
krangelov
|
a843ddba55
|
better error handling which always reports the right file name
|
2021-09-07 15:54:27 +02:00 |
|
krangelov
|
9cea2cc70e
|
change the API to allow different grammar revisions
|
2021-09-06 15:49:39 +02:00 |
|
krangelov
|
b28e891a6b
|
a type annotated version of marshaller/unmarshaller
|
2021-08-26 17:27:34 +02:00 |
|
krangelov
|
69f74944e2
|
The unmarshaller is no longer stored in the PGF object but is passed explicitly to each function that needs it.
|
2021-08-26 16:14:56 +02:00 |
|
krangelov
|
221f0b7853
|
PgfUnmarshaller now mimics a C++ class. Allows for keeping state
|
2021-08-13 18:14:56 +02:00 |
|
krangelov
|
2c1700776e
|
implemented readExpr & readType
|
2021-08-11 22:07:01 +02:00 |
|
krangelov
|
a5008c2fe1
|
implemented functionType and marshalling for types and expressions
|
2021-08-10 15:07:41 +02:00 |
|
krangelov
|
91f183ca6a
|
move the C sources to the subfolder pgf again for backwards compatibility
|
2021-08-08 18:29:16 +02:00 |
|
krangelov
|
8f0a1b8fee
|
started a new database-backed runtime from scratch
|
2021-07-30 12:08:28 +02:00 |
|
krangelov
|
26361b3692
|
fix the parsing for literals after the latest changes in the parser
|
2019-10-09 14:18:05 +02:00 |
|
krangelov
|
e2ddea6c7d
|
first version of a parser which returns chunks in case of failure
|
2019-08-30 13:31:57 +02:00 |
|
Krasimir Angelov
|
d103fe6755
|
make pgf_production_is_lexical public since it will be needed in the Haskell binding
|
2017-09-25 12:20:48 +02:00 |
|
Krasimir Angelov
|
bcb97a336e
|
make the API for indexing in the parser and the linearizer public since it will be needed in the Haskell binding
|
2017-09-14 18:11:24 +02:00 |
|
krasimir
|
7d72d99c2f
|
explicitly classify all functions in libpgf as either internal or API functions
|
2017-04-19 09:34:23 +00:00 |
|
krasimir
|
a8eaa2f2e5
|
a patch from Bjørnar Luteberget for compatibility with MSVC
|
2017-04-12 10:24:56 +00:00 |
|
krasimir
|
192b1cc018
|
the reasoner's states are now closures just like the code for the def rules. This means more compact JIT compiled code and uniformity with the code for def rules
|
2015-07-04 15:06:34 +00:00 |
|