Marko Rauhamaa <ma...@pacujo.net> writes: > dieter <die...@handshake.de>: >> The concept "assignment" comes from an operational semantics based on >> some form of "RAM" machine. Such a machine has storage cells where you >> can assign values to which remain there until overridden with a new >> value. >> >> The concept "binding" comes from a denotational semantics based on >> some form of functions where parameter names are bound to values on >> function "application" and do not change inside the function. > > I wonder if such pure-bred functional programming languages exist.
I'd put Haskell in that that class. > Lisp, > Scheme and Python don't belong to them, at least. Object-oriented > programming is not really possible without assignment. Even Scheme's > "letrec" appeals to assignment semantics. Haskell defines let (it's version of multiple mutually recursive bindings) in terms of the least fix point of a lambda function whose (pattern) parameter binds the expressions in the definitions. <snip> -- Ben. -- https://mail.python.org/mailman/listinfo/python-list