[comp.editors] Language-based editors

ml@mhres.mh.nl (Marco Luiten) (07/26/88)

I am looking for product information about language-based editors.
The editor I am looking for should support the following functionality:

- It must support more than one computer language, preferably ALL
  structured text.
- It must be available at more than one operating system, preferably
  UNIX, VMS and MS-DOS, or the source should be available.
- It should edit language-elements like statements/-parts instead of
  characters/lines/etc.
- It should be a WYSIWYG-editor.

I only know of one such product: The Synthesizer Generator from the
Cornell University. 

"The synthesizer Generator creates a language-specific editor from an
 input-specification that defines a language's abstract syntax, context
 sensitive relationships,..."

I have two questions:

1. How and where can I order this Synthesizer Generator?
2. Are there any similar products available?

Thanks in advance.
-- 
Marco Luiten

henk@hcsrnd.UUCP (Henk Willems) (07/28/88)

In article <2135@mhres.mh.nl>, ml@mhres.mh.nl (Marco Luiten) writes:
> I am looking for product information about language-based editors.
> The editor I am looking for should support the following functionality:
> 
> - It must support more than one computer language, preferably ALL
>   structured text.
> - It must be available at more than one operating system, preferably
>   UNIX, VMS and MS-DOS, or the source should be available.
> - It should edit language-elements like statements/-parts instead of
>   characters/lines/etc.
> - It should be a WYSIWYG-editor.
> 
> I only know of one such product: The Synthesizer Generator from the
> Cornell University. 
> 
> "The synthesizer Generator creates a language-specific editor from an
>  input-specification that defines a language's abstract syntax, context
>  sensitive relationships,..."
> 
> I have two questions:
> 
> 1. How and where can I order this Synthesizer Generator?
> 2. Are there any similar products available?
> 
> Thanks in advance.
> -- 
> Marco Luiten

The synthesizer generator can be ordered at : 

Liz Maxwell
Synthesizer Generator Distribution

Department of Computer Science
4130 Upson Hall
ITHACA.N.Y 14853-7501
Telephone 607/255-5331
Telex WUI 6713054
Net : maxwell@gvax.cs.cornell.edu

I hope the address is good, a copied it from a bad copied paper.
I do not know similar products.

Yours sincerely

Henk Willems
HCS Industrial Automation BV.
Landrostlaan 51
P.O. Box 20020
Telef: 055-498600
The Netherlands

jsedayao@td2cad.intel.com (Jeff Sedayao ) (07/29/88)

In article <2135@mhres.mh.nl> ml@mhres.mh.nl (Marco Luiten) writes:
>I am looking for product information about language-based editors.
>The editor I am looking for should support the following functionality:
>
>- It must support more than one computer language, preferably ALL
>  structured text.
>- It must be available at more than one operating system, preferably
>  UNIX, VMS and MS-DOS, or the source should be available.
>- It should edit language-elements like statements/-parts instead of
>  characters/lines/etc.
>- It should be a WYSIWYG-editor.
>
>I only know of one such product: The Synthesizer Generator from the
>Cornell University. 

What about emacs?  It has a number of language sensitive modes, and 
you can make up your own modes if you want.  There are also versions 
for MS-DOS, VMS, and UNIX.  I am not sure if the Synthesizer Generator
runs on VMS or MS-DOS.  These are not mentioned in my manual, but 
versions could exist.

>"The synthesizer Generator creates a language-specific editor from an
> input-specification that defines a language's abstract syntax, context
> sensitive relationships,..."

