Previous week   Up   Next week
Hello,

Here is the latest Caml Weekly News, weeks 23 to 30 april, 2002. 

1) Proof Assistant PhoX
2) camlidl - finalizing cows without COM!
3) lablgtkmathview released
4) matlab interfacing
5) Specialized functors
6) Project Proposals
7) OCaml IDEs for beginners?

======================================================================
1) Proof Assistant PhoX
----------------------------------------------------------------------
Christophe Raffalli announced:

The new version 0.8 of the Proof Assistant PhoX (written in OCaml) is
available.

Changes include:
- Better documentation that should allow people to really use it !
- Tutorial (in french :-() to learn the system or to teach mathematics
- Windows version available

Come and visit http://www.lama.univ-savoie.fr/~RAFFALLI/phox.html

======================================================================
2) camlidl - finalizing cows without COM!
----------------------------------------------------------------------
Xavier Leroy answered and announced:

> Hi,
> 
> I have just started hacking in camlidl and for now had a really pleasant
> experience.
> 
> However I really can't find out how to create a finalized object without
> going into COM interfaces.
> 
> Say my underlying C library for manipulating ..... hmmm.. cows  has a
> function that creates and references a new cow, and a function that is used
> to de-reference the cows when they no longer are live:
>  
> typedef int cow;     
> cow createAndReferenceCow(void);
> void freeCow(cow);
> 
> Now, when the OCaml structures for some reason decide to garbage collect my
> cow the finalized object should call freeCow......  I have done this a bunch
> of times without the idl interface, but have no clue how to specify this in
> an idl file.  Help!!!

There's a new release of CamlIDL at http://caml.inria.fr/camlidl/
that supports a "finalize" attribute to do just this, e.g.

        typedef [abstract,finalize(freeCow)] int cow;

The release also fixes some minor bugs with error reporting in
presence of import files, and with "const" qualifiers.  (Thanks for
Dmitry Bely for his extensive testing and bug hunting!)

======================================================================
3) lablgtkmathview released
----------------------------------------------------------------------
Claudio Sacerdoti Coen announced:

Hi Ocamlers!

I am proud to announce the release of lablgtkmathview version 0.3.0.

lablgtkmathview is a lablgtk binding to GtkMathView, a fully compliant
widget to render MathML documents and print them to PostScript.

GtkMathView is based on gdome2. Hence lablgtkmathview input are
gdome2 (alias gmetadom) DOM trees, which can also be produced on-the-fly
using gdome2-xslt to apply XSLT stylesheets.

lablgtkmathview: http://www.cs.unibo.it/helm/mml-widget/index.html
gmetadom:        http://sourceforge.net/projects/gmetadom/

======================================================================
4) matlab interfacing
----------------------------------------------------------------------
Maurice Brémond answered and announced:

>Does anyone knows if there is a ocmal interface to call matlab scripts ?

I have written an interface to Matlab API in order to write Ocaml
program (Ocaml 'MEX-files') for Matlab.

Matlab standard Mex API provides a callback facility to Matlab
functions and scripts.

There is some extensions with Camlp4 to simplify the registration to
Matlab of Caml functions and a Camlp4 quotation to write 'Matlab like'
expressions.

You can find it here :

ftp://spike.cst.cnes.fr/pub/bremond/ocamlmex/ocamlmex.tar.gz

In the hope it can be useful

======================================================================
5) Specialized functors
----------------------------------------------------------------------
Malc announced:

Hi,

Here http://algol.prosalg.no/~malc/code/specfun.tar.gz you can find small
OCaml 3.04 patch to allow functor specialization. Feedback is welcome.

======================================================================
6) Project Proposals
----------------------------------------------------------------------
Xavier Leroy explained:

Some answers for Diego's questions about the new "Project proposals"
section of the Caml Hump:

- Nature of the proposed work: I think everything goes, from short
projects (a few modules) to more ambitious, long-term developments
(interfaces with large libraries, design and implementation of
complete frameworks, etc).  Still, it's better if the project is
relatively self-contained and can be described relatively precisely.
E.g. "implementing the TLS protocol" is fine, but "design and
implement a new protocol for authentication and confidentiality over
the Web" is perhaps too imprecise (and too ambitious :-).

- Who can make proposals and how they are selected: everyone is
welcome to make proposals, either on this list or by mailing
hump@pauillac.inria.fr.  Maxence Guesdon maintains the Humps,
and asks us (the Caml team) if there are questions on the
appropriateness of a topic.

- How to make a proposal: a one-liner plus a link to relevant
documentation or specification is fine, e.g. "a library to handle MIME
encoding and mailbox parsing" with a link to the relevant RFC.  If you
wish to provide more details, you're most welcome to write a more
complete description on a Web page, and send us the URL.

- Should we include links to projects already in progress
(e.g. Bedouin): why not, if the organizers of these projects wish to
(maybe they have enough volunteers already).

======================================================================
7) OCaml IDEs for beginners?
----------------------------------------------------------------------
Benjamin Pierce asked:

Are there any programming environments out there for OCaml that are
especially well suited to beginning programmers?

At the University of Pennsylvania, we teach our intro programming course
for CS majors in OCaml (and later Java).  At the moment, we are using
Emacs (with tuareg mode) as the "programming environment," but we're not
very happy with it -- there's too much (dangerous) power, and all the
control-F stuff is unintuitive for kids that have been raised on MS
Word.  Teaching programming to beginners is hard enough without turning
editing into a big deal.

One obvious improvement would be to build an Emacs mode that hides almost
all of its power and offers Word-like mouse- and keybindings.  This would
be pretty easy.

But even better would be a *real* IDE for beginners.  (After all, the
Scheme community has the very wonderful DrScheme environment...)  Is
there one?

Or, if not, would there be interest in the community in creating one?

Then Michel Schinz answered:

For this part (at least for the Windows bindings), you could already
use CUA mode, which can be found there:

http://www.cua.dk/cua.html

And Nicolas Cannasse also answered:

That will be one part of my summer work for Lexifi (member of OCaml
consortium). That list will be informed of further advance.

======================================================================

Alan Schmitt