Path: utzoo!utgpu!news-server.csri.toronto.edu!clyde.concordia.ca!uunet!snorkelwacker!apple!oliveb!amiga!jimm From: jimm@amiga.UUCP (Jim Mackraz) Newsgroups: comp.sys.amiga.tech Subject: Re: gadgets in 2.0 Keywords: gadgets 2.0 Message-ID: <5692@amiga.UUCP> Date: 7 May 90 18:03:42 GMT References: <1990May6.183020.17956@calgary.uucp> <24783@pasteur.Berkeley.EDU> <1990May7.034352.439@altitude.CAM.ORG> Reply-To: jimm@superman.UUCP (Jim Mackraz) Organization: Commodore-Amiga Inc, Los Gatos CA Lines: 43 (Martin Taillefer) writes: )Tags are very flexible and extensible, which is why they are being used. )It is clear however that this scheme was not meant for languages with decent )type checking. And since I know the guy(s) that thought up tags does not like )type-checked languages, it's no surprise. Hey, I didn't invent them, I stole them. Anyway, it's nice to see you on usenet now, Martin, keeping me honest ... ;^) )From a language such as Modula-2, it is annoying to do tags. Using the )current compilers, you'd need to declare an array of tags and fill them in )before calling the routine. This is very inconvenient. Using array )constructors as described in the forthcming ISO M2 standrad allows these )arrays to be declared inline, in the function call, which effectively )gives you varargs. The alternative is to use structures; declare them and fill them in, plus specify in a version, size, or flags field just which of the continually evolving parameters you are specifying. But for the type checking (and a little space), doing tags via arrays isn't much worse. )The only remaining problem is with type checking. The main reason I chose )M2 was for type checking, the fact that the compiler will catch my mistakes )for me, instead of having the GURU find them. There's also a tremendous )documentation value in fully typed system structures. I don't really )see a solution to this problem, it IS very annoying. Yeah, I think that's the breaks with the languages we use these days. At least now, if you get a Guru, you know it's in your tags code ;^) Some day Mr. Language will be able to associate a tagged data item with its type. Really nice to see you out here. jimm -- -------------------------------------------------- - opinions by me "This voice console is a *must*. I press Execute. `Hello, I know that you've been feeling tired. I bring you love and deeper understanding.' " -lyrics by Kate Bush