Tuesday, March 28, 2017

Programming Languages by Spec Size

I was curious which programming language has the smallest specification.  Which one has the largest?  For each language, I printed the spec to a PDF and counted the pages.  Lua 5.0 is the smallest.  C++ is the largest.

This is a very rough estimate of language complexity since each specification varies in style and purpose.  For example, Prolog includes Annex A which is only informative but doubles the size.  Haskell 2010 includes Part II - Libraries which defines the standard library, not the language.  Anyway, here's the list:

If you'd like me to add other languages, comment with a link to the spec and I'll update this post.


Travis Hendricks said...

C# please.


Michael Hendricks said...

Thanks. I've added C#. It's similar in size to JavaScript.

Jeffrey Daniel Rollin said...

Common Lisp (even although I'm pretty sure it'll be the largest). Some may say it's irrelevant, but is Scheme anymore relevant?

Michael Hendricks said...

I'd be glad to add Common Lisp, but I've had no luck finding a PDF (or otherwise printable) copy of the spec. If you can point me towards one, I'll include it here. Thanks.

Michael Hendricks said...

I've added Lua 5.0 (the most recent spec for which I could find a PDF) and shell command language (/bin/sh). Lua's spec is smaller than Go's, so I updated the text accordingly.