[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
IO redirection in Elisp
- To: Ellis
- Subject: IO redirection in Elisp
- From: John C Ruttenberg <Ruttenberg>
- Date: Tue ,18 Oct 83 07:03:08 EDT
- Cc: Fisher
- Resent-date: Tue, 18 Oct 83 17:41:21 EDT
- Resent-from: John R Ellis <Ellis@YALE.ARPA>
- Resent-to: T-Discussion@YALE.ARPA
is actually a nice feature but clumsy to use interactively (which is when
I want it). So I have defined:
(} EXPR FILENAME)
Redirects output of EXPR to the named file.
(}} EXPR FILENAME)
Appends output of EXPR to the named file.
({ EXPR FILENAME)
Redirects input of expr from the named file.
These encourage me to use UNIX-like redirection interactively for things like:
* (options.set 'disp 5)
* (} (cce solve4 solve-args) 'solve.log)
(Much faster and neater than just picking the SM log.)
Or:
* (} (loop (incr i from 1 to 16) (do
* (msg 0 "(write-mis () 'b" i ".dag)" )
* (msg 0 "ok")
* (msg 0 "(write-mis () 'a" i ".dag)" )
* (msg 0 "ok") ) )
* 'temp:junk.junk)
* ({ (cce fft1 fft-args) 'temp:junk.junk)
in order to get draw all the flow graphs from a 16 trace compile.
(This second case probably just points up the need for a "movie mode" in
WRITE-MIS and WRITE-TRACE, but that's another story.)
In any case, I don't want to make a big thing out of this, cause it's not.
I've found the (iota ((... idiom too verbose for interactive use. Replacing
it with a simple macro gave me something that I now use all the time.
I thought you'd be interested.
-------