Zig's New Relationship with LLVM
While not yet at version 1.0, Zig is about to reach a new level of maturity and stability.
Posts that commenters keep linking to, ranked by how many different people have cited them in Hacker News comments. 80 posts.
While not yet at version 1.0, Zig is about to reach a new level of maturity and stability.
Haskell programmers spend a lot of time talking about type safety . The Haskell school of program construction advocates “capturing invariants in the type system” and “making illegal states unrepresentable,” both of which sound like compelling goals, but are rather vague on the techniques used to achieve them. Almost…
Take an in-depth look at the MIR lightweight JIT compiler project's goals and state of development, such as the addition of support for CRuby.
The following table shows diagrams of identity, the booleans, some standard combinators, some Church numerals, the predecessor function on Church numerals, and Omega. term definition diagram alternative I/1 λx.x K/true λx.λy.x false/0 λx.λy.y S λx.λy.λz.(x z)(y z) Y λf.(λx.x x)(λx.f(x x)) 2 λf.λx.f(f x) 3 λf.λx.f(f(f…
The chart classifies programming paradigms according to their kernel languages. Kernel languages are ordered according to the creative extension principle: a new concept is added when it cannot be encoded with only local transformations. Two languages that implement the same paradigm can nevertheless have very…
Two years ago, I had a blog entry describing falling in love with Rust . Of course, a relationship with a technology is like any other relationship: as novelty and infatuation wears off, it can get on a longer term (and often more realistic and subdued) footing – or it can begin to fray. So well one might ask: how is…
Every lisp hacker I ever met, myself included, thought that all those brackets in Lisp were off-putting and weird. At first, of course. Soon after we all came to the same epiphany: lisp’s power lies in those brackets ! In this essay, we’ll go on a journey to that epiphany.
Slack uses PHP for most of its server-side application logic, which is an unusual choice these days. Why did we choose to build a new project in this language? Should you? Most programmers who have only casually used PHP know two things about it: that it is a bad language, which they would never use if…
What a query-based compiler is and what they are good for.
One of the most exciting things about the Rust programming language is that it makes infrastructure incredibly boring. That’s not a bad thing, in this case. No one wants their electrical wiring to be exciting; most of us prefer the safety that comes with being able to flip a switch and have light to see […]
I've been using zig for ~4 months worth of side projects, including a toy text editor and an interpreter for a relational language . I've written ~10kloc.
The Swift project is introducing new downloadable Swift toolchain images for Windows! These images contain development components needed to build and run Swift code on Windows.
A recent tweet by a friend of mine noted how the public interest in the Scala programming language seems to have plateaued or waned, which matches my feeling of the latest trends and zeitgeist. This blog post will go into why I think that has happened, where Scala stands now, and what the future holds for the Scala…
Collapse OS' first incarnation was written in Z80 assembler. One of the first feedbacks I had after it went viral was "why not Forth?". I briefly looked at it and it didn't seem such a great choice at first, so I first dismissed it. Then, I had what alcoholics refer to as a "Moment of clarity".
Part of a 3 part series. Followups on F#, Rust I built the first demo of Dark in Python, in about two weeks. A few months later when I started productizing it, I rebuilt it in OCaml. Back in 2017, when I was considering the language and platform to use
Part 2 - The Plan
One-liners are like Haiku poetry. Not always practical, not always readable, they are fun to write. As with any art, some are better than others, but from time-to-time, a true gem pops up.
We are pleased to announce the release of Ruby 3.0.0. From 2015 we developed hard toward Ruby 3, whose goal is performance, concurrency, and Typing. Especial...
An updated generics design draft, and a translation tool for experimentation
The Rust-loving team at Immunant has been hard at work on C2Rust, a migration framework that takes the drudgery out of migrating to Rust. Our goal is to make safety improvements to the translated Rust automatically where we can, and help the programmer do the same where we cannot. First, however, we have to build a…
Mercurial 5.2 was released on November 5, 2019. It is the first version of Mercurial that supports Python 3. This milestone comes nearly 11 years after Python 3.0 was first released on December 3, 2008.
COBOL is often a source of amusement for programmers because it is seen as old, verbose, clunky, and difficult to maintain. COBOL can now be used to write code for Cloudflare’s serverless platform Workers.
Welcome Redditors and HackerNews folks! This post is getting attention outside the QEMU community, so I'd like to highlight two things that...
Relics Gilad Bracha recently posted an article "Bits of History, Words of Advice" that talks about the incredible influence of Smalltalk but bemoans the fact that: ...today Smalltalk is relegated to a small niche of true believers. Whenever two or more Smalltalkers gather over d
I have been using the Julia REPL as my day-to-day calculator on the command line for more than a year now. I am surprised that I haven’t seen more posts talking about how powerful and extensible the language is for simple numerical calculations and scripting In fact, the Julia REPL is much more than a simple…
New SBCL versions are usually released at the end of each month: check the Sourceforge File List to see the current version. The new features of all SBCL releases are listed below.
A dive into the unknown personal and academic history of the mathematician who developed combinators, Moses Schönfinkel.