Topics /

Programming Languages

The most popular blog posts about programming languages on Hacker News. 115 posts.

2011
91

The myth of the Lisp genius

I'm fascinated by the myth of the Lisp genius, the eccentric programmer who accomplishes super-human feats writing Lisp. I'm not saying that such geniuses don't exist; they do. Here I'm using "myth" in the sense of a story with archetypical characters that fuels the imagination. I'm thinking myth in the sense of…

96

Django and Python 3

About 18 months ago I blogged about Django and Python 3, I gave the official roadmap. Not a lot has changed since then unfortunately, we’ve dropped 2.3 entirely, 2.4 is on it’s way out, but there’s no 3.X support in core. One fun thing has changed though: I get to help set the roadmap, which is a) cool, b) means the…

100

The Joy of The Joy of Clojure Closure

It’s has been an absolute pleasure 2 working with Chouser 3 and our army of Manning 4 editors and proofreaders. I would also like to thank Christophe Grand for his excellent 5 technical review. Additionally, I would like to thank Steve Yegge for writing the foreword and providing insightful feedback 6 that I believe…

103

Strange line of Python

Hi 👋 you're reading a pretty old post! I started writing on here back in high school and this page may not reflect my current views. Recommend checking out related articles and categories down below, I've likely published more recent thoughts on this topic.

105

Beyond Exception Handling: Conditions and Restarts

One of Lisp's great features is its condition system. It serves a similar purpose to the exception handling systems in Java, Python, and C++ but is more flexible. In fact, its flexibility extends beyond error handling--conditions are more general than exceptions in that a condition can represent any occurrence during…

108

Why do C++ folks make things so complicated?

This morning Miroslav Bajtoš asked "Why do C++ folks make things so complicated?" in response to my article on regular expressions in C++. Other people asked similar questions yesterday. My response has two parts: Why I believe C++ libraries are often complicated. Why I don't think it has to be that way. Why would…

109

In the Shadow of John McCarthy

John McCarthy was a genius of the highest order. Much is known about his contribution to Lisp as its inventor, but he was also the mind behind much of early AI research, the progenitor of much of computer chess, and the initiator of time-sharing. As a Lisp advocate I have many thanks due to John McCarthy and it…

110

Understanding lvalues and rvalues in C and C++

The terms lvalue and rvalue are not something one runs into often in C/C++ programming, but when one does, it's usually not immediately clear what they mean. The most common place to run into these terms are in compiler error & warning messages. For example, compiling the following with gcc :

111

Lua/APR - proper standard library for Lua

Lua/APR is a binding of the Apache Portable Runtime (APR) for the Lua programming language . APR powers software such as the Apache webserver and Subversion and Lua/APR makes the APR operating system interfaces available to Lua, serving as an extended standard library. Thus far the following modules have been…

114

The context sensitivity of C's grammar

Context free grammars (CFGs) are a valuable theoretical tool on which the modern compilation theory relies for parsing the code of programming languages. For example, the most popular tool used for parsing – YACC , generates parsers for CFGs. What most people don’t know 1 is that the vast majority of programming…

115

Things that amuse me

I think the only serious gripe is what you call your biggest gripe, and I must say that I envy this in Haskell. As you know, in the eager world we tend to write out our own recursive functions, rather than use combinators. You give part of the reason; the other part is that deforestation and related transformations…