Live data from Hacker News

The seven programming ur-languages (2021)

madhadron.com

1–10 of 326 posts

Re: The seven programming ur-languages (2021)

#2
It is sort of angels dancing on pins but who came first between cobol, Fortran and Algol is curious. Even this article seems to be putting Algol afterwards. It was a more collective language, but I didn’t see it penetrate as much as remain a discussion topic. Perhaps the thread through C gave it entrance?

And then there’s basic…. Maybe that is just pidgin, giving those who could not speak at all some words?

Re: The seven programming ur-languages (2021)

#3
post #2

It is sort of angels dancing on pins but who came first between cobol, Fortran and Algol is curious. Even this article seems to be putting Algol afterwards. It was a more collective language, but I didn’t see it penetrate as much as remain a discussion topic. Perhaps the thread through C gave it entrance? And then there’s basic…. Maybe that is just pidgin, giving those who could not speak at all some words?

I've always considered Fortran to be the "first", but with some quick research, it looks like Algol was the first C-like lang to add an if/then statement. My guess is that the author was trying to approximate modern imperative programming.

[1] https://craftofcoding.wordpress.com/2021/01/11/why-algol-bes...

Re: The seven programming ur-languages (2021)

#4
post #2

It is sort of angels dancing on pins but who came first between cobol, Fortran and Algol is curious. Even this article seems to be putting Algol afterwards. It was a more collective language, but I didn’t see it penetrate as much as remain a discussion topic. Perhaps the thread through C gave it entrance? And then there’s basic…. Maybe that is just pidgin, giving those who could not speak at all some words?

I've always considered Fortran to be the "first", but with some quick research, it looks like Algol was the first C-like lang to add an if/then statement. My guess is that the author was trying to approximate modern imperative programming. [1] https://craftofcoding.wordpress.com/2021/01/11/why-algol-bes...

Fortran was the first compiled language, that is, the first language at a level higher than assembler. But Algol was a block-structured language in a way that Fortran wasn't, and virtually all languages of that "group" are block-structured today ("goto considered harmful" and all that). So Algol is more appropriate as the "prototype" of what exists today.

Re: The seven programming ur-languages (2021)

#5
An article like this is hard to write. This is a good one. I have a few quibbles, but they are just quibbles.

IMHO* a distinguishing feature of Algol like languages (aka "procedural" languages) is the distinction between expressions and statements. Though personally I've never seen the appeal, that distinction seems to be popular for some reason.

* this isn't even a quibble -- the article is fine without it. Just something that has always seemed weird to me.

Re: The seven programming ur-languages (2021)

#6
Very useful for an intermediate programmer who appreciates the craft and wants to extend their skills by becoming a true polyglot.

As for total beginners, it can be demeaning to explain why asking which language of the ALGOL descendants to learn is a pointless question. For their case, I don't bury the lead: I tell them "They all have the same lineage and are fundamentally similar, so just pick the one you'll learn the most robustly with. Most everything else is learning libraries."

Re: The seven programming ur-languages (2021)

#7
IMO the eighth ur-language is Erlang (with cousin Elixir), which brings the ultra-scaling actor model, an abstract operating system designed for high reliability and low latency, and a bunch of nice rare features like builtin binary structuring/destructuring and pattern matching. While it had its origins in prolog, it's now sufficiently far away from prolog's inner machinery that it only has syntactical similarity.

Learning erlang made me definitely at least 10% smarter as a programmer. Highly recommend, even if you never use it in anger.

Re: The seven programming ur-languages (2021)

#9
Pretty excellent summary, this is roughly the taxonomy I have in my head.

I would maybe add SQL as an ur-language as well. It's not quite general purpose like most of these, but it should have a place in this list, I think. It has some kinship with Prolog and the declarative style, but it's really it's own thing.

You could also maybe argue for something like LabView. Many programmers look down on purely graphical programming languages, but with Houdini, Unreal's Blueprints and the various node-based shader/material systems in gamedev, I think it probably deserves it's own little branch of this family tree.

Post reply on HN