Version française
Home     About     Download     Resources     Contact us    
Browse thread
[Caml-list] hash objectified
[ Home ] [ Index: by date | by threads ]
[ Search: ]

[ Message by date: previous | next ] [ Message in thread: previous | next ] [ Thread: previous | next ]
Date: -- (:)
From: Yaron M. Minsky <yminsky@c...>
Subject: Re: [Caml-list] hash objectified
My take on the same problem was to define infix notation for a few
oft-used operations, including some hash table operations.  To that end
I defined

   h |> k

to lookup key k in hashtable h, and 

   h |< (k,d)

to add the key,data pair (k,d) to h.  It has the downside of obscurity
to the uninitiated, but I find it a lot easier to read code that uses
these operators than the rather overlong Hashtbl.* equivalents.

y

On Mon, 2003-08-25 at 13:32, Manos Renieris wrote:
> On Mon, Aug 25, 2003 at 05:46:39PM +0200, KONTRA Gergely wrote:
> > 
> > Hashtbl.add h "foo" "bar" <--> h#add "foo" "bar"
> > 
> > Because it is shorter to type -> less errors, quicker programming
> > OO can be cool. (see ruby)
> > I'm not OO fan, but lazy :)
> 
> If that's the reason, once you do
>     module H = Hashtbl
> then
>     H.add h "foo" "bar"
> is only two characters longer, and one shift shorter :-)
> And the compiler ensures the exact type of h, and you know statically
> what function you call -> less to keep in your head -> less errors,
> quicker programming.
> 
> -- Manos
> 
> -------------------
> 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
-- 
|--------/            Yaron M. Minsky              \--------|
|--------\ http://www.cs.cornell.edu/home/yminsky/ /--------|

Open PGP --- KeyID B1FFD916 (new key as of Dec 4th)
Fingerprint: 5BF6 83E1 0CE3 1043 95D8 F8D5 9F12 B3A9 B1FF D916



-------------------
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