From owner-freebsd-chat Fri Apr 23 10:52: 9 1999 Delivered-To: freebsd-chat@freebsd.org Received: from smtp04.primenet.com (smtp04.primenet.com [206.165.6.134]) by hub.freebsd.org (Postfix) with ESMTP id E986E1522C for ; Fri, 23 Apr 1999 10:52:03 -0700 (PDT) (envelope-from tlambert@usr02.primenet.com) Received: (from daemon@localhost) by smtp04.primenet.com (8.8.8/8.8.8) id MAA01893; Fri, 23 Apr 1999 12:22:12 -0700 (MST) Received: from usr02.primenet.com(206.165.6.202) via SMTP by smtp04.primenet.com, id smtpd001767; Fri Apr 23 12:22:00 1999 Received: (from tlambert@localhost) by usr02.primenet.com (8.8.5/8.8.5) id KAA23998; Fri, 23 Apr 1999 10:48:56 -0700 (MST) From: Terry Lambert Message-Id: <199904231748.KAA23998@usr02.primenet.com> Subject: Re: Cross Posting... To: asmodai@wxs.nl (Jeroen Ruigrok/Asmodai) Date: Fri, 23 Apr 1999 17:48:56 +0000 (GMT) Cc: wes@softweyr.com, mbendiks@eunet.no, jkh@zippy.cdrom.com, chat@FreeBSD.ORG, grog@lemis.com, illiad@userfriendly.org In-Reply-To: from "Jeroen Ruigrok/Asmodai" at Apr 21, 99 09:10:37 pm X-Mailer: ELM [version 2.4 PL25] MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Sender: owner-freebsd-chat@FreeBSD.ORG Precedence: bulk X-Loop: FreeBSD.org > Wonder what TerryBSD is written in... Must be pure C I reckon? K&R C, with upper case "VOLATILE" and "VOID" #defined based on the compiler compliance level. ANSI C has two problems: 1) Prototypes, which catch errors that could be caught at link time or avoided entirely using appropriate sign extension techniques and/or descriptor based calling, and which were introduced for hiding "near" and "far" in pre-Windows95 source code, which ran in medium model. 2) The "volatile" keyword, which is applied to variables, when it is obvious that any external reference by a function called in a seperate thread of context (e.g. signal handlers) are "volatile", and that any direct hardware manipulation (a compiler should know the system for which it is compiling code) could be table discovered and/or use a "hardware" keyword (alternately, it could use "pointers are volatile" semantics). It has the advantage of being compilable with any C compiler, all the way back to Aztec C for the Kaypro 2 under CP/M. It's much easier to port when part of the porting process is not becoming the maintainer of all the GNU tools for the year and a half after you quit distributing binaries, required by the license. Plus I always hated writing code generators for all the hardware the GNU tools doesn't support. 8-). Terry Lambert terry@lambert.org --- Any opinions in this posting are my own and not those of my present or previous employers. To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-chat" in the body of the message