miniblog.

Often when looking at different PL designs, I wonder "what approach did Racket choose?" and it's invariably a good approach. Today's observation: you have to deliberately export functions, so refactoring private functions is safe (unlike e.g. Python).
Maybe it's just effective marketing / speedy loading bars, but the new Firefox definitely feels faster. Parallel layout makes a big difference!
RISC-V support has landed in the mainline Linux kernel!
It is remarkably difficult to learn what a programming language is like work with. It's easy to conclude '$LANG is rubbish, it doesn't even have a good way of doing $TASK!' due to not knowing the available tools well. 1/n
Intelligently choosing when and where to log by considering possible paths through basic blocks: https://blog.acolyer.org/2017/11/03/log20-fully-automated-optimal-placement-of-log-printing-statements-under-specified-overhead-threshold/ (Improves both runtime performance and debuggability!)
One remarkable feature of Smalltalk is that you can save your current state and restore the app in exactly the same state later. In normal applications, the user is dependent on the app developer having implemented this feature.
Firefox is shipping formally verified crypto primitives!
I wish resumable exceptions were more common. Here's a compelling use case, demonstrating the value of recovery in Dylan:
Swym ("say what you mean") is a cute programming language with an 'etc' keyword and the compiler figures out the rest. E.g. https://list.total/: .1st + .2nd + etc; [1..10].total;
C++ is adding a [[likely]] annotation to mark which branches are more/less probable to execute! Handy, and a nice alternative to profile guided optimisation. https://twitter.com/blelbach/status/929416940715569152
Great article defending concatenative programming as a paradigm, and discussing how you statically type check subroutines that leave values on the stack:
C++ compiler beating hand written assembly: https://stackoverflow.com/questions/40354978/why-is-this-c-code-faster-than-my-hand-written-assembly-for-testing-the-collat If you haven't measured the cycle time of the different instructions, the optimiser can often do better!
It's fascinating to see Smalltalkers discussing textual diffs on GitHub: https://github.com/pharo-project/pharo/pull/410 Smalltalk is very adaptable, working with git despite being image based!
Entertaining, broad overview of approaches to error handling in different programming languages!
Great article discussing Monte Carlo tree search and how AlphaGo works: https://tim.hibal.org/blog/alpha-zero-how-and-why-it-works/
Showing 3,151-3,165 of 7,584 posts