From: brogoff@speakeasy.net
To: "erayo@cs.bilkent.edu.tr" <erayo@cs.bilkent.edu.tr>
Cc: Markus Mottl <markus@oefai.at>,
Siegfried Gonzi <siegfried.gonzi@stud.uni-graz.at>,
"caml-list@inria.fr" <caml-list@inria.fr>
Subject: Re: [Caml-list] Reading a file
Date: Wed, 21 May 2003 09:20:00 -0700 (PDT) [thread overview]
Message-ID: <Pine.LNX.4.44.0305210840360.22470-100000@grace.speakeasy.net> (raw)
In-Reply-To: <200305211304.28298.exa@kablonet.com.tr>
On Wed, 21 May 2003, Eray Ozkural wrote:
> Err. Yes, but anybody who's used Haskell will know that those annotations can
> be handy when you're writing the code. They are harmless too, why don't we
> have such a syntax?
It's more than that. In Haskell 98, using polymorphic recursion requires
that you explicitly annotate the recursive function. Some other languages
like Clean and Mercury use type inference. OCaml requires that you explicitly
annotate the functions to get polymorphic recursion, whether you use explicit
polymorphism of record fields, polymorphic methods, or the experimental
recursive module feature. My current opinion is that explicit annotation is
the right way.
WRT your main point, I agree that having a separate signature close to the
function is often more readable. In OCaml, the syntax is
let function_name : function_type =
fun arg0 arg1 ... argN ->
and while I admit that I prefer the Haskell/Clean separate signatures, this
is often good enough. I'd file this one under "petty complaint" for now.
There are bigger fish to fry.
-- Brian
-------------------
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-05-21 16:20 UTC|newest]
Thread overview: 63+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <ocaml@tagger.yapper.org>
2003-03-31 16:51 ` [Caml-list] How can I check for the use of polymorphic equality? Neel Krishnaswami
2003-03-31 17:33 ` brogoff
2003-04-03 19:44 ` Jason Hickey
2003-04-03 20:40 ` Pierre Weis
2003-04-03 20:53 ` Chris Hecker
2003-04-04 8:46 ` Pierre Weis
2003-04-04 19:05 ` Jason Hickey
2003-04-04 9:10 ` Andreas Rossberg
2003-05-14 11:43 ` [Caml-list] ocaml and large development projects Traudt, Mark
2003-05-14 15:52 ` Jason Hickey
2003-05-18 5:32 ` Chris Hecker
2003-05-18 5:44 ` David Brown
2003-05-18 6:10 ` Chris Hecker
2003-05-18 11:13 ` John Carr
2003-05-18 16:51 ` Ed L Cashin
2003-05-18 18:08 ` Lex Stein
2003-05-18 19:08 ` Ed L Cashin
2003-05-18 19:55 ` Lex Stein
2003-05-19 8:13 ` Markus Mottl
2003-05-19 8:33 ` Nicolas Cannasse
2003-06-02 21:59 ` John Max Skaller
2003-05-18 23:19 ` Chris Hecker
2003-05-18 14:38 ` David Brown
2003-05-18 16:00 ` Ville-Pertti Keinonen
2003-05-19 15:36 ` Brian Hurt
2003-05-19 19:31 ` Chris Hecker
2003-05-19 23:39 ` Seth Kurtzberg
2003-05-20 8:07 ` [Caml-list] ocaml as *.so (was: ...and large development projects) Wolfgang Müller
2003-05-20 8:42 ` [Caml-list] Reading a file Siegfried Gonzi
2003-05-20 10:21 ` Mattias Waldau
2003-05-20 10:48 ` Nicolas Cannasse
2003-05-20 10:55 ` Markus Mottl
2003-05-20 13:20 ` Michal Moskal
2003-05-20 12:21 ` Siegfried Gonzi
2003-05-21 6:11 ` Siegfried Gonzi
2003-05-21 6:48 ` Siegfried Gonzi
2003-05-21 6:53 ` Siegfried Gonzi
2003-05-21 9:16 ` Markus Mottl
2003-05-21 10:04 ` Eray Ozkural
2003-05-21 16:20 ` brogoff [this message]
2003-05-21 8:21 ` Michal Moskal
2003-05-21 7:24 ` [Caml-list] PsiLAB works fine under Linux SuSE 8 Siegfried Gonzi
2003-05-21 9:11 ` [Caml-list] Reading a file Markus Mottl
2003-05-22 6:27 ` Siegfried Gonzi
2003-05-22 10:26 ` Markus Mottl
2003-05-23 5:59 ` Siegfried Gonzi
2003-05-23 6:04 ` Siegfried Gonzi
2003-05-20 10:45 ` [Caml-list] ocaml as *.so (was: ...and large development projects) Nicolas Cannasse
2003-05-20 11:17 ` Wolfgang Müller
2003-05-20 11:31 ` Nicolas Cannasse
2003-05-20 11:40 ` Wolfgang Müller
2003-06-02 22:40 ` John Max Skaller
2003-06-03 13:26 ` [Caml-list] ocaml as *.so Remi Vanicat
2003-06-02 22:42 ` [Caml-list] ocaml and large development projects John Max Skaller
2003-06-02 21:24 ` John Max Skaller
2003-06-02 21:12 ` John Max Skaller
2003-06-03 0:31 ` Chris Hecker
2003-06-03 10:13 ` Michal Moskal
2003-06-03 18:12 ` Chris Hecker
2003-06-03 14:31 ` art yerkes
2003-06-03 21:55 ` Jason Hickey
2003-06-03 22:42 ` Chris Hecker
2003-06-06 23:46 ` John Max 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=Pine.LNX.4.44.0305210840360.22470-100000@grace.speakeasy.net \
--to=brogoff@speakeasy.net \
--cc=caml-list@inria.fr \
--cc=erayo@cs.bilkent.edu.tr \
--cc=markus@oefai.at \
--cc=siegfried.gonzi@stud.uni-graz.at \
/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