Software Development
Blogs and Discussion
developer.*
Books Articles Blogs Subscribe d.* Gear About Home

A Good Review of my Book--Doesn't Give Highest Marks

"Avid reader" Eric Engler gives me three stars at the Amazon site for Build Your Own .Net Language and Compiler but posts a very thoughtful review. As I said in my self-review which kicks off subsequent reviews, I am really not interested in Amazon Reviewer Grab Ass wherein the Amazon reviewer games the system. Instead I prefer reading guys like Eric.

Eric agrees with many that my digressions and cultural references get in the way. I am not certain what I shall do about this. On the one hand I would prefer to live in some sort of science-fiction society in which engineers had broad culture and were less like Edward Teller (the father of the useless and evil fusion bomb whose lack of moral imagination created nuclear terror) and more like Oppenheimer (the father of the slightly more useful, if evil, atomic bomb who tried to humanize a daemonic process and who recalled at Alamogordo a passage from the Upanishads).

On the same hand, my father as a neurosurgeon tended in his medical teaching to derive current praxis from Aristotle and Aquinas. It appears that students from India preferred this while American doctors exhorted my Dad to cut to the chase, by which they meant the rat race, by which they meant, making money.

On the other hand, I have a responsibility to the reader.

Eric likes the way I generate English rules from BNF but then is surprised that I don't generate code. This was because writing a top down parser is an important skill, and it's because I would blow word count budgets if I discussed parser generation.

Eric doesn't like the representation of arrays as collections and feels this may be intrinsically "slow".

I am concerned about a fallacy here. OK, it's elegant to first of all realize that a collection Item can contain among other things a Collection. This makes a Collection in general a tree while raising the danger that at some level in the tree an Item will be set to a reference to a higher level collection.

This is not "invalid" in an absolute sense, although the tree is now a graph. But the traversal has to realize the existence of cycles.

I represent arrays in the book compiler as orthogonal collections which have the property that at any level, all items have the same type and the same number of subelements are their "cousin" entries.

Eric may have preferred the representation of an array as a single vector (of strong type) accessed through a calculation of row and column.

OK, I can see that in my interpreter, the access to an array element requires a traversal down to the lowest level in which I assign each collection item successively to a virtual pointer until I hit "an item which is not a collection" but instead one of my Variable objects.

But I need to be persuaded by numbers that it would be better to use a strongly typed vector. Note that this would involve rejecting the very idea, of representing quickBasic variables as stateful objects.

At this point, the inference is from elegance to slowness and this inference is simply not always valid.

Recent comments

User login

About our advertising.

Atom Feed

developer.* Blogs also has an Atom feed, located at this url.

Click here for more information about Atom.

A Jolt Award Finalist
Software Creativity 2.0
Foreword by Tom DeMarco

Recent Posters

Based on most recent 60 days, sorted by # of posts and name.

Google
Web developer.*

Who's online

There are currently 0 users and 18 guests online.

Syndicate

Syndicate content
All views expressed by authors, bloggers, and commentors are their own and do not necessarily reflect the views of developer.* or its proprietors.
Click to read the Copyright Notice.

All content copyright ©2000-2005 by the individual specified authors (and where not specified, copyright by Read Media, LLC). Reprint or redistribute only with written permission from the author and/or developer.*.

www.developerdotstar.com