You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: _posts/2025-03-07-aeneas-newsletter.markdown
+1-1Lines changed: 1 addition & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -37,7 +37,7 @@ several range definitions (which can be used with the syntax for ... in ...) tog
37
37
* Do not hide translation failures anymore, and error out cleanly if something isn't supported (rather than silently generate no code)
38
38
39
39
## Scylla
40
-
A new projet, Scylla, is now public! https://github.com/AeneasVerif/scylla
40
+
A new projet, [Scylla](https://github.com/AeneasVerif/scylla), is now public!
41
41
42
42
Scylla aims to translate very regular, data-oriented C code to safe Rust. The ambition is that the programmer should be actively involved in rewriting their C code until it is regular and understandable enough to become eligible to a translation to Safe Rust. This approach allows running performance benchmarks, regression, integration and unit tests in the same original C build environment. Once the programmer is confident that the rewrites introduced no errors, they can invoke Scylla to get clean, idiomatic Rust code with no unsafe blocks.
The old options are still available but will soon be deprecated.
17
18
* The --no-cargo --crate <name> option was removed because it behaved inconsistently; use --rustc-arg=--crate-name=<name> instead;
18
19
* Charon now translates the lang_item identifier for built-in definitions. This makes it easier to recognize a number of built-ins like Box, String, Copy, etc;
19
20
* Progress is ongoing towards supporting later MIRs (https://github.com/AeneasVerif/charon/issues/543).
20
21
21
22
## Aeneas
22
23
* the progress_pure and progress_pure_def attributes allow automatically lifting theorems and generating theorems from definitions so that progress can use them
23
24
* several new tactics: zmodify (to convert propositions so that they manipulate elements of ZMod), simp_lists (to simplify expressions like List.get (List.set ...) - it uses scalar_tac to discharge the proof obligations), simp_ifs (to simplify if then else expressions by using scalar_tac)
24
-
* thanks to the work of Fernando Leal, a new progress* tactic allows repeatedly applying
25
-
split and progress, while its variant progress*? generates the corresponding proof
26
-
script. progress*, progress*? and progress can now use the keyword by to use a
25
+
* thanks to the work of Fernando Leal, a new progress\* tactic allows repeatedly applying
26
+
split and progress, while its variant progress\*? generates the corresponding proof
27
+
script. progress\*, progress\*? and progress can now use the keyword by to use a
27
28
custom discharger for the preconditions. A new syntax is also possible for progress:
0 commit comments