caml-list - the Caml user's mailing list
 help / color / mirror / Atom feed
From: szegedy@t-online.de (Christian Szegedy)
To: caml-list@inria.fr
Subject: [Caml-list] Looking for collaborators on a hobby project
Date: Wed, 26 May 2004 22:21:33 +0200	[thread overview]
Message-ID: <40B4FC4D.3070408@t-online.de> (raw)

I am looking for collaborators for the following project:

I am considering to create a Ruby-like language in Ocaml.

The main difference would be that it would be compiled
while assuring type safety.

It would be both interpreted (first pass), then a selected
subset of methods are mapped to Ocaml classes and
they get compiled.  It would be completely reflexive,
so the first pass would be able to modify the syntax tree
in any possible way.

So, the language would basically operate on itself as
a preprocessor (without type checks), then the second
phase would be done with exact type checking.

The Ruby (I don't plan to implement the whole language
at first, just the most important part of it.) classes
are mapped to Ocaml classes. The implementation
would only use a small part of Ocamls features.

Anyway, you would be able to program without writing
supplying ANY type information, just like in a scripting
language, but the compiler would detect
all possible type problems. Of course, that means that
every single data (integers,floats, etc.) are wrapped
by Ocaml classes, which would effect the run-time
compared to native Ocaml code considerable. However,
according to my preliminary test, they it would be still much
faster then a Ruby (or Python) code. The main advantage
of the approach is the additional safety of type checking.

The advantage over OCaml would be: easier to learn for
beginners. Full scale polymorphism and overloading.
Of course, you can achieve the same effect right now,
but it would simplify things quite a bit.

The front-end and the back-end would make heavy use
of CamlP4.

I would start with actual coding if I find someone somone
seriously interested.

-------------------
To unsubscribe, mail caml-list-request@inria.fr Archives: http://caml.inria.fr
Bug reports: http://caml.inria.fr/bin/caml-bugs FAQ: http://caml.inria.fr/FAQ/
Beginner's list: http://groups.yahoo.com/group/ocaml_beginners


             reply	other threads:[~2004-05-26 20:21 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2004-05-26 20:21 Christian Szegedy [this message]
2004-05-26 21:36 ` Brandon J. Van Every
2004-05-26 21:37   ` Richard Jones
2004-05-28  9:17 ` Richard Zidlicky
2004-05-27 21:11 Christian Szegedy
2004-05-27 22:09 ` skaller
2004-05-27 23:00   ` Christian Szegedy

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=40B4FC4D.3070408@t-online.de \
    --to=szegedy@t-online.de \
    --cc=caml-list@inria.fr \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).