Hacker News new | ask | show | jobs
by ad404b8a372f2b9 1327 days ago
Could you describe/explain it? Referencing some obscure language from a lecture in 1977 means nothing to me.

edited for everyone else's convenience, from wikipedia:

FP (short for functional programming)[2] is a programming language created by John Backus to support the function-level programming[2] paradigm. It allows building programs from a set of generally useful primitives and avoiding named variables (a style also called tacit programming or "point free"). It was heavily influenced by APL which was developed by Kenneth E. Iverson in the early 1960s.[3]

The FP language was introduced in Backus's 1977 Turing Award paper, "Can Programming Be Liberated from the von Neumann Style?", subtitled "a functional style and its algebra of programs." The paper sparked interest in functional programming research,[4] eventually leading to modern functional languages, which are largely founded on the lambda calculus paradigm, and not the function-level paradigm Backus had hoped. In his Turing award paper, Backus described how the FP style is different:

    An FP system is based on the use of a fixed set of combining forms called functional forms. These, plus simple definitions, are the only means of building new functions from existing ones; they use no variables or substitutions rules, and they become the operations of an associated algebra of programs. All the functions of an FP system are of one type: they map objects onto objects and always take a single argument.[2]
FP itself never found much use outside of academia.[5] In the 1980s Backus created a successor language, FL, which was an internal project at IBM Research.
2 comments

The lecture in question is not obscure, it's one of the most influential papers in Computer Science and is foundational to a lot of modern PL research. It's currently sitting at 4166 citations on Google Scholar--that's twice as many as Dijkstra's "goto considered harmful".

In general I'm all for including context, but in this case and for this audience (people on HN interested in useless programming languages) a reference to the paper is plenty.

Did you click on the link to the github repo?

https://github.com/japiirainen/fp

Yes the readme contains the exact same referential description as this post. I looked at the examples, I don't know the language and its purpose is not immediately obvious to me. If I missed some explanation in the repo, please enlighten me.
There's a list of links under "Documentation" you could check out: https://github.com/japiirainen/fp#documentation
I've already read this, it's not an appropriate description of the language. Those are available in every language I've ever worked with. What is differentiating about this language? Why is it interesting? What is the design philosophy that makes it worthwhile? Was it the first language to introduce some of these? Does it enable the user to implement things other languages can't as elegantly?

I feel like those shouldn't be very hard questions to answer. I can answer them about every language I've ever worked with, and every language I've developed.

I don't know what to tell you, your questions are mostly answered in the 1977 lecture you seem to want to avoid reading.
You could tell me the answer which isn't all that complicated and you seem unable or unwilling to do.

When you post a project somewhere, or generally start a discussion with people, it's generally wise to establish a minimum context about what you are talking about and not require the participant to read a 40 year old paper, or lecture, or so on, just to understand the basis of your premise.

Even more so online when the work is multiplied by the number of people who will read your post and a two-sentences description can solve it.