Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

Functional programming is also a family resemblance thing: you can't necessarily give a strict definition, any more than you can define "blues music".

I'd say functional programming is a tradition that draws from sources like denotational semantics, lambda calculus, Church, Landin, etc etc.

There are some different subspecies of functional programming: the Lisp family that draws from AI engineering, MIT, Emacs, actor research via Scheme, etc; the ML family that draws from typed lambda calculus, inductive definitions, and logical proof systems; and more, like concatenative languages.

JavaScript was always inspired by functional programming, as evident by Eich's claim to have tried to sneak in a variant of Scheme dressed up as Java. I always use lots of anonymous functions, higher order functions, and nonmutating transformations in my JS, without using any special immutability libraries, and I'm pretty happy with it.



Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: