Live data from Hacker News

History of John Backus's functional programming project (draft)

softwarepreservation.computerhistory.org

1–9 of 9 posts

Re: History of John Backus's functional programming project (draft)

#2
I've always wondered if there's more to FP than (more or less) point-free style with an associated algebra. TFA seems to stop just when it might get interesting. Did Backus ever develop (or aim for) a notion of semantic completeness, e.g. Cartesian closure or whatever works [0] for Hughes's Arrows? The last has the interesting property of being foundationally point-free but also supporting a syntax with variables (with non-standard scoping rules). Which perhaps refutes Backus's original concerns.

[0] https://en.wikipedia.org/wiki/Arrow_(computer_science)

Re: History of John Backus's functional programming project (draft)

#5
post #4

Author here. This is work-in-progress, not linked from top level. I'll keep working.

Thanks for the extensive collection. Valuable work. I’ve included a reference to the link collection on https://github.com/function-level/function-level.github.io

Re: History of John Backus's functional programming project (draft)

#6
post #5
post #4

Author here. This is work-in-progress, not linked from top level. I'll keep working.

Thanks for the extensive collection. Valuable work. I’ve included a reference to the link collection on https://github.com/function-level/function-level.github.io

Thanks very much; I in turn will add a link the Related Resources section. If you'd like to be recognized as other than metazip then let me know via email.

Re: History of John Backus's functional programming project (draft)

#7
post #4

Author here. This is work-in-progress, not linked from top level. I'll keep working.

Remembering John Backus:

> [...] At that time, John was interested in pure functional programming, with no side-effects on storage or the external world. I advocated extending the language to allow writing complete interactive applications. John conceded the importance of this, and came up with a scheme in which one would write a function to express the complete transformation of an application on the global state. I struggled with John’s variable free style, and suggested we allow lambda variables when defining a new functional form (higher-order function), but he stuck to his guns.

(In my project) I’ve reduced extensibility to the meta-composition rule, and I’m using an IO monad for interaction because I believe all functions should remain as simple as possible.

Re: History of John Backus's functional programming project (draft)

#8
post #7
post #4

Author here. This is work-in-progress, not linked from top level. I'll keep working.

Remembering John Backus: > [...] At that time, John was interested in pure functional programming, with no side-effects on storage or the external world. I advocated extending the language to allow writing complete interactive applications. John conceded the importance of this, and came up with a scheme in which one would write a function to express the complete transformation of an application on the global state. I…

Is this your project: https://github.com/metazip/pointfrip ?

Re: History of John Backus's functional programming project (draft)

#9
post #8
post #7

Earlier quoted context omitted.

Remembering John Backus: > [...] At that time, John was interested in pure functional programming, with no side-effects on storage or the external world. I advocated extending the language to allow writing complete interactive applications. John conceded the importance of this, and came up with a scheme in which one would write a function to express the complete transformation of an application on the global state. I…

Is this your project: https://github.com/metazip/pointfrip ?

Yes, it started with https://esolangs.org/wiki/FP_trivia in Delphi, and the project using the Lazarus-IDE was Pointfrip.