caml-list - the Caml user's mailing list
 help / color / mirror / Atom feed
From: e@flavors.com (Doug Currie, Flavors Technology, Inc.)
To: Graham White <graham@alliaco.demon.co.uk>, caml-light@pauillac.inria.fr
Subject: Re: Suggestion for Caml Light 0.7 for Mac
Date: Mon, 15 May 1995 11:01:21 -0400	[thread overview]
Message-ID: <v01510125abdd16d2173e@[204.5.215.14]> (raw)

At 3:58 PM 95.05.12, Graham White wrote:
>>Regarding the announcement of the release of Caml Light 0.7 beta 4
>>
>>> The Macintosh version has not been recompiled yet.
>>
>>I don't know how easy it would be to do this but as a Mac user of
>>Caml Light I find it very inconvenient to keep switching between
>>the Caml application and my editor. Would it be possible
>>to make Caml Light scriptable by AppleScript, and to maybe log its top-level
>>output to a file for easy error location? The simplest interface to Caml Light
>>would just be a script command which accepts a string and treats it as if it
>>were top level input. Even better, the command could return the
>>top-level output as a string to the calling application.
>Probably an even better way would be to have input and output to Caml via
>apple events, so that you could run it using Alpha as a shell. You would
>then have all the facilities of Alpha, and input and output to Caml would
>appear in Alpha windows. I've just been working with Tom Kiffe on doing
>this with CMacTeX, and it's really quite easy; if anyone wants more
>details, I can send them.

The evaluation mechanism described by Claudio Russo <cvr@dcs.ed.ac.uk>
would be difficult to add. It is very hard to tell when Caml Light is
finished with a command. For the toplevel, one could detect the prompt
string to see when Caml Light was done, but this doesn't work for all
situations, e.g., user written parsers, error messages, etc.

A stream based approach might work; perhaps this is what Graham White is
describing. In a stream based approach there is no necessary correspondence
between AppleEvents sent and received. The editor and Caml Light simply
package up characters into messages and send them off. Perhaps they do this
for every character, or every line, or upon command.

One difficulty with this approach is that the correspondence between user
input and Caml output is lost. The two streams either go to two windows, or
the streams are intermixed haphazardly.

Presumably you'd like Caml Light to continue supporting Compile File and
Load File menu commands. I also find it convenient to select some text in
an edit buffer and send it to Caml Light as input, receiving output in
another window. Does Alpha do this, too?

I have integrated a multi-window editor and interaction window with Caml
Light on the Mac which addresses all these issues, except "I want to use my
editor as an interaction window." It has different styles for user and Caml
typed text in the same window, supports user and Caml typing simultaneously
without intermixing the strings, and is not subject to the far-too-frequent
32K Mac edit buffer limitation. This Caml Light front end also currently
supports the "dosc" DoScript AppleEvent which will send a text string or a
file as input to Caml Light; the output, unfortunately, is currently sent
to the interaction window.

I have given my Caml Light Mac front end to INRIA for their use as they see
fit. At some point in the future I may be able to add the stream based
AppleEvents, but not real soon. The sources are included, however, and I
would invite anyone interested to give it a try.

e






             reply	other threads:[~1995-05-15 15:21 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
1995-05-15 15:01 Doug Currie, Flavors Technology, Inc. [this message]
  -- strict thread matches above, loose matches on Subject: below --
1995-05-12 19:58 Graham White
1995-05-12 11:55 Claudio Russo

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='v01510125abdd16d2173e@[204.5.215.14]' \
    --to=e@flavors.com \
    --cc=caml-light@pauillac.inria.fr \
    --cc=graham@alliaco.demon.co.uk \
    /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).