logoalt Hacker News

pkalyesterday at 4:36 PM3 repliesview on HN

I recently realized that "pure functional" has two meanings, one is no side-effects (functional programmers, especially of languages like Haskell use it this way) and the other is that it doesn't have imperative fragments (the jump ISWIM to SASL dropped the non-functional parts inherited from ALGOL 60). A question seems to be whether you want to view sequencing as syntax sugar for lambda expressions or not?


Replies

nh2yesterday at 5:17 PM

Who uses the second meaning?

In my experience, "purely functional" always means "you can express pure functions on the type level" (thus guaranteeing that it is referentially transparent and has no side effects) -- see https://en.wikipedia.org/wiki/Pure_function

NeutralForestyesterday at 5:39 PM

I'm working with Python and I'm sympathetic to the problem so I'd be curious if you have examples of what Python issues are fixed with OCaml.

show 1 reply
nesarkvechnepyesterday at 7:44 PM

Pure functional doesn't mean no side effects but controlled side effects.