From: Michal Moskal <malekith@pld-linux.org>
To: Richard Jones <rich@annexia.org>
Cc: caml-list@inria.fr
Subject: Re: [Caml-list] OCaml wishlist
Date: Tue, 21 Oct 2003 16:55:31 +0200 [thread overview]
Message-ID: <20031021145531.GA14086@roke.freak> (raw)
In-Reply-To: <20031021142921.GA6736@redhat.com>
On Tue, Oct 21, 2003 at 03:29:21PM +0100, Richard Jones wrote:
> After writing a fair bit of OCaml in commercial situations (although
> I'm by no means an expert, and really should learn camlp4), here's my
> wishlist:
>
> 1. 'return' from a function. eg:
>
> let foo x =
> if x < 0 then return "OSL";
> (* long & complex code *)
> return "some other string"
>
> I know I can do this using if ... else, but when you have multiple
> levels of if ... else you end up being indented so far across the
> screen as to make coding unpleasant.
You can try guarded patterns. I have to admit that OCaml makes
imperative programming somewhat harder then it strictly have to. This is
however religious issue.
> 2. abstract data type syntactic sugar:
> obj#call [ or: obj->call ]
>
> is exactly equivalent to:
>
> M.call obj
let f a b c = a->add b c
What type does f have?
--
: Michal Moskal :: http://www.kernel.pl/~malekith : GCS {C,UL}++++$ a? !tv
: When in doubt, use brute force. -- Ken Thompson : {E-,w}-- {b++,e}>+++ h
-------------------
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
next prev parent reply other threads:[~2003-10-21 15:00 UTC|newest]
Thread overview: 19+ messages / expand[flat|nested] mbox.gz Atom feed top
2003-10-21 14:29 Richard Jones
2003-10-21 14:55 ` Michal Moskal [this message]
2003-10-21 16:02 ` Richard Jones
2003-10-21 17:28 ` William Lovas
2003-10-21 17:50 ` Richard Jones
2003-10-21 20:27 ` Yaron Minsky
2003-10-21 20:32 ` Yaron Minsky
2003-10-21 21:46 ` Alain.Frisch
2003-10-22 0:59 ` Jacques Garrigue
2003-10-22 2:52 ` Brian Hurt
2003-10-22 15:27 ` Michal Moskal
2003-10-21 19:46 ` Alain.Frisch
2003-10-21 15:26 ` Alain.Frisch
2003-10-21 17:38 ` David Brown
2003-10-21 22:34 Richard Jones
2003-10-22 1:14 ` Jacques Garrigue
2003-10-22 13:21 ` brogoff
2003-10-23 0:31 ` Eray Ozkural
2003-10-23 16:55 ` skaller
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=20031021145531.GA14086@roke.freak \
--to=malekith@pld-linux.org \
--cc=caml-list@inria.fr \
--cc=rich@annexia.org \
/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