Computerphile, for me, is one of the gems of youtube.
That such incredible, well produced content like this is 'free' and so easily accessible is mind boggling compared to the efforts I had to go through in the late 80s learning computing independently.
His ending bit where he talks about hitting a ceiling that you can't really break out of sums up my experience writing Elm. It's a good teaching language too and does good at that.
Elm really is a gem. It's like an "approachable browser Haskell". And the Elm Architecture makes it really easy and fun to handle your state and the view(s) into it.
call by name is an abomination - essentially you can call func(a[b]) ... every time func's parameter is referenced inside a[b] is reevaluated - b can be a global or a local in the function making the call, inside the function you can read the resulting value or even assign to it .... essentially you need to pass a small code fragment that returns the address of a[b] (except that you can also pass "1" and what happens when you assign to that).
That and Algol60 scoping were probably the main mistakes in Algol60 - people were still figuring that stuff out back then.
Let me say “thank you” on behalf of Computerphile. It's always a pleasure to get good reviews from HN ...
Yes, by the time of Turbo Pascal most of the problems had been sorted out and the fact that NW went on to do Modula and Modula-2 shows how seriously he took the separate compilation issues. Dave B.
My take on Algol->Pascal has always been rather more that Pascal is essentially the easy to implement parts of Algol68 (speaking as someone who once wrote an Algol68 compiler for my thesis).
Many of those harder parts of Algol68 (unions with tags, pointers to stuff like function calls, a full type system etc etc) are all things we consider normal parts of modern languages
The only thing missing from modern pascal (Lazarus/Free Pascal) is first class support for the new types such as lists, generators, heaps and other goodies Python and it's kin bring to the party.
I needed to pull a parameter from a string yesterday, reached back into my archives, and with a little bit of work... 28 year old code did the job. (Strings have changed a bit since MS-DOS)
In the mid 1970s, I was working at SAIC but moonlighted working at Salk Institute in La Jolla on weekends writing Algol code to facilitate collecting data from the various hardware they had in a lab. My boss at SAIC at the time was getting his PhD in CS, had to write his thesis in Algol, which I spent time helping him with.
I then became a huge fan of UCSD Pascal on my Apple II which I used to write my Go playing program Honninbo Warrior, which I sold for a few years.
Back then I mostly made my living writing FORTRAN so Algol and Pascal were a breath of fresh air.
18 comments
[ 3.5 ms ] story [ 35.2 ms ] threadThat such incredible, well produced content like this is 'free' and so easily accessible is mind boggling compared to the efforts I had to go through in the late 80s learning computing independently.
Also some of the presenters have it's own channel like: Robert Miles https://www.youtube.com/c/RobertMilesAI
That and Algol60 scoping were probably the main mistakes in Algol60 - people were still figuring that stuff out back then.
I agree wholeheartedly!
Many of those harder parts of Algol68 (unions with tags, pointers to stuff like function calls, a full type system etc etc) are all things we consider normal parts of modern languages
I needed to pull a parameter from a string yesterday, reached back into my archives, and with a little bit of work... 28 year old code did the job. (Strings have changed a bit since MS-DOS)
In the mid 1970s, I was working at SAIC but moonlighted working at Salk Institute in La Jolla on weekends writing Algol code to facilitate collecting data from the various hardware they had in a lab. My boss at SAIC at the time was getting his PhD in CS, had to write his thesis in Algol, which I spent time helping him with.
I then became a huge fan of UCSD Pascal on my Apple II which I used to write my Go playing program Honninbo Warrior, which I sold for a few years.
Back then I mostly made my living writing FORTRAN so Algol and Pascal were a breath of fresh air.