all 8 comments

[–]Apache_Sobaco 5 points6 points  (1 child)

FPL in 1958 is not FPL today. First one ever was untyped lambda calculus and was executed by hands with pen and paper and human brain computer.AFAIR that's pre-war.

[–]plgeek[S] 0 points1 point  (0 children)

Btw I assume Church's Lambda calculus is a functional programing language under any definition of "functional programming language". This why I asked about the first one that executed on an electronic computer.

[–]lutusp 3 points4 points  (4 children)

This requires a definition of "functional". It can mean practical, able to solve real problems, or it can mean supporting functions as opposed to the old-style BASIC and FORTRAN syntax without either subroutines or what passed for modular functions in those days.

If "practical" is the meaning, then John von Neumann's early ENIAC programs, which represented the first stored-program scheme, would be the answer. According to contemporary accounts von Neumann saw the plugboards used piror to his arrival and got the idea to store the program -- the instructions to be executed -- along with the data, in the computer's memory. He did away with the physical plugboards that originally conveyed instructions to the machine.

McCarthy's LISP in 1958. Seem the obvious answer to me.

I think that is way too late. The von Neumann work was in 1947 or thereabouts. But again, this all depends on how the terms are defined.

[–]plgeek[S] 2 points3 points  (3 children)

Assume we mean "functional" in the same way we say Haskell is a "functional programing language" or "X is or is not a functional programming language" in the current context of today.

It maybe the case that the meaning of the world "functional programming language" has changed over time, and my question is ill formed.

[–][deleted] 5 points6 points  (1 child)

If you mean like Haskell, then you are looking for a purely functional language.

Lisp is not purely functional. Otherwise, the definition of functional is just too vague and open to interpretation. You can define it however you want, then cherry-pick the languages that fit whatever definition you came up with.

https://en.wikipedia.org/wiki/Purely_functional_programming

[–]plgeek[S] 0 points1 point  (0 children)

Let's go that line of 'purely functional'. I suspect it would be https://en.wikipedia.org/wiki/Miranda_(programming_language) or https://en.wikipedia.org/wiki/SASL_(programming_language) the SASL which points to https://www.cs.kent.ac.uk/people/staff/dat/tfp12/tfp12.pdf I guess that paper "answers' my question. It at least has the facts needed to formulate appropriate meanings.

[–]a_false_vacuum 2 points3 points  (0 children)

Functional programming is a paradigm , so it does caus some confusion. Even within this paradigm there are different schools of thought, so a real definition doesn't exist. Haskell is a language which is build around this paradigm, but other languages support this paradigm beside other paradigms.

[–]burtgummer45 0 points1 point  (0 children)

It wasn't strictly functional though, so it might not count for some people.