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
liberte@m.cs.uiuc.edu (07/30/88)
Here is a repost of our earlier announcement. ------ We have released Leif, a language oriented editor that is based on a recognition paradigm. In a recognition paradigm the programmer enters text and the editor incrementally analyzes this text to determine structure. Many other language oriented editors are based on templates. In these editors, the program is constructed by expanding templates. Template editors prevent the creation of syntax errors by restricting the possible edits. In Leif, the programmer may use all of the text editing commands of a host editor (GNU Emacs) to create a program. The programmer may also use language oriented commands. At any point, the syntax analysis may be consulted to locate syntax errors or display the structure of the program. By using a standard text editor as the front end, Leif offers several benefits. First, there is very little overhead in learning to use Leif. By learning only one new command, the "move to syntax error" command, Leif can be useful. Other commands allow a programmer to see the structure of the program or examine a syntax error. A second benefit is that the user can edit the program as text or as syntax simultaneously. Leif has respectable performance. It uses an incremental parsing algorithm to analyze changes to the text and to maintain a parse tree. If a change is made that affects only a local part of the parse tree, only that part is Analysis does not occur on every key stroke. Instead, Leif allows any number of consecutive changes to be processed as a unit. The programmer may use Leif transparently and request information from the parser when it is needed. Once started, Leif does not require any actions by the programmer for it to follow an editing session. Until a Leif command is activated, the user does not notice any change in the editor. This translates into an efficiency benefit and further enhances the ease of use. A language for Leif is specified as a lexical analyzer and LALR(1) grammar. Standard tools, Lex and Bison (similar to Yacc), are used to process the specification. Once the tables produced by these tools have been converted into an appropriate parse table format, Leif use the tables and edit text in the language. Prototyping the syntax of a language is easy and a designer of a language may specify a language and experiment with it quickly. The language need not be a programming language, but could instead be a specification, design or text processing language as long as a language fits in the lexical analyzer and parser paradigm. Leif is available via anonymous ftp from a.cs.uiuc.edu. The files are located in the subdirectory pub/Leif. Consult the file README.DIST that is in that directory to decide which files to retrieve. Documentation is available in the file leif-doc.tar.Z. (If you are unable to retrieve the files via ftp, please contact us.) Please send Leif related queries to ihnp4!uiucdcs!leif or leif@a.cs.uiuc.edu Bill Smith, Dan LaLiberte, Roy Campbell
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
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