Version française
Home     About     Download     Resources     Contact us    

This site is updated infrequently. For up-to-date information, please visit the new OCaml website at

Browse thread
Estimating the size of the ocaml community
[ Home ] [ Index: by date | by threads ]
[ Search: ]

[ Message by date: previous | next ] [ Message in thread: previous | next ] [ Thread: previous | next ]
Date: 2005-02-14 (19:17)
From: Thomas Fischbacher <Thomas.Fischbacher@P...>
Subject: Re: [Caml-list] The boon of static type checking

On Mon, 14 Feb 2005, Martin Berger wrote:

> > That's how it's supposed to be. Especially scheme tries to be nothing else 
> > but just the minimal "functional assembly language". So one can put other 
> > languages on top of it.
> the words "functional" and "minimal" may be considered contradictory as the basic
> primitive of functional programming, beta reduction, is a very heavy operation that
> can successfully be decomposed into more lightweight operations like:
>     - state change + conditional branching.
>     - continuation passing
>     - name-passing interaction.
> (of those the third is the most elementary and general and encompasses the others).
> putting any of those on top of beta-reduction generally leads to something ugly.
> functional abstractions are extremely useful in many computational situations, but
> they are high-level, not something one can use successfully as a foundation to start
> from. several decades of failed attempts at founding (the semantics of) computation
> on lambda calculus shows this. the difficulties of finding convincing hoare-logics for
> ML-like languages, a problem that has really only been solved this year, and on the
> basis of pi-calculus, is another indication in this direction.

Now that sounds interesting! Can you provide me with a few references?

regards,                   (o_
 Thomas Fischbacher -  //\
(lambda (n) ((lambda (p q r) (p p q r)) (lambda (g x y)           V_/_
(if (= x 0) y (g g (- x 1) (* x y)))) n 1))                  (Debian GNU)