Path: utzoo!utgpu!news-server.csri.toronto.edu!cs.utexas.edu!swrinde!zaphod.mps.ohio-state.edu!cis.ohio-state.edu!ucbvax!isidev.UUCP!nowlin From: nowlin@isidev.UUCP Newsgroups: comp.lang.icon Subject: Re: ansi routines Message-ID: <9106142244.AA22433@relay2.UU.NET> Date: 14 Jun 91 22:44:26 GMT Sender: daemon@ucbvax.BERKELEY.EDU Distribution: inet Organization: The Internet Lines: 58 > From: Richard L. Goerwitz > > shafto@EOS.ARC.NASA.GOV (Michael Shafto) writes: > > > Yes, and I would be interested in testing your new improved version. > > I wasn't clear enough: My version is expanded (in the sense that the ANSI > interface can be applied to non-ANSI terminals). I'm not sure that it > really constitutes an improvement. Anyway, I haven't had enough requests > to consider posting, so I reiterate the offer of sending them to anyone who > wants to use them. We (ISI) would like to see the expanded ansi routines to compare with the beta version of our Enhanced Character Interface (ECI). This is a character based windowing interface implemented in Icon at the C level. We demonstrated a prototype at the last ICEBOL conference. > It's really a good idea to used generalized I/O for any programs written in > Icon, since Icon runs on so many platforms. These new ANSI routines have > ... > The idea is to have a generalized library of screen functions that DOS > users can blindly use, which take up minimal space, are fairly fast, and > which can be augmented for Unix without having to change a single line of > ... > You know, speaking of screen control, I wrote a set of Icon-based windowing > routines some time ago. They let you open up virtual screens, move them > ... > The reason I didn't post them is quite simple: Although they were fast > enough for most purposes, they ate up way, way too much memory. > ... > I guess I wish that Icon had some sort of explicit pointer data type. ISI's Icon for 386 UNIX will provide an interesting interface to the standard curses/eti (Extended Terminal Interface) functionality introduced to UNIX with SVR3.2. We think many programs can benefit from a screen oriented user interface so we came up with ECI. It has the ability to open multiple "text", "menu", or "form" windows. Window borders, titles, sizes, etc. all have defaults but can be explicitly specified by the user. Everything happens at the C level so it's fast and pointers aren't needed. Programming with ECI is done at the appropriate level in Icon. For example, the code to create a menu looks something like this: choices := ["bank","savings and loan","mattress"] smenu := wcreate("menu","Choose a Savings Plan",choices) choice := post_menu(smenu) # displays the menu window and # returns the user's choice unpost_menu(smenu) # erases the menu We're interested in feedback on whether this functionality should be made a standard part of our Icon or an add-on. The reason for making it an add-on is because all this doesn't come for free. The size of iconx at least doubles. Any and all comments are appreciated. Thanks. --- --- | S | Iconic Software, Inc. - Jerry Nowlin - uunet!isidev!nowlin --- ---