From: "Yaron M. Minsky" <yminsky@cs.cornell.edu>
To: Chris Hecker <checker@d6.com>
Cc: Caml List <caml-list@inria.fr>
Subject: Re: [Caml-list] string buffer as (in|out)_channel
Date: 17 Jul 2003 03:39:25 -0400 [thread overview]
Message-ID: <1058427564.10355.846.camel@dragonfly.localdomain> (raw)
In-Reply-To: <4.3.2.7.2.20030717000026.026bcaa0@localhost>
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
next prev parent reply other threads:[~2003-07-17 7:39 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2003-07-17 7:05 Chris Hecker
2003-07-17 7:39 ` Yaron M. Minsky [this message]
2003-07-18 9:13 ` Issac Trotts
2003-07-18 9:40 ` Issac Trotts
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=1058427564.10355.846.camel@dragonfly.localdomain \
--to=yminsky@cs.cornell.edu \
--cc=caml-list@inria.fr \
--cc=checker@d6.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;
as well as URLs for NNTP newsgroup(s).