That it does.  The input language is a bit crusty, though, as is some
of its user interface.  What I really like about it is that it allows
the user to put up templates of the language and all you have to do
is fill in the blanks.  The generator comes with specifications already
made for pascal and c.  Source is also included (there's lots of it!).

>I have two questions:
>
>1. How and where can I order this Synthesizer Generator?

Send mail to Liz Maxwell at maxwell@gvax.cs.cornell.edu
She will be able to tell you how to get the editor.

>2. Are there any similar products available?

There is emacs, like I mentioned above.  There is also something called
LEIF which is a tool built on top of emacs.  I am not sure how to get
it.  Also, at UC Berkeley, there is an editor called pan that is
language sensitive.  You can ask Susan Graham graham@renoir.berkeley.edu
about getting it.  Pan is limited to running on suns, though.

>Thanks in advance.
>-- 
>Marco Luiten
-- 
Jeff Sedayao               Disclaimer: My opinions, not those of
Intel Corporation                      my employers
{oliveb,hplabs,decwrl,amdcad,pur-ee,qantel}!intelca!mipos3!td2cad!jsedayao 
jsedayao%td2cad.intel.com@relay.cs.net 

bertrand@hub.ucsb.edu (Bertrand Meyer) (07/31/88)

This is a follow-up to <2135@mhres.mh.nl>, where ml@mhres.mh.nl
(Marco Luiten) writes:

> I am looking for product information about language-based editors.
> 
> (...)
> 
> I only know of one such product: The Synthesizer Generator from the
> Cornell University. 
> 
> 1. How and where can I order this Synthesizer Generator?
> 2. Are there any similar products available?


I believe our Cepage editor fulfils the stated criteria.
This is a commercial product. Cepage is certainly
WYSIWIG (although it works for character-oriented terminals and does not use
graphics or the mouse for the moment).  It supports both structural (menu-driven)
entry and keyboard input (which is parsed). For keyboard-driven input,
a text editor is included.  In this mode, you may skip parsing if you want
to enter temporarily incorrect input; you can come back later on, correct
or complete your entry, and have it parsed then.

An important aspect of the Wysiwig aspect is the presence of a completely
automatic algorithm for document formating (including indentation, adaptation to
the available window space, layout etc.). The algorithm was described in a
rather extensive article by myself, J-M Nerson and Soon-Hae Ko in Science of Computer
Programming, 1985. (Sorry, I don't have the exact issue and page numbers offhand
but they should be easy to find.) The article describes the formatting algorithm
and provides parts of a formal proof.

The most original aspect of Cepage is the ease of adaptation to any language.
Grammars are described in a simple formalism called LDL (Language Description
Language). There is no restriction such as LR (k) or similar. Grammars can
be written quickly and then changed easily, to accommodate local variants or
specific programming or documentation styles. The system comes with pre-written
grammars for Pascal, C, Troff, Lisp, Ada, Fortran. As the Troff example shows,
the applications of Cepage are not restricted to programming languages;
for example you can apply it to standardized technical documentation.

The system is written in the Eiffel object-oriented language and runs wherever
Eiffel runs, which means Unix (Sun, Apollo, Ultrix, HP etc.) and, soon,
VAX-VMS.

Various references have been published on an older version of Cepage, including
the one mentioned above and a paper called ``Cepage: A Software Design Tool''
that I published in Computer Language, September 1986. We have more up-to-date
reports of which I can send copies on request.


Bertrand Meyer
Interactive Software Engineering Inc.
270 Storke Road Suite 7
Goleta, CA 93117 - (805) 685-1006

liberte@m.cs.uiuc.edu (08/02/88)

You can get Leif via ftp from a.cs.uiuc.edu in ~ftp/pub/Leif.
The README.DIST file describes the options.  You need GNU Emacs
version 18.50 or 18.51.

Dan LaLiberte
uiucdcs!liberte
liberte@cs.uiuc.edu
liberte%a.cs.uiuc.edu@uiucvmd.bitnet

oz@yunexus.UUCP (Ozan Yigit) (08/02/88)

In article <2135@mhres.mh.nl> ml@mhres.mh.nl (Marco Luiten) writes:
>I am looking for product information about language-based editors.
>The editor I am looking for should support the following functionality:
> ...
>Marco Luiten

University of Illinois @ Urbana has a language-sensitive and
programmable editor, used to be known as FRED. [I do not know its
recent name] I think it may be available via anon.  ftp from
uiuc.cs.edu. It is wysiwyg, works with partial language grammars,
programmable, and the last time I looked, it did handle C and
Pascal. It allows one to define a grammar for a language one wishes
to edit, and partial grammars allow it to do a reasonable job with
minimal language knowledge. It is in C, and sources are [were]
available.

oz

-- 
Crud that is not paged	        | Usenet: ...!utzoo!yunexus!oz
is still crud. 			| ....!uunet!mnetor!yunexus!oz
	andrew@alice		| Bitnet: oz@[yulibra|yuyetti]
				| Phonet: +1 416 736-5257x3976