I think that the BitC language is very nearly functionally complete at
this point. Still some details getting cleaned up. There are more things
I want to do, most importantly adding an annotation mechanism, but none
of the things I want to do are "core". We also have a few outstanding
detail issues. The biggest one is monotonic initialization.

>From a *research* perspective, however, I think BitC is potentially
useful as a vehicle allowing us to do direct comparative evaluations of
programming idioms using the same compilation tool chain. So far as I
know, the following statements are true today:

  1. Every valid ML program has a direct transcription to BitC except
     where row type extension is performed.

     This style of type extension is something that BitC has intended
     to support all along.

  2. Every valid Haskell program *would* have a direct transcription to
     BitC *if* BitC provided support for monads.

This leads me to the question: should we add the monad concept to BitC?
It would give us a language providing a fully complete and continuous
range of expressiveness from purely stateful to purely functional by
choosing different subset languages.

So:

  1. Should we do this?
  2. How complex it is?


shap

_______________________________________________
bitc-dev mailing list
[email protected]
http://www.coyotos.org/mailman/listinfo/bitc-dev

Reply via email to