Hello, all. I am trying to gather examples of non-traditional visual
presentation of lisp and scheme code. Examples from both typesetting and
interactive editing would interest me.
I am *NOT* interested in the significant-whitespace style of Python and
Haskell, nor in any other changes to the underlying language syntax.
Rather, I am interested in the presentation layer: things like
two-dimensional layout, variable-width fonts, tabular layout of let
bindings, unusual notation to replace lambda, "super" right-paren,
conventions for identifier fontification, special markings for variable
scope, etc.
I am not especially interested in heuristic pretty-printing or structure
editors, though the presentation layer of those systems could have some
relevant ideas.
Thank you very much for the pointers.
--Steve
From: Vis Mike
Subject: Re: examples of non-traditional source code presentation?
Date:
Message-ID: <bnmhpp$l8t$1@bob.news.rcn.net>
Seems interesting:
http://citeseer.nj.nec.com/cache/papers/cs/26993/http:zSzzSzwww.dgp.toronto.
eduzSzpeoplezSzRMBzSzpaperszSzp7.pdf/representing-programs-through-algorithm
.pdf
found with google "source code presentation"
-- Mike
Stephen McCracken wrote:
> Hello, all. I am trying to gather examples of non-traditional visual
> presentation of lisp and scheme code. Examples from both typesetting and
> interactive editing would interest me.
<http://www.drscheme.org/tour/tour-Z-H-13.html>
<http://www.drscheme.org/tour/tour-Z-H-5.html#node_chap_4>
?
--
Jens Axel S�gaard
Stephen McCracken <··········@bestmail.us> writes:
> Rather, I am interested in the presentation layer: things like
> two-dimensional layout, variable-width fonts, tabular layout of let
> bindings, unusual notation to replace lambda, "super" right-paren,
> conventions for identifier fontification, special markings for variable
> scope, etc.
Not that unusal, but:
<http://www.emacswiki.org/cgi-bin/wiki/PrettyLambda>
<http://www.emacswiki.org/cgi-bin/wiki/UnParenMode>
<http://www.emacswiki.org/cgi-bin/wiki/DimParentheses>
HM> <http://www.emacswiki.org/cgi-bin/wiki/PrettyLambda>
a2ps will also do that if you ask it nicely.
Juliusz
From: james anderson
Subject: Re: examples of non-traditional source code presentation?
Date:
Message-ID: <3F9EB39B.5A8D941C@setf.de>
there are several files in "fred (editor) utilities" folder on the older mcl
erlease cds which attend to source-code presentation issues.
you may need to work a bit to track it down, as digitool does not keep the
contributions online at the moment.
...
Stephen McCracken wrote:
>
> Hello, all. I am trying to gather examples of non-traditional visual
> presentation of lisp and scheme code. Examples from both typesetting and
> interactive editing would interest me.
>
> I am *NOT* interested in the significant-whitespace style of Python and
> Haskell, nor in any other changes to the underlying language syntax.
>
> Rather, I am interested in the presentation layer: things like
> two-dimensional layout, variable-width fonts, tabular layout of let
> bindings, unusual notation to replace lambda, "super" right-paren,
> conventions for identifier fontification, special markings for variable
> scope, etc.
>
> I am not especially interested in heuristic pretty-printing or structure
> editors, though the presentation layer of those systems could have some
> relevant ideas.
>
> Thank you very much for the pointers.
>
> --Steve
From: Russell Wallace
Subject: Re: examples of non-traditional source code presentation?
Date:
Message-ID: <3f9f14dd.57087911@news.eircom.net>
On Tue, 28 Oct 2003 11:55:59 -0700, Stephen McCracken
<··········@bestmail.us> wrote:
>Rather, I am interested in the presentation layer: things like
>two-dimensional layout, variable-width fonts, tabular layout of let
>bindings, unusual notation to replace lambda, "super" right-paren,
>conventions for identifier fontification, special markings for variable
>scope, etc.
UltraEdit can use a variable width font, and will also do syntax
coloring on Lisp code if you ask it nicely enough.
>I am not especially interested in heuristic pretty-printing or structure
>editors, though the presentation layer of those systems could have some
>relevant ideas.
I ended up writing my own pretty-printer as a separate command line
program.
--
"Sore wa himitsu desu."
To reply by email, remove
the small snack from address.
http://www.esatclear.ie/~rwallace
Stephen McCracken wrote:
> Hello, all. I am trying to gather examples of non-traditional visual
> presentation of lisp and scheme code. Examples from both typesetting and
> interactive editing would interest me.
My YTools macro package (available at http://clocc.sourceforge.net/,
with a 40-page manual!), contains the let-fun macro, which augments the
often obscure 'labels' construct in two ways: it allows an optional :def
keyword to signal the beginning of a definition, and it allows some or
all of the local-function definitions to come at the end. So you can write
(labels ((foo....)
(baz ...))
---body---)
as
(let-fun ()
---body---
:where
(:def foo ...)
(:def baz ...))
My 'repeat' super-duper-looper macro allows local :where definitions also.
I recommend that for large function definitions in which :where
definitions happen to come at the very end, one violate the usual
indentation rules (normally sacrosanct) and write
(defun big-fcn (...)
(let-fun ()
---body---
:where
(:def foo ...)
(:def baz ...)))
That is, pull those local-function definitions back out to (almost) the
left margin. I find that this enhances readability and encourages you
to make many more functions local, which is semantically clearer and
often easier for the compiler to manage.
-- Drew McDermott
Yale CS Department
In comp.lang.scheme Stephen McCracken <··········@bestmail.us> wrote:
> Hello, all. I am trying to gather examples of non-traditional visual
> presentation of lisp and scheme code. Examples from both typesetting and
> interactive editing would interest me.
...
> Rather, I am interested in the presentation layer: things like
> two-dimensional layout, variable-width fonts, tabular layout of let
> bindings, unusual notation to replace lambda, "super" right-paren,
> conventions for identifier fontification, special markings for variable
> scope, etc.
l2t (formerly LiSP2TeX) is an example, with a specially non-
conventional representation: denotational semantics.
http://www-spi.lip6.fr/~queinnec/WWW/LiSP2TeX.html
--
Laurent Bloch
Don't miss Dorai Sitaram's SLaTeX, a formatter and embedded interpreter
for Scheme in LaTeX:
http://www.ccs.neu.edu/home/dorai/slatex/
Dave
In <························@bestmail.us> Stephen McCracken wrote:
>
> Hello, all. I am trying to gather examples of non-traditional visual
> presentation of lisp and scheme code. Examples from both typesetting
> and interactive editing would interest me.
>
> I am *NOT* interested in the significant-whitespace style of Python
> and Haskell, nor in any other changes to the underlying language
> syntax.
>
> Rather, I am interested in the presentation layer: things like
> two-dimensional layout, variable-width fonts, tabular layout of let
> bindings, unusual notation to replace lambda, "super" right-paren,
> conventions for identifier fontification, special markings for
> variable scope, etc.
>
> I am not especially interested in heuristic pretty-printing or
> structure editors, though the presentation layer of those systems
> could have some relevant ideas.
>
> Thank you very much for the pointers.
>
> --Steve
>
>
From: Marc Battyani
Subject: Re: examples of non-traditional source code presentation?
Date:
Message-ID: <bo5r5u$n19@library1.airnews.net>
"Stephen McCracken" <··········@bestmail.us> wrote
> Hello, all. I am trying to gather examples of non-traditional visual
> presentation of lisp and scheme code. Examples from both typesetting and
> interactive editing would interest me.
>
> I am *NOT* interested in the significant-whitespace style of Python and
> Haskell, nor in any other changes to the underlying language syntax.
>
> Rather, I am interested in the presentation layer: things like
> two-dimensional layout, variable-width fonts, tabular layout of let
> bindings, unusual notation to replace lambda, "super" right-paren,
> conventions for identifier fontification, special markings for variable
> scope, etc.
>
> I am not especially interested in heuristic pretty-printing or structure
> editors, though the presentation layer of those systems could have some
> relevant ideas.
Are you interested in just looking at such presentation or do you want to
write a presentation system ?
If you want to write it, you could be interested by cl-typesetting a
typesetting system written in Common Lisp above cl-pdf (a 100% Common Lisp
library for generating PDF files)
Marc
(BTW I'm still looking for contributors for cl-pdf
(www.fractalconcept.com/asp/cl-pdf.html) and cl-typesetting
(www.fractalconcept.com/ex.pdf))