From: Brighten Godfrey <pbg@cs.berkeley.edu>
To: caml-list@yquem.inria.fr
Subject: Record field label locality
Date: Sun, 10 Aug 2008 03:04:37 -0700 [thread overview]
Message-ID: <A88CBC45-AE6C-4428-9DEF-3B8C144281FE@cs.berkeley.edu> (raw)
Hi,
Here's something that I've wondered about for years; maybe someone
here can enlighten me. One of the few major annoyances in OCaml code
style is that if I define a record in one module, say a Graph module:
type t = {
nodes : node_t array;
}
then when I use it in another module, say with a graph variable `g',
then I have to write `g.Graph.nodes' rather than `g.nodes'.
I can understand why a record field label has to be uniquely
identified. But can't the explicit naming of the Graph module
usually be avoided, since the compiler will know that `g' is a
`Graph.t'? For example if I write something like
let g : Graph.t = make_graph () in
g.nodes
it seems to me that on the second line, the type of `g' and hence the
meaning of `g.nodes' is unambiguous.
Thanks!
~Brighten Godfrey
next reply other threads:[~2008-08-10 10:04 UTC|newest]
Thread overview: 11+ messages / expand[flat|nested] mbox.gz Atom feed top
2008-08-10 10:04 Brighten Godfrey [this message]
2008-08-10 19:38 ` [Caml-list] " Jon Harrop
2008-08-12 21:03 ` Brighten Godfrey
2008-08-13 0:12 ` Edgar Friendly
2008-08-13 1:17 ` Brighten Godfrey
2008-08-13 12:48 ` Edgar Friendly
2008-08-14 6:38 ` Brighten Godfrey
2008-08-14 10:11 ` David Allsopp
2008-08-13 1:51 ` blue storm
2008-08-13 8:14 ` Richard Jones
2008-08-13 9:30 ` Brighten Godfrey
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=A88CBC45-AE6C-4428-9DEF-3B8C144281FE@cs.berkeley.edu \
--to=pbg@cs.berkeley.edu \
--cc=caml-list@yquem.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