New
The latest blog posts to take off on Hacker News. 5,636 posts.
Emacs Bytecode Internals (2014)
Byte-code compilation is an underdocumented — and in the case of the recent lexical binding updates, undocumented — part of Emacs. Most users know that Elisp is usually compiled into a byte-code saved to .elc files, and that byte-code loads and runs faster than uncompiled Elisp. That’s all users really need to know…
Self Healing Code with clojure.spec
Works On My Machine is the place where Cognitects reflect on tech, culture, and the work we do. The views expressed on Works On My Machine are those of the a...
A practical introduction to functional programming (2013)
Many functional programming articles teach abstract functional techniques. That is, composition, pipelining, higher order functions. This one is different. I...
Ruby 2.4.0 Released
We are pleased to announce the release of Ruby 2.4.0.
Elixir Design Goals (2013)
Highlight of Elixir design goals.
A convenient untruth: Array notation in C is a lie
Array notation in C is a lie! Sorry, dear reader*, but I cannot participate in this conspiracy any longer. You have been lied to, manipulated and coerced into thinking arrays are a construct of the C language. I feel it is my solemn duty to blow the whistle on this charade and expose the dirty secrets of C’s so-called…
OpenJDK now available for Windows
We are pleased to announce the availability of OpenJDK 8 for Windows. OpenJDK is a fully open-source implementation of the Java SE specification. It is comparable in performance to Oracle and IBM
Why the Elixir language has great potential
Update: There is a nice discussion on Hacker News about this blog post. As a developer I think it is important to stay up to date with new…
V8: Behind the Scenes (December Edition)
Personal website of Benedikt Meurer, JavaScript Engine Hacker and Programming Language Enthusiast.
The Next Five Years of ClojureScript
I delivered a talk at the well attended ClojuTRE conference in Tampere, Finland this past September titled "The Next Five Years of ClojureScript". The Clojur...
The Idea of Lisp
How a programming language can be an idea.
LLVM's New Versioning Scheme
Historically, LLVM's major releases always added "0.1" to the version number, producing major versions like 3.8, 3.9, and 4.0 (expected by March 2017). With our next release though, we're changing this.
Haskell in the Datacentre
Bluesky: @simonmar.bsky.social Github: simonmar Email: marlowsd@gmail.com LinkedIn: Simon Marlow
Why I'm Making Python 2.8
For the past two months I've been spending half my time on Tauthon . Tauthon is a backwards-compatible Python interpreter that runs Python 2 code and C-extensions exactly as-is, while also allowing Python 2 programmers to use the most exciting new language features from Python 3. These new backported language features…
Wizards and warriors, part one
A common problem I see in object-oriented design is: A wizard is a kind of player. A warrior is a kind of player. A staff is a kind of weapon. A sword is a kind of weapon. A player has a weapon. Bu…