Explore >> Select a destination


You are here

www.ralfj.de
| | gustedt.wordpress.com
3.0 parsecs away

Travel
| | [The wordpress markdown inclusion does a very bad job, it seems, there have been some idiotic formatting errors. I hope that these are fixed, now.] A years-long effort led by Kayvan Memarian and Peter Sewell from Cambridge University, UK, Martin Uecker from Graz University of Technology, Austria, and myself (from ICube/Inria, France) has guided the...
| | tmandry.gitlab.io
4.7 parsecs away

Travel
| | In Part 1, we covered how async fns in Rust are compiled to state machines. We saw that the internal compiler implementation uses generators and the yield statement to facilitate this transformation. We also saw that the optimal way to lay out one of these state machines in memory is using an enum-like representation, similar to the following: enum SumGenerator{Unresumed{xs: Vec},Suspend0{xs: Vec,iter0: Iter<'self,i32>,sum: i32 },Suspend1{xs: Vec,iter1: Iter<'self,i32>,sum: i32 },Returned}Each variable s...
| | coredumped.dev
5.7 parsecs away

Travel
| | In this post, we are going to take a deep dive into pointer tagging, where metadata is encoded into a word-sized pointer. Doing so allows us to keep a compact representation that can be passed around in machine registers. This is very common in implementing dynamic programming languages, but can really be used anywhere that additional runtime information is needed about a pointer. We will look at a handful of different ways these pointers can be encoded and see how the compiler can optimize them for diff...
| | thecodebarbarian.com
23.3 parsecs away

Travel
| [AI summary] The article explains how to use WebAssembly in Node.js for optimizing arithmetic operations and benchmarks its performance against JavaScript.