Browse thread
[Caml-list] string buffer as (in|out)_channel
-
Chris Hecker
- Yaron M. Minsky
- Issac Trotts
- Issac Trotts
[
Home
]
[ Index:
by date
|
by threads
]
[ Message by date: previous | next ] [ Message in thread: previous | next ] [ Thread: previous | next ]
[ Message by date: previous | next ] [ Message in thread: previous | next ] [ Thread: previous | next ]
| Date: | -- (:) |
| From: | Yaron M. Minsky <yminsky@c...> |
| Subject: | Re: [Caml-list] string buffer as (in|out)_channel |
I think this is the kind of place where it would make sense to use the object system. That is, in addition to the low-level in_channel and out_channel, which essentially serve as proxies for unix file-descriptor based channels, there should be I/O objects with a standard signature for files, strings, buffers, etc. I actually have done a simple version of this for myself as part of the SKS project, but I think something along these lines would be useful as a standard part of ocaml, including integration with printf and other places in the standard library that use I/O. As for your precise question, I don't myself know of any way to convert a Buffer.t to an i/o channel. y On Thu, 2003-07-17 at 03:05, Chris Hecker wrote: > Is there any way to do something similar to the C++ string stream stuff, > where you treat strings (or Buffer.t's) as in_ or out_channels? The Format > module has a formatter for strings, but there doesn't seem to be a way to > do it with Pervasives. Something like: > > val out_channel_of_buffer : Buffer.t -> out_channel > val in_channel_of_buffer : Buffer.t -> in_channel > > and maybe _of_string versions too (probably necessary because you can't > convert a string to a buffer for the in_channel), which fill up and don't > expand. > > It'd be very useful to be able to do this. > > Thanks, > Chris > > PS. Please cc me on replies, I temporarily unsubscribed from the list, thanks! > > ------------------- > 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