Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > comp.lang.c > #168554
| From | Ben Bacarisse <ben.usenet@bsb.me.uk> |
|---|---|
| Newsgroups | comp.lang.c |
| Subject | Re: typedef in old C |
| Date | 2022-12-15 02:46 +0000 |
| Organization | A noiseless patient Spider |
| Message-ID | <877cyt1j0d.fsf@bsb.me.uk> (permalink) |
| References | <tn9vlg$5ra$1@gioia.aioe.org> <90baa9f2-501f-4354-bff1-85824e1c0c60n@googlegroups.com> <87o7s51z3a.fsf@bsb.me.uk> <tndg39$2sbaf$2@dont-email.me> |
"Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> writes: > On 12/14/2022 12:59 PM, Ben Bacarisse wrote: >> luser droog <luser.droog@gmail.com> writes: >> >>> On Tuesday, December 13, 2022 at 7:45:34 AM UTC-6, Bart wrote: >>>> I was looking at the 1983 C sources of PostScript (via >>>> https://computerhistory.org/blog/postscript-a-digital-printing-press/). >>>> >>>> It uses typedef like this: >>>> >>>> typedef long int integer; >>>> typedef unsigned integer Offset; >>>> >>>> That is, being able to apply 'unsigned' to a typedef-ed name, rather >>>> than any of 'char short int long'. >>>> >>>> I guess this is not legal C now; I just wondered at what point it >>>> stopped being legal, if it ever was (perhaps compilers were just more lax). >>> >>> Overall it seems to be "cutting edge" C for the time AFAICT. >>> New types are used all over to convey semantic information >>> about the variable that also makes the selection of the concrete >>> type very DRY. >>> >>> Very surprising to me is the use of linked lists for the basic stacks. >>> Since the original application in the Apple Laserwriter was very >>> memory constrained, it's surprising that they spent the size of an >>> extra pointer on every stack element. Even unused elements have >>> this pointer, being linked together on their own per stack free list. >>> >>> OTOH this would make it easy to initialize the stacks to use whatever >>> odd space was available after making big contiguous memory areas >>> for other stuff. You just carve up little (next pointer, object} nodes from >>> the desired memory and link them together into the free list. >> >> That's the key. It's simple. >> About that time I visited a research lab developing cutting edge >> distributed systems. Around the lab the team had pinned a huge banner >> bearing the words "MEMORY IS CHEAP". When I asked about this (because >> memory was /not/ cheap or plentiful in most systems at the time) I was >> told that, because it /will/ be cheap and plentiful, cutting edge >> software should not waste time solving a problem that will vanish by >> release 2.0 (or in some cases even by the first release). >> >>> So maybe the memory contraints encouraged this choice even though >>> it appears surprising that the famous "stack based language" does not >>> in fact use "stacks" per se. >> >> What then, to your mind, is a stack? > > LIFO. Sure, but since you didn't dispute that the linked list used by this C code is a stack "per se", there was really no need to confirm your position. -- Ben.
Back to comp.lang.c | Previous | Next — Previous in thread | Next in thread | Find similar | Unroll thread
typedef in old C Bart <bc@freeuk.com> - 2022-12-13 13:45 +0000
Re: typedef in old C Thiago Adams <thiago.adams@gmail.com> - 2022-12-13 06:42 -0800
Re: typedef in old C Thiago Adams <thiago.adams@gmail.com> - 2022-12-13 06:46 -0800
Re: typedef in old C Bart <bc@freeuk.com> - 2022-12-13 15:56 +0000
Re: typedef in old C Kaz Kylheku <864-117-4973@kylheku.com> - 2022-12-13 18:07 +0000
Re: typedef in old C Thiago Adams <thiago.adams@gmail.com> - 2022-12-13 11:11 -0800
Re: typedef in old C Ben Bacarisse <ben.usenet@bsb.me.uk> - 2022-12-13 16:40 +0000
Re: typedef in old C scott@slp53.sl.home (Scott Lurndal) - 2022-12-13 17:05 +0000
Re: typedef in old C Keith Thompson <Keith.S.Thompson+u@gmail.com> - 2022-12-13 10:27 -0800
Re: typedef in old C Tim Rentsch <tr.17687@z991.linuxsc.com> - 2022-12-18 17:25 -0800
Re: typedef in old C Keith Thompson <Keith.S.Thompson+u@gmail.com> - 2022-12-13 10:30 -0800
Re: typedef in old C luser droog <luser.droog@gmail.com> - 2022-12-14 09:42 -0800
Re: typedef in old C Ben Bacarisse <ben.usenet@bsb.me.uk> - 2022-12-14 20:59 +0000
Re: typedef in old C "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2022-12-14 13:44 -0800
Re: typedef in old C Ben Bacarisse <ben.usenet@bsb.me.uk> - 2022-12-15 02:46 +0000
Re: typedef in old C scott@slp53.sl.home (Scott Lurndal) - 2022-12-15 15:01 +0000
Re: typedef in old C Ben Bacarisse <ben.usenet@bsb.me.uk> - 2022-12-15 17:07 +0000
Re: typedef in old C luser droog <luser.droog@gmail.com> - 2022-12-15 18:34 -0800
Re: typedef in old C Ben Bacarisse <ben.usenet@bsb.me.uk> - 2022-12-16 17:41 +0000
Re: typedef in old C Bonita Montero <Bonita.Montero@gmail.com> - 2022-12-17 07:54 +0100
csiph-web