Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Path: utzoo!watmath!clyde!burl!ulysses!allegra!princeton!caip!seismo!harvard!bu-cs!bzs From: bzs@bu-cs.UUCP (Barry Shein) Newsgroups: net.lang.c Subject: Re: Re: questions from using lint Message-ID: <667@bu-cs.UUCP> Date: Sun, 25-May-86 15:07:48 EDT Article-I.D.: bu-cs.667 Posted: Sun May 25 15:07:48 1986 Date-Received: Tue, 27-May-86 06:33:48 EDT Organization: Boston Univ Comp. Sci. Lines: 31 Re: User wants interactive, interpreted environment for C development I believe the product SAFE/C from Catalytix Corp (Cambridge, MA?) provides this. I have never used it but from what I have read and heard (a friend was one of the developers) that is the basic idea of the product. If someone has used this product I would be interested in your impressions. It is available on a variety of machines and I believe is meant to be portable but the marketing interest would probably have to be there, I dunno, ask em. I think the main problem I would expect from such a product would be the memory model. I suspect that memory management errors (eg. over-running a malloc()'d area) could be hard to detect within the interpreted environment unless carefully and specifically checked for (in which case, what if I *want* to do some sort of overlaying/equivalencing.) The point is (forgive me) that in the interpreted environment things would point around differently than in the final compiled environment. This is one reason why the lack of explicit pointers in LISP is a good thing (I know, most lisps can allow an internals person to do an (addr x), but it is highly disrecommended for several reasons in a program.) I remember speaking about this with my friend when he was developing and, although he agreed that yes indeed, that's a problem, they had some compromise (I forget, maybe something like enabling/disabling intensive checking with lintish /*SCREWMEM*/ statements, or maybe that's just what they were considering at the time, this goes back a coupla-few years.) I believe one of the main goals of the product was to provide extensive run-time checking during development/testing. -Barry Shein, Boston University