miniblog.

Porting 600KLOC of Closure Compiler JS to typescript: https://www.lucidchart.com/techblog/2017/11/16/converting-600k-lines-to-typescript-in-72-hours/ Although Closure offers a set of static analysis tools, typescript is often stricter! This finds bugs but complicates porting.
Hyper-G is (was?) an interesting hypertext design, where hyperlinks were stored in a separate database to ensure integrity and allow visualisations with trivial backlink calculations: https://www.ickn.org/elements/hyper/cyb20.htm
Racket has a notion of a 'box', which is a single-element vector for when you want a mutable store of something: https://docs.racket-lang.org/reference/boxes.html Interesting, I've rarely seen this in other language as a first class concept (I can only think of ML).
Microsoft patching a compiled binary to fix a security issue: https://0patch.blogspot.co.uk/2017/11/did-microsoft-just-manually-patch-their.html Adding an additional parameter without changing the instruction count of functions is no mean feat!
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! https://groups.google.com/a/groups.riscv.org/forum/m/#!topic/sw-dev/2-u-c3kyZlc
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! https://blog.mozilla.org/security/2017/09/13/verified-cryptography-firefox-57/
I wish resumable exceptions were more common. Here's a compelling use case, demonstrating the value of recovery in Dylan: https://groups.google.com/forum/#!msg/comp.lang.dylan/gszO7d7BAok/zqVbQlNDKzAJ
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; https://web.archive.org/web/20120325030032/http://chalicegames.com/swym/SwymWebIntro.html
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: https://evincarofautumn.blogspot.co.uk/2012/02/why-concatenative-programming-matters.html
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! https://twitter.com/arrdem/status/926244970557669376
Great article discussing Monte Carlo tree search and how AlphaGo works: https://tim.hibal.org/blog/alpha-zero-how-and-why-it-works/
A while loop destructuring the middle elements of a vector -- remarkably elegant! https://www.reddit.com/r/rust/comments/7a9w1c/rust_is_now_an_official_part_of_stanfords/dp8azv3/ (rust)
Showing 81-100 of 885 posts