From mboxrd@z Thu Jan 1 00:00:00 1970 Message-ID: <6333e0a01e113662f55923372089278a@plan9.bell-labs.com> From: presotto@plan9.bell-labs.com To: 9fans@cse.psu.edu Subject: Re: [9fans] useful language extension, or no? MIME-Version: 1.0 Content-Type: text/plain; charset="US-ASCII" Content-Transfer-Encoding: 7bit Date: Tue, 16 Jul 2002 13:31:01 -0400 Topicbox-Message-UUID: ce0c5eda-eaca-11e9-9e20-41e7f4b1d025 > You're going to have to do better than that. Simply > pulling the 'ole "I'm overly negative and as a result most > people avoid confrontation with me" isn't going to cut it. > The unnamed types and inheritance are indeed syntactic sugar. It did have the useful side effect of reducing typing. If any of you remember BSD, you'ld remember cruft like #define sa_len sa_union.sa_generic.sa_len2 #define sa_family sa_union.sa_generic.sa_family2 #define sa_data sa_union.sa_generic.sa_data2 from /usr/include/sys/socket to avoid typing infinitely long names. The unnamed types saves us a lot more than a few characters here and there. It saves us from such #defines which have a bad habit of getting out of sync with the things they're working around. The added inheritance saves a fair amount, though not all, of the casts and void*'s that we used to live with. These blind conversions are very error prone. I'ld rather the compiler catch my errors than go at it during run time. > > Anyone else have an opinion on this ... specifically the guys/gals > at the labs, since without their consent tool changes doubtfully > become realised? `atend' does have the advantage of catching some mistakes. However, it doesn't really catch any errors that I typically make so I'm less sanguine about changing the language for it. > Including tuples (perhaps as an instance of nameless structs) would > simplify many interfaces, right? that's one thing I learned using > Limbo. This I wouldn't mind seeing. I really miss limbo tuples. Of course, I miss garbage collection too.