Topics /
Programming Languages
The most popular blog posts about programming languages on Hacker News. 144 posts.
Why Haskell is beyond ready for Prime Time
I’ve read a few comments about why Haskell is awesome. I even wrote an ironic blog post about it. Today I’m going to explain why I use Haskell for doing real work, entirely in terms of …
Introducing Surinx (Ruby syntax w/ Java typing)
In June of this year, I spent a few hours formulating a dynamic cousin to Duby. Duby, if you don't remember, is a static-typed language with Ruby's syntax and Java's type system. Duby supports all Ruby's literals, uses local type inference (only argument types *must* be declared), and runs as fast as Java (because it…
Clojure 1.0
After a sustained period of API stability and minimal bug reports, I'm happy to announce the release of Clojure 1.0! http://clojure.googleco...
Can your programming language do this?
In information theory, entropy is the measurement of the amount of randomness in a probability distribution. It's defined as In my code, it'...
Scheming is Believing (2005)
Scheming is Believing Stevey's Drunken Blog Rants™
PyPy vs Unladen Swallow vs CPython: benchmarks
Hello. Recently, thanks to the surprisingly helpful Unhelpful, also known as Andrew Mahone, we have a decent, if slightly arbitrary, set of...
Ruby’s Most Underused Keyword
Order lexapro - LOWEST PRICES ON THE WEB, We Accept Visa and Mastercard Credit Cards
Parrot VM v1.3.0 Released
On behalf of the Parrot team, I'm proud to announce Parrot 1.3.0 "Andean Swift." Parrot is a virtual machine aimed at running all dynamic languages.
Scheme: The Swine before Perl
In November 2001 I gave an invited talk at the inaugural Lightweight Languages conference that has since become somewhat notorious (in netspace, it is said to be “ kickassing genial ”).
Final Words on Tail Calls
A lot of people remarked that in my post on Tail Recursion Elimination I confused tail self-recursion with other tail calls, which proper T...
Tail Recursion Elimination
I recently posted an entry in my Python History blog on the origins of Python's functional features . A side remark about not supporting ta...
Five Questions about Language Design
(These are some notes I made for a panel discussion on programming language design at MIT on May 10, 2001.) 1. Programming Languages Are for People. Programming languages are how people talk to computers. The computer would be just as happy speaking any language that was unambiguous. The reason we have high level…
PEP 289 – Generator Expressions
This PEP introduces generator expressions as a high performance, memory efficient generalization of list comprehensions PEP 202 and generators PEP 255.
You Could Have Invented Monads! (And Maybe You Already Have.)
A more permanent version of this article is stored at GitHub . Please link to that rather than to here. If you hadn't guessed, this is about...
PEP 374 – Choosing a distributed VCS for the Python project
Python Enhancement Proposals (PEPs)
Clojure - Rationale
Customers and stakeholders have substantial investments in, and are comfortable with the performance, security and stability of, industry-standard platforms like the JVM. While Java developers may envy the succinctness, flexibility and productivity of dynamic languages, they have concerns about running on…