You may have gotten accustomed to Keep Calm and Use OPA, and then suddenly, there's
interface Lit<K> { | |
kind: 'lit'; | |
value: K; | |
} | |
interface BinOp<T> { | |
kind: 'binop'; | |
l: T; | |
r: T; | |
} |
Picture the following scene: you are in a job interview, and the interviewer defines a tree-based data structure and asks you to traverse it. You do a good quick job, maybe using recursion:
// provided by the interviewer: nonempty rose trees carrying the values on the internal nodes
interface ITree<x> {
value: x;
children: Array<ITree<x>>;
Binding to C Libraries with Nim
It's now here, in The Programmer's Compendium. The content is the same as before, but being part of the compendium means that it's actively maintained.
... or Why Pipelining Is Not That Easy
Golang Concurrency Patterns for brave and smart.
By @kachayev
(by @andrestaltz)
If you prefer to watch video tutorials with live-coding, then check out this series I recorded with the same contents as in this article: Egghead.io - Introduction to Reactive Programming.
- Eindbazen "cone" writeup
- Rolf Rolle's z3 based solution to some math problem
- SMT Solvers for Software Security
In considering where Objective-C could go, it's worthwhile to start by understanding the work that's already been done.
Below are a selection of papers from Gilad Bracha's 1990s work on Strongtalk, an extension of Smalltalk (from which Objective-C's design derives) with (among other things), stronger type-safety tooling.
What's interesting (to me, anyway), is that the work done on the Self/Strongtalk VM in the early 90s was actually bought by Sun and became the modern Java VM. When Google got started on their V8 JavaScript runtime, guess who shows up again — Lars Bak, who was the technical lead for both the Strongtalk and HotSpot Java VMs.
If we're going to be talking about how to apply "modern" (1990s!) ideas to Objective-C, we'd be wise to review the considerable work done in considering those sorts of problems in a Smalltalk-derived universe, and lifting whatever good ideas we can, and discarding