Many hyperlinks are disabled.
Use anonymous login
to enable hyperlinks.
110 check-ins using file samples/mandelbrot.g1 or samples/mandelbrot.g version bb2b13bc58
|
2021-11-26
| ||
| 00:37 |
| |
|
2021-11-25
| ||
| 21:21 | Got rid of the where operator. Predicates are now added to types simply by following the type with a proposition list. check-in: 23ecb4f9cb user: zlodo tags: trunk | |
| 20:30 |
| |
|
2021-11-24
| ||
| 19:45 | Propositions are now parsed like regular statement sequences, but using the proposition list under construction as the current builder check-in: 8be0ff932c user: zlodo tags: trunk | |
| 00:38 | Removed a misleading comment check-in: ea3608d6e9 user: zlodo tags: trunk | |
| 00:03 |
| |
|
2021-11-23
| ||
| 19:45 |
| |
|
2021-11-22
| ||
| 20:33 | Parser: split block parsing code check-in: a4eaf901ef user: zlodo tags: trunk | |
| 20:22 | Function pre-conditions and post-conditions now use the same proposition lists as type predicates check-in: 1c335aeb04 user: zlodo tags: trunk | |
|
2021-11-19
| ||
| 22:28 | Replaced "TypePredicates" by a more generic "Propositions" class, to be used for function predicates as well check-in: 098b3c34c9 user: zlodo tags: trunk | |
|
2021-11-16
| ||
| 21:18 | The details of creating a new visibility scope are now handled by the builder instead of being hardcoded in the parser check-in: 16dd587889 user: zlodo tags: trunk | |
|
2021-11-13
| ||
| 14:09 | The builder is now passed as the first param of the _DropValue extension point check-in: c33b227735 user: zlodo tags: trunk | |
|
2021-11-11
| ||
| 20:31 | Removed two other obsolete files check-in: ade3099696 user: zlodo tags: trunk | |
| 20:19 | Removed a file that was not properly deleted in the previous commit check-in: b808c4a5f5 user: zlodo tags: trunk | |
| 20:05 | Refactored the code builder: it is now carried around as a Value, and accessed through a bunch of extension points, so we can have different builders (and even user defined ones) later to make classes etc. check-in: 1ad61a2717 user: zlodo tags: trunk | |
| 01:00 |
| |
|
2021-11-05
| ||
| 12:56 | Fixed non mutable reference passing verification. It was a completely stupid error entirely in the prelude. I'm already fucking up using my own language, this bode well check-in: 0c58009de2 user: zlodo tags: trunk | |
|
2021-11-03
| ||
| 22:55 |
| |
|
2021-11-01
| ||
| 11:16 | Verifier: fixed verification taking a billion years in some cases check-in: ec2b1e3b74 user: zlodo tags: trunk | |
|
2021-10-31
| ||
| 18:52 |
| |
|
2021-10-30
| ||
| 22:51 |
| |
|
2021-10-29
| ||
| 20:03 | Template rules: implemented a function to setup bindings for captured predicates check-in: eccb9be7b9 user: zlodo tags: trunk | |
|
2021-10-28
| ||
| 21:48 | Template rules: implemented a function to extract the type predicate hashes of captured types check-in: 8fe613b1ac user: zlodo tags: trunk | |
| 20:25 | Template: split template function verification from instantiation check-in: 84723188cd user: zlodo tags: trunk | |
|
2021-10-27
| ||
| 22:23 | Func: CompileFunc() doesn't perform function verification anymore, there's now a separate CompileAndVerifyFunc() for that check-in: 562bf11329 user: zlodo tags: trunk | |
| 20:55 | Parser: when building a function, if its parent identity depends on type predicates captured by template vars, build it as a template function instead. check-in: 45078c42df user: zlodo tags: trunk | |
|
2021-10-26
| ||
| 18:43 | Type predicates: implemented helper functions to append / filter out type predicate hashes in identities. check-in: d40e6470bf user: zlodo tags: trunk | |
|
2021-10-25
| ||
| 19:34 | Type predicates: store the expressions as an array of values, which avoids unecessary conversions and results in the inclusion of the CIR from the expressions in the hash check-in: 996d8d9686 user: zlodo tags: trunk | |
|
2021-10-24
| ||
| 20:22 | Implemented CIR instruction hashing check-in: f5cd8d2642 user: zlodo tags: trunk | |
|
2021-10-23
| ||
| 19:40 | Small code cleanup, moved some code to .cpp that didn't need to be in the header check-in: ef3548db6c user: zlodo tags: trunk | |
| 16:34 | Implemented hashing of EIR terms check-in: ec41139b5a user: zlodo tags: trunk | |
|
2021-10-09
| ||
| 22:07 | Prelude: use the Conjunction instruction to build the reference predicate equivalence check check-in: 233221b915 user: zlodo tags: trunk | |
| 21:50 | Added the Conjunction CIR instruction to build a conjunction from predicates at verification time check-in: e3485faf08 user: zlodo tags: trunk | |
| 20:12 | Predicates: add the possibility to store named sets of predicates in types, to be retrieved from a dictionary at verification time check-in: 459f60ca3a user: zlodo tags: trunk | |
| 15:52 |
| |
|
2021-10-08
| ||
| 17:06 | Linux build fix check-in: e386f21089 user: zlodo tags: trunk | |
|
2021-10-07
| ||
| 22:37 | Added tests for mutref predicates equivalence checking check-in: 50c3984309 user: zlodo tags: trunk | |
|
2021-10-06
| ||
| 21:50 | Mut ref predicates verification: display a useful error message check-in: 05ada78145 user: zlodo tags: trunk | |
| 14:13 | Diagnostics: when registering a custom diagnostic message, save the context stack along with it check-in: 18734ccbef user: zlodo tags: trunk | |
|
2021-10-04
| ||
| 16:13 | Fixed build issues with Tracy on mac and updated it to the last version check-in: f408a2e123 user: zlodo tags: trunk | |
| 12:06 | Cleanup check-in: b974d30199 user: zlodo tags: trunk | |
| 11:57 |
| |
|
2021-10-01
| ||
| 19:20 |
| |
|
2021-09-30
| ||
| 23:37 | Fixed a couple of bugs, but the linux version is broken for now (due to language bugs that can't be worked around and need to be fixed) check-in: 24415e41e4 user: zlodo tags: trunk | |
| 22:07 | Correctly generate and link executables on darwin check-in: 5f6197d1a0 user: zlodo tags: trunk | |
| 19:14 | Added a builtin g0 variable that exposes the name of the target OS, just to be able to quickly hack around some rudimentary mac support check-in: ec5428614c user: zlodo tags: trunk | |
|
2021-09-29
| ||
| 22:59 | Fixes for wsl build check-in: 886e9f72c4 user: zlodo tags: trunk | |
| 22:07 |
| |
|
2021-09-28
| ||
| 17:59 | Fix functions and template functions not getting compiled with visibility over their original enclosing scope, but over the current scope at the point of invocation instead check-in: 39c8a653da user: achavasse tags: trunk | |
|
2021-09-26
| ||
| 23:25 | Fixed template bugs with parametric types check-in: 097569fdd6 user: achavasse tags: trunk | |
| 21:11 | TDecl: instead of directly storing the type signature (and forgetting all about the nested TExprs), we store the TExpr and generate the signature during typechecking check-in: 00408e8723 user: achavasse tags: trunk | |
| 19:47 |
| |
| 17:00 | g0 api: added a function to retrieve the CFG from a code builder check-in: e1194caa9e user: achavasse tags: trunk | |
| 16:16 | g0 api: removed the old codegen module wrapper, use TypeWrapper instead check-in: ded246dccd user: achavasse tags: trunk | |
| 14:17 | Intrinsics: expose the current code builder as an implicit parameter check-in: 60a2f901d5 user: achavasse tags: trunk | |
| 13:03 | Integrated mimalloc check-in: 8398bd36c2 user: achavasse tags: trunk | |
| 12:00 |
| |
|
2021-09-25
| ||
| 15:53 | eir: implemented OrPattern term check-in: 6b3eee40c4 user: achavasse tags: trunk | |
|
2021-09-24
| ||
| 19:11 | Overload resolution: cache which overload was selected for a given argument tuple check-in: 7bb051b826 user: achavasse tags: trunk | |
|
2021-09-23
| ||
| 21:42 | Got rid of trie versus trie matching, again. The clown show goes on check-in: ad0b20f57d user: achavasse tags: trunk | |
|
2021-09-22
| ||
| 20:25 | Removed the gross use of std::any from the type checking trie, also fixed some horribly wrong type error that got hidden by the std::any and happened to miraculously work anyway check-in: fabfc6df97 user: achavasse tags: trunk | |
|
2021-09-21
| ||
| 22:43 | Resurrected and updated trie versus trie matching that was removed [e9ee5d4728e2b2807b761d67820df11dcfbcdbaea2742828ac9ec8f8d3372e3e|a long time ago] to attempt an overload resolution optimization check-in: 626dafb38e user: achavasse tags: trunk | |
| 18:48 | eir: remove the function to match a single eir against another eir, which was never actually used check-in: dbf5bbf612 user: achavasse tags: trunk | |
|
2021-09-20
| ||
| 23:23 | Integrated the Tracy profiling client and added some profiling instrumentation check-in: b846dfa2fb user: achavasse tags: trunk | |
|
2021-09-19
| ||
| 23:35 | Fixed various bugs encountered while trying to override an extension point in the prelude check-in: 89c0616e71 user: achavasse tags: trunk | |
| 20:18 | Implemented "Implies" and "PHOverride" verification-specific CIR instructions check-in: 56ae4179a9 user: achavasse tags: trunk | |
| 19:30 | g0 api: ReferenceType and retrieving type predicates check-in: 78e91a4545 user: achavasse tags: trunk | |
| 16:06 | Began implementing the prelude, which now sets up the g1 namespace, hiding all the internal builtins and APIs from user code. check-in: 15fd7eba11 user: achavasse tags: trunk | |
| 14:42 | g0 api: #CompileFileToFunction takes the identity to use as root as parameter check-in: dd5e98c20d user: achavasse tags: trunk | |
| 14:23 | g0 api: Env check-in: 0da72aac62 user: achavasse tags: trunk | |
| 13:59 | g0 api: diagnostics check-in: 5ccfe91819 user: achavasse tags: trunk | |
| 11:20 | g0 api: CIR: CFG check-in: bdfee6615a user: achavasse tags: trunk | |
| 10:30 | g0 api: CIR: BasicBlock check-in: b96622b654 user: achavasse tags: trunk | |
|
2021-09-18
| ||
| 18:43 | g0 api: more work on the CIR api check-in: 447824df93 user: achavasse tags: trunk | |
| 17:00 |
| |
|
2021-09-17
| ||
| 23:04 | g0api, builtins: got rid of TermWrapper and ValueWrapper, use specializations of TypeWrapper instead to allow for more generic code check-in: 4a571387ed user: achavasse tags: trunk | |
| 20:43 | g0 api: more work on the CIR api check-in: a7c05af907 user: achavasse tags: trunk | |
| 19:15 |
g0 api:
| |
|
2021-09-16
| ||
| 21:31 | g0 api: started implementing the CIR api check-in: 8dd49b0d89 user: achavasse tags: trunk | |
| 21:01 | g0 api: implemented Value api check-in: 5c68efeb07 user: achavasse tags: trunk | |
| 20:05 | g0 api: the EIR Terms are now completely covered check-in: 78da84d2af user: achavasse tags: trunk | |
| 19:00 | More work on the g0 EIR api check-in: 967d3ba3d7 user: achavasse tags: trunk | |
|
2021-09-15
| ||
| 22:15 | Fixed the generic CTType and RTType patterns, and removed the super generic assignment operator overload that would accept literally any type check-in: ea7c04df2f user: achavasse tags: trunk | |
| 21:24 |
| |
| 01:02 | More work on the extensibility api check-in: 29872be1f2 user: achavasse tags: trunk | |
| 00:11 | Added a test for, and fixed tctrie variable length vector type checking check-in: c1b565fdda user: achavasse tags: trunk | |
|
2021-09-13
| ||
| 21:52 |
| |
|
2021-09-12
| ||
| 23:52 | Repo: syntax color theme change check-in: b4fe430e44 user: achavasse tags: trunk | |
| 23:20 | Repo: more syntax highlighting workarounds check-in: 6c481d18a4 user: achavasse tags: trunk | |
| 23:18 | Repo: syntax highlighting issue workaround check-in: 4b28030b9a user: achavasse tags: trunk | |
| 23:09 | Updated repo's syntax highlighting check-in: 951c8fed08 user: achavasse tags: trunk | |
| 21:38 |
| |
| 16:48 |
| |
| 13:43 | Small cleanup check-in: 9345aa6eae user: achavasse tags: trunk | |
| 13:42 | Adopted a new convention for source extensions: .g0 for prelude code (where most language features won't be available), .g1 for user code check-in: 45f663093d user: achavasse tags: trunk | |
| 12:34 | Split out the compile time api function out of builtins and into their own library check-in: b397dc5a7c user: achavasse tags: trunk | |
|
2021-09-11
| ||
| 23:40 | Builtins: api: added an object to wrap a term reference check-in: 5a2d5b8a8b user: achavasse tags: trunk | |
| 23:02 | Builtin funcs: added a wrapper for constant valued parameter (to be able to overloaded api functions depending on enum values) check-in: f4ea7d08af user: achavasse tags: trunk | |
| 19:44 |
| |
| 15:05 |
| |
|
2021-09-10
| ||
| 00:02 | Parser: when parsing a function overload, instead of directly adding it to the overload set, push an "Overload" value that performs the addition in DropValue(). This will allow operators to modify overloads before they are added to an overload set. check-in: 5f4eeaef12 user: achavasse tags: trunk | |
|
2021-09-09
| ||
| 18:21 | Implemented the $$ operator to create a forwarding template variable check-in: 9b9f4b0fa9 user: achavasse tags: trunk | |
| 18:12 | Implemented non-builtin intrinsic function invocation check-in: 121560d1c1 user: achavasse tags: trunk | |
|
2021-09-01
| ||
| 23:26 | Some cleanup and small reorganization in preparation for implementing non builtin intrinsic functions check-in: bbd2c17c42 user: achavasse tags: trunk | |
|
2021-08-31
| ||
| 23:10 |
| |
|
2021-08-29
| ||
| 21:49 |
| |
| 19:13 | Removed stray debugging code. check-in: 7e15ecf852 user: achavasse tags: trunk | |
|
2021-08-28
| ||
| 17:55 |
| |
|
2021-06-15
| ||
| 21:14 | Small fixes check-in: 05a35f70f0 user: achavasse tags: trunk | |
|
2021-06-11
| ||
| 11:42 |
| |