Just for your fun and horror

Joe Fasel jhf@lanl.gov
Fri, 16 Feb 2001 16:10:29 -0700 (MST)


On 16-Feb-2001 Matthias Felleisen wrote:
| 
| The problem is Haskell, not your student. 
| 
| Haskell undermines the meaning of 'return', which has the same meaning in
| C, C++, Java, and who knows whatelse.  These languages use 'return' to
| refer to one part of the denotation of a function return (value) and
| Haskell uses 'return' to refer to two parts (value, store). These languages
| have been around forever; Haskell came late. These languages are
| imperative; Haskell is a wanna-be imperative language. 

The denotation of a return command in a typical imperative language supplies
a value and a store to a calling continuation, so why is the name not entirely
appropriate?

Joseph H. Fasel, Ph.D.              email: jhf@lanl.gov
Technology Modeling and Analysis    phone: +1 505 667 7158
University of California            fax:   +1 505 667 2960
Los Alamos National Laboratory      post:  TSA-7 MS F609; Los Alamos, NM 87545