-
In some recent regression runs, the translator is the first "really slow" task.
For instance, in regression 491, the time taken was approximately 5-6 hours for proofs, 5-6 hours for translation, an…
-
It is hard to know what's in the CakeML basis library without delving deep into the theories in `basis`; even if you know some functionality exists, its name and argument order might not be obvious. H…
xrchz updated
5 years ago
-
After updating to d82f8c7911e4c07e8fe4fd6f7685866537ad6d38, code like this gets emitted:
```diff
diff --git a/thy/generated/CakeML/Namespace.thy b/thy/generated/CakeML/Namespace.thy
index 380a0d4…
-
Because I will soon remove `Globals.priming` I want to support pretty ways of looking at terms/goals that have been heavily ‘primed’. I think the way to do this is to have (a flag to allow) something…
mn200 updated
5 years ago
-
This issue (suggested by Magnus) is about writing a linear scan register allocator for CakeML.
This could be very useful when integrated with the CakeML compiler, e.g. when we get a read-eval-print…
-
It isn't possible to write a built-in type like `word8array` in concrete syntax, for example in a `datatype` definition:
```sml
datatype my_type = Cons word8array
```
As a workaround we're cur…
-
When the translator complains about the lack of an induction principle, it prints out a message saying what to do interactively to get the right principle (use a `no_ind` variant), but it could also p…
mn200 updated
6 years ago
-
One of the motivations (see https://wiki.cakeml.org/Conventions) for using Lem for the definition of the CakeML semantics was to be able to export the source semantics to different tools/logics, e.g. …
-
CakeML takes a rather long time to compile. I tried compiling it on my laptop and it ran for more than 15 hours without finishing.
My processor is a relatively new one and a relatively powerful on…
-
Tested in 4f2fc0f852c2307a with experimental kernel:
> val t = list_mk_comb (“f: 'a -> 'b -> 'c”, [“x:'a”, “x:'b”]);
val t = “(f :α → β → γ) (x :α) (x :β)”: term
> match_term t “(g :'a -> 'a -> 'b)…