miniblog.

I'm a huge fan of writing READMEs, and I hold GitHub entirely responsible :). The need for docs varies, but everything needs an overview.
I'm also reading claims that prompts are *much* faster than full continuations!
I'm really interested to see that Guile is moving away from call/cc to prompts. A discussion of motivations: https://wingolog.org/pub/qc-2012-delimited-continuations-slides.pdf [PDF]
Debugging Emacs memory leaks: https://notes.secretsauce.net/notes/2015/09/19_debugging-gnu-emacs-memory-leaks-part-1.html (reproduction, measurement and bisection!)
On the benefits avoiding territorial code ownership:
Photo
Inter-Procedural Optimization and Derefinement https://www.playingwithpointers.com/ipo-and-derefinement.html (excellent post showing how combining optimzns can cause surprises)
The Renewed Case for RISC: Avoiding ISA Bloat with Macro-Op Fusion for RISC-V https://arxiv.org/abs/1607.02318 (enjoyable and quantitative!)
The Renewed Case for the Reduced Instruction Set Computer: Avoiding ISA Bloat with Macro-Op Fusion for RISC-V
The Renewed Case for the Reduced Instruction Set Computer: Avoiding ISA Bloat with Macro-Op Fusion for RISC-V
This report makes the case that a well-designed Reduced Instruction Set Computer (RISC) can match, and even exceed, the performance and code density of existing commercial Complex Instruction Set Computers (CISC) while maintaining the simplicity and cost-effectiveness that underpins the original RISC goals. We begin by comparing the dynamic instruction counts and dynamic instruction bytes fetched for the popular proprietary ARMv7, ARMv8, IA-32, and x86-64 Instruction Set Architectures (ISAs) against the free and open RISC-V RV64G and RV64GC ISAs when running the SPEC CINT2006 benchmark suite. RISC-V was designed as a very small ISA to support a wide range of implementations, and has a less mature compiler toolchain. However, we observe that on SPEC CINT2006 RV64G executes on average 16% more instructions than x86-64, 3% more instructions than IA-32, 9% more instructions than ARMv8, but 4% fewer instructions than ARMv7. CISC x86 implementations break up complex instructions into smaller internal RISC-like micro-ops, and the RV64G instruction count is within 2% of the x86-64 retired micro-op count. RV64GC, the compressed variant of RV64G, is the densest ISA studied, fetching 8% fewer dynamic instruction bytes than x86-64. We observed that much of the increased RISC-V instruction count is due to a small set of common multi-instruction idioms. Exploiting this fact, the RV64G and RV64GC effective instruction count can be reduced by 5.4% on average by leveraging macro-op fusion. Combining the compressed RISC-V ISA extension with macro-op fusion provides both the densest ISA and the fewest dynamic operations retired per program, reducing the motivation to add more instructions to the ISA. This approach retains a single simple ISA suitable for both low-end and high-end implementations, where high-end implementations can boost performance through microarchitectural techniques.
I've had a personal disk start giving random fsck errors. Periodic reminder to back up your data!
TIL Fortran has a keyword PURE that allows you specify if code has side-effects: https://stackoverflow.com/a/30315370/509706 (effect-based languages are rare!)
I've heard nothing but good things about slime for Common Lisp. Are there any other developer tools which are so uniformly praised?
Open source, at its best, is a superb source of code reviews. Other open sourcerers are often accomplished devs with great insights.
I suspect this partly due to Emacs supporting wacky experiments, and partly because parens really benefit from good tooling.
Decades after sexpressions were invented, Emacsers are still innovating with editor tooling. E.g. lispy is genuinely novel and <3 years old.
Smalltalk's closure syntax is so lightweight that users don't feel a need for macros. Delaying evaluation (e.g. if, loops) is easy already.
Swimming with the fish: An analogy for the Smalltalk development experience:
Showing 406-420 of 922 posts