Path: utzoo!attcan!uunet!tut.cis.ohio-state.edu!ucbvax!ANDREW.CMU.EDU!wjh+ From: wjh+@ANDREW.CMU.EDU (Fred Hansen) Newsgroups: comp.soft-sys.andrew Subject: Re: Meta-X package Message-ID: <8agUBDC00VsPACnWBW@andrew.cmu.edu> Date: 28 Jul 90 21:27:43 GMT References: Sender: daemon@ucbvax.BERKELEY.EDU Organization: The Internet Lines: 34 Excerpts from internet.info-andrew: 26-Jul-90 Re: Meta-X package Bill Janssen@parc.xerox. (2270+0) > This middle layer seems to be what ATK is missing. I think if one were > to re-do such a project, having an extension language (Scheme sounds > nice) in mind from the beginning, and implementing part of the > application in the extension language, would be a good idea. Such a layer can be added after the fact, though. Yes, much work is needed to make ATK really accessible from an extension language. Scheme sounds wonderful for hackers, but not so nice for mere mortals. > Ness almost does it right; it can call Class methods as well as procs. > But is has to re-parse the .ch file each time the function is > interpreted (I think), which makes for slow execution. I think the > class compiler should do the parsing and leave the results in another > .dox file, in a form that could be easily loaded by the extension > language. Not only can Ness functions call methods and class procedures, they can also access and set instance variables in objects. The .ch files are parsed only once, the first time they are needed. All subsequent Ness compilations in the same process reuse the .ch reparse already done. Ness compilation could indeed avoid this reparsing if .dox files were generated, though the class compiler does not do as thorough a job of parsing the declarations as does Ness. (Actually, Ness could use the .dog file directly, though then we would pay for loading it.) A problem with access to C from Ness is the mismatch in types. Not all C types and structures are implemented in Ness. Fred Hansen