From 4c91102a7c2ec4131406c130149a3cc558bf18f4 Mon Sep 17 00:00:00 2001 From: Vincent Ambo Date: Tue, 13 Sep 2022 15:00:24 +0300 Subject: docs(web/tvl): small updates & fixes to September '22 Tvix status Change-Id: I2cf57abb0f8c21c3893e68ce2c6fb92a2c0d3ee6 Reviewed-on: https://cl.tvl.fyi/c/depot/+/6559 Reviewed-by: flokli Autosubmit: tazjin Tested-by: BuildkiteCI --- web/tvl/blog/tvix-status-202209.md | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) (limited to 'web') diff --git a/web/tvl/blog/tvix-status-202209.md b/web/tvl/blog/tvix-status-202209.md index e743065e8032..8bf731f25c69 100644 --- a/web/tvl/blog/tvix-status-202209.md +++ b/web/tvl/blog/tvix-status-202209.md @@ -16,7 +16,7 @@ We developed the evaluator to the current state by enumerating the various problems we were likely to encounter, and writing small-scale solutions to them before assembling them into a whole. Due to the nature of this process, we briefly ended up with a very large private -source tree, which we [integrated]() into our monorepo in the last +source tree, which we [integrated][] into our monorepo in the last couple of weeks. This process was slow mostly due to code review bandwidth, but @@ -44,8 +44,8 @@ and it is simply a question of time until we've done it. Progress is steady and can of course be tracked [in the source][src] (viewer without Javascript [here][src-noscript]). -At the same time, we've already implemented a variety of basics that -are hopefully going to have a huge impact further down, such as: +At the same time, we've already implemented some basics that are +hopefully going to have a huge impact further down, such as: * The Tvix compiler is built to be able to emit warnings & errors without failing early, as well as retaining as much source @@ -61,6 +61,11 @@ are hopefully going to have a huge impact further down, such as: (yet!)) cases, allowing us to evaluate many recursive expressions in constant stack space. +* The runtime supports having different backing representations for + the same Nix type. For example, an attribute set may be represented + differently based on whether it is empty, a `name/value` pair or a + larger set. + ### How does this all work? Tvix's evaluator is implemented using a custom abstract machine with a @@ -146,5 +151,5 @@ around! [grfn]: https://gws.fyi/ [sterni]: https://github.com/sternenseemann [go-nix]: https://github.com/nix-community/go-nix -[flokli]: https://github.com/flokli +[flokli]: https://flokli.de/ [adisbladis]: https://github.com/adisbladis -- cgit 1.4.1