Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Posting-Version: version B 2.10.2 9/5/84; site chinet.UUCP Path: utzoo!watmath!clyde!burl!ulysses!mhuxr!mhuxn!ihnp4!chinet!rlk From: rlk@chinet.UUCP (Richard L. Klappal) Newsgroups: net.lang.c Subject: Re: C bites Dog! / project proposal Message-ID: <159@chinet.UUCP> Date: Tue, 27-Aug-85 13:27:52 EDT Article-I.D.: chinet.159 Posted: Tue Aug 27 13:27:52 1985 Date-Received: Wed, 28-Aug-85 10:11:27 EDT References: <872@brl-tgr.ARPA> <2968@sdcc3.UUCP> Reply-To: rlk@chinet.UUCP (Richard L. Klappal) Organization: chinet, Public Access UN*X, Chicago Lines: 43 Keywords: language proposal Summary: In article <2968@sdcc3.UUCP> ee161bep@sdcc3.UUCP (Paul Van de Graaf{|stu) writes: >I'm ready for something beyond C, and I don't mean C++ or Ada. If no one >obliges all just have to do as Jim says and write my own. > >Paul van de Graaf sdcsvax!sdcc3!ee161bep U. C. San Diego I have been feeling similarly. Have been thinking of trying to write something somewhere between C and PL/I. 1) Pointers are pointers, not pointers to .. (Loses pointer arith, has to be array addressing. Use optimization to reduce common subexpressions to get rid of overhead. 2) More complete output format control. column(n) capability (like F77 Tn, or BASIC TAB(n)) 3) string OPERATORS, not function calls. 4) discard ++/-- notation. keep +=, -=, /=, etc 5) then .. else .. end / do .. end / do n=1 to n [by nn] while (..) 6) no assignment in conditionals. means duplicating statements, but less confusion about .. is he assigning, or did he mean ==, and not catch it. 7) switch/case statement (or select ..when) 8) BASED / DEFINED data in stead of unions: (They sill give me a headache.) 10) conversion functions instead of casts. They get too unreadable too fast. 11) exception/condition handling ala PL/I. 12) no ternary operator (cond ? true : false) 13) I/O defined in the language. Not added as an afterthought like Pascal/C/etc. Will support both stream and record I/O. Auto indexing (ISAM?/B-TREE?/??)) avail. These are the general specs off the top of my head, and will probably generate more flames than called for, but I personnaly prefer the clarity of PL/I to the terseness of C.