From: Goswin von Brederlow <goswin-v-b@web.de>
To: David Rajchenbach-Teller <David.Teller@ens-lyon.org>
Cc: yminsky@gmail.com, caml-list@yquem.inria.fr
Subject: Re: [Caml-list] Strings
Date: Sun, 05 Apr 2009 23:40:28 +0200 [thread overview]
Message-ID: <87myaubwz7.fsf@frosties.localdomain> (raw)
In-Reply-To: <1238924202.6147.9.camel@Blefuscu> (David Rajchenbach-Teller's message of "Sun, 05 Apr 2009 11:36:42 +0200")
David Rajchenbach-Teller <David.Teller@ens-lyon.org> writes:
> On Sat, 2009-04-04 at 19:35 -0400, Yaron Minsky wrote:
>> On Sat, Apr 4, 2009 at 5:51 PM, Goswin von Brederlow
>> <goswin-v-b@web.de> wrote:
>> Mutable/Immutable can really nicely done with phantom types
>> and is
>> independent of the data structure used. It works for strings,
>> lists,
>> arrays, sets, trees, ... and I think all standard modules
>> should have
>> it. The official standard lib is rather lacking there but that
>> is why
>> there is Batteries. The more I hear/see of it the more I like
>> it.
>>
>> On this note, there's a small variation on this idea that we've
>> experimented with at Jane Street that I think is worth mentioning.
>> When people do this kind of thing, they usually have two phantom tags,
>> "immutable" and "mutable", but, there is another natural one to add:
>> "readonly".
>
> Actually, thats exactly what we have for strings and arrays in
> Batteries.
>
> Cheers,
> David
Where do you have an immutable string? One where you are sure that
nobody can hold a [> `Write] reference to the string. I only saw the
read and write phantom flags.
MfG
Goswin
next prev parent reply other threads:[~2009-04-05 21:40 UTC|newest]
Thread overview: 47+ messages / expand[flat|nested] mbox.gz Atom feed top
2009-04-03 11:56 Strings Jon Harrop
2009-04-03 12:25 ` [Caml-list] Strings Paolo Donadeo
2009-04-03 14:18 ` Ashish Agarwal
2009-04-03 14:46 ` Jon Harrop
2009-04-03 15:03 ` Daniel Bünzli
2009-04-03 16:52 ` Martin Jambon
2009-04-03 17:50 ` Daniel Bünzli
2009-04-03 19:46 ` Paolo Donadeo
2009-04-03 20:41 ` Harrison, John R
2009-04-04 10:11 ` Jon Harrop
2009-04-04 11:12 ` David Teller
2009-04-04 11:40 ` Jon Harrop
2009-04-04 12:34 ` David Rajchenbach-Teller
2009-04-18 12:31 ` Arkady Andrukonis
2009-04-04 10:13 ` Jon Harrop
2009-04-03 21:44 ` Goswin von Brederlow
2009-04-04 9:10 ` David Rajchenbach-Teller
2009-04-05 10:06 ` Strings Zheng Li
2009-04-06 9:20 ` Strings David Rajchenbach-Teller
2009-04-06 10:07 ` Strings Goswin von Brederlow
2009-04-06 11:03 ` Strings Zheng Li
2009-04-04 17:11 ` [Caml-list] Strings Kuba Ober
2009-04-04 17:26 ` Jon Harrop
2009-04-05 20:54 ` Richard Jones
2009-04-05 23:40 ` Daniel Bünzli
2009-04-03 18:24 ` Florian Hars
2009-04-03 20:34 ` Arnaud Spiwack
2009-04-04 10:20 ` Jon Harrop
2009-04-04 9:14 ` David Rajchenbach-Teller
2009-04-04 9:26 ` Alp Mestan
2009-04-04 10:55 ` blue storm
2009-04-04 21:51 ` Goswin von Brederlow
2009-04-04 23:35 ` Yaron Minsky
2009-04-05 9:36 ` David Rajchenbach-Teller
2009-04-05 10:08 ` Alp Mestan
2009-04-05 21:41 ` Goswin von Brederlow
2009-04-05 21:40 ` Goswin von Brederlow [this message]
2009-04-05 2:55 ` Jon Harrop
2009-04-05 4:22 ` Edgar Friendly
2009-04-05 7:03 ` Goswin von Brederlow
2009-04-05 6:57 ` Goswin von Brederlow
2009-04-05 7:11 ` Jon Harrop
2009-04-04 10:11 ` Jon Harrop
2009-04-04 21:39 ` Goswin von Brederlow
2009-04-05 7:14 ` Romain Beauxis
2009-04-05 9:34 ` David Rajchenbach-Teller
2009-04-05 21:37 ` Goswin von Brederlow
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=87myaubwz7.fsf@frosties.localdomain \
--to=goswin-v-b@web.de \
--cc=David.Teller@ens-lyon.org \
--cc=caml-list@yquem.inria.fr \
--cc=yminsky@gmail.com \
/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