home *** CD-ROM | disk | FTP | other *** search
- Path: sparky!uunet!dtix!darwin.sura.net!spool.mu.edu!umn.edu!csus.edu!sfsuvax1.sfsu.edu!emclean
- From: emclean@sfsuvax1.sfsu.edu (Emmett McLean)
- Newsgroups: comp.lang.apl
- Subject: Re: can someone please recommend a ftp site for j
- Keywords: j
- Message-ID: <1992Dec22.185417.29700@csus.edu>
- Date: 22 Dec 92 18:54:17 GMT
- References: <1992Dec22.161230.28934@fnbc.com>
- Sender: news@csus.edu
- Organization: San Francisco State University
- Lines: 86
-
- To: jja@fnbc.com
- Subject: Re: can someone please recommend a ftp site for j
- Newsgroups: comp.lang.apl
- In-Reply-To: <1992Dec22.161230.28934@fnbc.com>
- Organization: San Francisco State University
- Cc:
- Bcc:
-
- In article <1992Dec22.161230.28934@fnbc.com> you write:
- >greetings,
- >
- >i am looking for a neXt version of j. i use it at home
- >on the pc and now i want to use it at work.
- >
- >where can i ftp it from? or the sources if a neXt version is
- >not available.
-
- Go to :
- watserv1.waterloo.edu
- cd to
- languages/apl/j/exec/NEXT
- or cd to
- languages/apl/j/source
- (or is it ?)
- languages/apl/j/src
- for the source? You'll figure it out.
-
- v6.1 is the most recent version of the source code and v6.0
- is the most recent version of the executable.
-
- For a session manager, under the NeXT, I suggest running J under Emacs.
- Do an archie to find the path to get j-interaction-mode.el
- and stuff the file with a few changes (read the doc) and
- stuff it into your .emacs file. I suggest also including
- the following instructions:
-
- ;;; Get rid of that help message for ESC ESC
- (put 'eval-expression 'disabled nil)
-
- ;;; So I'll scroll for output beyond 80 chars
- (setq-default truncate-lines t)
-
- ;;; Since take drop,tail, and curtail are {. }. {: and }:
- ;;; matching parens are meaningless
- (setq blink-matching-paren nil)
-
- (setq term-file-prefix nil)
-
- ;;; So undo is easy to use
- (define-key global-map "\eOB" 'undo )
-
- ;;;; So C-x < scrolls as before, but C-u C-x < scrolls to point.
- (defun emclean-scroll-left (&optional to-point)
- (interactive "P")
- (scroll-left (if to-point (current-column))))
- (global-set-key "\C-x<" (function emclean-scroll-left))
-
- ;;;; I find being able to create another shell easily useful so
- (defun shell-numbered ()
- "Create a new shell named, *shell1*, *shell2*, *shell3*, ....
- Numbers are reused as they become available."
- (interactive)
- (let ((shell-number 1))
- (while (get-buffer (format "*shell%d*" shell-number))
- (setq shell-number (1+ shell-number)))
- (shell)
- (rename-buffer (format "*shell%d*" shell-number))))
- (defun see-chars ()
- "Displays characters typed, terminated by a 3-second timeout."
- (interactive)
- (let ((chars "")
- (inhibit-quit t))
- (message "Enter characters, terminated by 3-second timeout.")
- (while (not (sit-for 3))
- (setq chars (concat chars (list (read-char)))
- quit-flag nil)) ; quit-flag maybe set by C-g
- (message "Characters entered: %s" (key-description chars))))
- (defun shell-numbered ()
- "Create a new shell named, *shell1*, *shell2*, *shell3*, ....
- Numbers are reused as they become available."
- (interactive)
- (let ((shell-number 1))
- (while (get-buffer (format "*shell%d*" shell-number))
- (setq shell-number (1+ shell-number)))
- (shell)
- (rename-buffer (format "*shell%d*" shell-number))))
-