Skip to content

Commit d39735b

Browse files
committed
February 2025 newsletter
1 parent c09d0df commit d39735b

File tree

1 file changed

+28
-0
lines changed

1 file changed

+28
-0
lines changed
Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,28 @@
1+
---
2+
layout: post
3+
title: "Aeneas-news: February 2025"
4+
date: 2025-02-04 13:50:29 +0100
5+
categories: newsletter
6+
---
7+
A brief update on what's happening in the Aeneas project at large.
8+
9+
## Charon (Rust compiler driver)
10+
* Support for hiding associated types! These are now desugared as type parameters in most cases (which alleviates the need for a dependent encoding with type fields in records). This should be completely transparent for downstream consumers, meaning anyone using Charon can now support associated types by passing `--remove-associated-types '*'` to charon.
11+
* Complete overhaul of the handling of methods, which will allow handling tricky edge-cases, used for instance in Rust's stdlib. Specifically, we now handle the fact that implementations might have types that are more precise than the signature that appears in the trait declaration.
12+
* Performance improvements: several passes that were accidentally quadratic in the number of statements were fixed.
13+
* Improvements to control-flow reconstruction, with cascading code-quality effects in Eurydice notably.
14+
15+
## Eurydice (Rust to C compiler)
16+
* Minor bugfixes related to monomorphization, found via libcrux's ml-kem and ml-dsa implementations
17+
* Refactoring to support custom enum values as specified in the Rust source
18+
* Better support for hoisting loop bodies as separate functions (currently required for Aeneas)
19+
20+
## General
21+
* Website is up! https://aeneasverif.github.io/
22+
* Fernando Leal joins us as an first-year master's intern, to work on verifying post-quantum cryptography with Aeneas
23+
24+
## Aeneas (Rust verification)
25+
* Massive reorganisation and cleanup of the library for the Lean backend (which is now properly called Aeneas)
26+
* The loop joins now properly handles symbolic values containing borrows
27+
* Minor improvements of the quality of extracted models, which are cleaner
28+
* Scaling up Aeneas for a real-world use case (Microsoft-internal project, hopefully made public within the next couple months).

0 commit comments

Comments
 (0)