-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1
Jason Johnson wrote:
On 10/25/07, Matej Kosik kosik@fiit.stuba.sk wrote:
I am sorry. This wasn't the proper word.
Certainly, I believe that there are things that cannot be modelled in the pure functional language (whose constructs can be without exceptions mapped to the lambda-calculus). This is not only the case of input/output. This is also the case of modelling stateful systems that interact with their environment over time (not only at the beginning and at the end). So pretending that functional programming can cover all the important aspects of systems we need to model is unfaithful. Those impurities are useful.
Um, you are aware that lambda-calculus is Turing equivalent right?
Absolutely correct.
But there are strictly more interesting things that we want to describe whose behavior cannot be described in the lambda-calculus.
The thing that comes to my mind is - - ClockMorph - - the web-server - - the programmable interrupt timer - - Erlang concurrent, mutually interacting, processes. ...
There are other (equivalent) formalisms that cover also these systems formally. However, it is true that dealing with them is more difficult. But they exist and it does not make sense that they do not exist only because we (me not excluding) do not fully understand them.
"The untyped lambda calculus is Turing-complete, but many typed lambda calculi, including System F, are not."
- -- Matej Kosik ICQ: 300133844 skype: matej_kosik