caml-list - the Caml user's mailing list
 help / color / mirror / Atom feed
* [Caml-list] Cash 0.20
@ 2002-08-28 13:01 Bruno.Verlyck
  2002-08-28 13:26 ` Stefano Zacchiroli
  0 siblings, 1 reply; 3+ messages in thread
From: Bruno.Verlyck @ 2002-08-28 13:01 UTC (permalink / raw)
  To: caml-announce

I'm pleased to announce a new release of Cash, the Caml Shell.

* Release 0.20

What's new:
- Cash now compiles on Cygwin and OS with no support for dynamic
  linking by Objective Caml;
- A complete tty/pty interface, covering Posix, SYSV and BSD;
- An emulation of string channels;
- Unbuffered I/O is fully working with Ocaml 3.05;
- Some bugs have been fixed, some examples added (in examples/).
Also added:
- write_string and its cousins;
- fork_with_pipe_plus (complex connections in pipes);
- call_with_input_file, call_with_output_file, call_with_fdes_fn
  (Scheme compatibility);
- run_with_out_channel, run_with_outchan_plus_proc, and
  run_with_chan_plus_proc becomes run_with_inchan_plus_proc.

For more information, see:
 http://pauillac.inria.fr/cash/
Download the most recently distributed source:
 ftp://ftp.inria.fr/INRIA/Projects/cristal/cash/cash.tar.gz
Stay in sync with latest development / bug fixes (CVS archive):
 http://camlcvs.inria.fr/cgi-bin/cvsweb.cgi/cash/
Documentation:
 http://pauillac.inria.fr/cash/latest/doc/doc.dvi
 http://pauillac.inria.fr/cash/latest/doc/doc.ps
 http://pauillac.inria.fr/cash/latest/doc/index.html

* What is Cash ?

Cash is a Caml implementation of (an as large as possible subset of) the
API of Scsh (0.5.3), the Scheme Shell by Olin Shivers.	It's designed for
writing standalone Unix programs and shell scripts (but rather *not* for
interactive command use). It spans a wide range of application, from
"script" applications usually handled with perl or sh, to more standard
systems applications usually written in C.

* Bugs

Bug reports, comments, doc typos, and contributions are very welcome:
drop me a mail at Bruno.Verlyck@inria.fr.

Have fun,
Bruno.
-------------------
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


^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [Caml-list] Cash 0.20
  2002-08-28 13:01 [Caml-list] Cash 0.20 Bruno.Verlyck
@ 2002-08-28 13:26 ` Stefano Zacchiroli
  2002-08-28 14:05   ` Bruno.Verlyck
  0 siblings, 1 reply; 3+ messages in thread
From: Stefano Zacchiroli @ 2002-08-28 13:26 UTC (permalink / raw)
  To: Inria Ocaml Mailing List

On Wed, Aug 28, 2002 at 03:01:32PM +0200, Bruno.Verlyck@inria.fr wrote:
> API of Scsh (0.5.3), the Scheme Shell by Olin Shivers.	It's designed for
> writing standalone Unix programs and shell scripts (but rather *not* for
> interactive command use). It spans a wide range of application, from

Do you have planned a future "interactive command use" release?

Cheers.

-- 
Stefano Zacchiroli - undergraduate student of CS @ Univ. Bologna, Italy
zack@cs.unibo.it | ICQ# 33538863 | http://www.cs.unibo.it/~zacchiro
"I know you believe you understood what you think I said, but I am not
sure you realize that what you heard is not what I meant!" -- G.Romney
-------------------
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


^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [Caml-list] Cash 0.20
  2002-08-28 13:26 ` Stefano Zacchiroli
@ 2002-08-28 14:05   ` Bruno.Verlyck
  0 siblings, 0 replies; 3+ messages in thread
From: Bruno.Verlyck @ 2002-08-28 14:05 UTC (permalink / raw)
  To: zack; +Cc: caml-list

   Date: Wed, 28 Aug 2002 15:26:41 +0200
   From: Stefano Zacchiroli <zack@cs.unibo.it>
   Mail-Followup-To: Inria Ocaml Mailing List <caml-list@inria.fr>

   On Wed, Aug 28, 2002 at 03:01:32PM +0200, Bruno.Verlyck@inria.fr wrote:
   > API of Scsh (0.5.3), the Scheme Shell by Olin Shivers.  It's designed for
   > writing standalone Unix programs and shell scripts (but rather *not* for
   > interactive command use).
   Do you have planned a future "interactive command use" release?
No.  One of Olin Shivers points in designing Scsh was that an
interactive command language has to be terse to the point of being
write-only.  (See below an excerpt of
 http://www.scsh.net/docu/scsh-paper/scsh-paper-Z-H-4.html.
Read the intro -- the `Prologue' --, too: it's delightful!)

He chose to focus on the programming language side.  As command
languages, shells are very hard to beat.

Of course, you can still type
   ledit cash
followed by `open Cash;;' and get an interactive top-level where you
can type OCaml expressions :-).

Bruno.

  Unix shells, such as sh or csh, provide two things at once: an
  interactive command language and a programming language. Let us
  focus on the latter function: the writing of ``shell scripts'' --
  interpreted programs that perform small tasks or assemble a
  collection of Unix tools into a single application.
[..]
  There is a tension between the shell's dual role as interactive
  command language and shell-script programming language. A command
  language should be terse and convenient to type. It doesn't have to
  be comprehensible. Users don't have to maintain or understand a
  command they typed into a shell a month ago. A command language can
  be ``write-only,'' because commands are thrown away after they are
  used.  However, it is important that most commands fit on one line,
  because most interaction is through tty drivers that don't let the
  user back up and edit a line after its terminating newline has been
  entered. This seems like a trivial point, but imagine how irritating
  it would be if typical shell commands required several lines of
  input. Terse notation is important for interactive tasks.

  Shell syntax is also carefully designed to allow it to be parsed
  on-line -- that is, to allow parsing and interpretation to be
  interleaved. This usually penalizes the syntax in other ways (for
  example, consider rc's clumsy if/then/else syntax [rc]).

  Programming languages, on the other hand, can be a little more
  verbose, in return for generality and readability. The programmer
  enters programs into a text editor, so the language can spread out a
  little more.

  The constraints of the shell's role as command language are one of
  the things that make it unpleasant as a programming language.
-------------------
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


^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2002-08-28 14:05 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2002-08-28 13:01 [Caml-list] Cash 0.20 Bruno.Verlyck
2002-08-28 13:26 ` Stefano Zacchiroli
2002-08-28 14:05   ` Bruno.Verlyck

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