Top
Best
New

Posted by helloplanets 19 hours ago

The seven programming ur-languages (2022)(madhadron.com)
279 points | 105 commentspage 2
sennalen 11 hours ago|
C++ has Algol roots, but I think the C++ template metaprogramming style is an ur-language of its own. You could draw some parallels with ML maybe, but they came at it from a different direction.
otabdeveloper4 11 hours ago|
This. Misses the compile-time evaluation boat completely, even though the proverbial "sufficiently smart compiler" is based on the idea.
andyclap2 5 hours ago||
I wonder if Occam is worth a mention? It doesn't feel like anything else here, and is playing with its hardware synthesis descendants on a FPGA is another "mind expanding" paradigm.
burakemir 14 hours ago||
This article is full of gross mistakes. For example it claims that Caml is "Cambridge ML" which is ridiculously false. Fact check every sentence. Really sad.
Svip 13 hours ago||
For those curious: Cambridge ML is a thing, but abbreviated CML[0]; and whilst Caml is part of the ML family, it appears to be unrelated to CML.

[0] https://www.cl.cam.ac.uk/teaching/1011/FoundsCS/usingml.html

tromp 12 hours ago||
Caml was originally an acronym for Categorical Abstract Machine Language [1].

[1] https://en.wikipedia.org/wiki/Caml

capitalsigma 12 hours ago||
Supposedly it was named "caml" because the author was a smoker who enjoyed camel cigarettes, hence the joke that [later implementations](https://en.wikipedia.org/wiki/Caml#History) were named "Caml Light" and "Caml Special Light"
tagfowufe 15 hours ago||
I would refer to the world _cognate_[0]. 'Fundamental programming cognates' sounds cool as a uni course.

[0] https://en.wiktionary.org/wiki/cognate

sph 13 hours ago|
"Cognato/a" in Italian is brother/sister-in-law
pcblues 10 hours ago||
I always enjoy these summaries. I took my bachelor of computer science in the early 1990s. It covered a language in most of these categories.

We didn't learn APL (Who is teaching the use of those custom keyboards to 100s of young students for one semester?)

The processing power of systems at the time made it clear which language classes were practically useful and usable for the time and which were not.

Prolog ran like a dog for even simple sets of logic.

We had the best internet access and pretty powerful desktop systems for the time.

I'm still curious why we didn't learn smalltalk. Could have been the difficulty of submitting and marking a system in a particular state rather than a file of code :)

eichin 6 hours ago|
> who

Yale :-) Alan Perlis' intro to CS at Yale back in the late 80s was an APL class (a relatively small one, though.)

NelsonMinar 8 hours ago||
Most old-timers here are familiar with a Prolog-variant: make. Anyone who's struggled over a complex Makefile wishes they had a more sane declarative language!
MichaelNolan 10 hours ago||
I’ve very slowly been trying to do the “99 problems” list in each of these languages groups. It’s been a fun experience seeing the differences. Though I think I would need a larger, less algorithmic, project to really see each group’s strengths. Especially for the OOP group.

One thing the article didn’t touch on was SmallTalk’s live visual environment. It’s not a normal source code / text language.

antiframe 8 hours ago|
That sounds fun! What are the 99 problems? I found language specific lists like https://wiki.haskell.org/H-99:_Ninety-Nine_Haskell_Problems Or is there a language agnostic list?
lioeters 8 hours ago||
P-99: Ninety-Nine Prolog Problems by Werner Hett is the original. The site is apparenty no longer accessible, but here's a copy: https://www.ic.unicamp.br/~meidanis/courses/mc336/2009s2/pro...
matheusmoreira 8 hours ago||
Reminds me of the six programming language memory models:

https://canonical.org/~kragen/memory-models/

mud_dauber 6 hours ago||
It did my heart good to see Forth listed.
More comments...