Something that I have felt is lacking in the world of manuals for i7 is a very bare bones, ‘just the specification and nothing but the specification’ approach. It’s not that there can be no examples, but I prefer them to be kept to a bare minimum and to use my own imagination to fill in the gaps. My ideal i7 manual would explain every grammar structure in only one place, but in the right place, and in as abstract a form as possible. I guess the perfect manual to me is Kernighan and Ritchie’s classic C book. I doubt i7 could be described in as parsimonious a manner, but I think there would be enormous value in the attempt.
Is there already something like this out there, or was it decided by the community early on that such an approach would not be useful for i7?. Ron Newcomb’s guide comes the closest, in the things I’ve skimmed (I have not yet read it thoroughly), but what I am looking for doesn’t really seem to exist. In its absence, I have gone through the official manual several times trying to get at the basic skeleton of the allowed grammars, and I think I’ve made some headway, although it’s nowhere near complete and probably inaccurate in places. But below is a snippet of the sorts of notes that I’ve been making over time, that should give you an idea of the sort of thing I was looking for and didn’t find.
[code]==== AN INCOMPLETE GRAMMAR OF I7 ====
UPPER CASE COMPONENT NAMES are to be substituted with the specification of those components, whereas lowercase letters are to be typed literally, except the indefiniate articles ‘a’ or ‘an’, which are always optional. Other optional components are specified by [square] brackets. Slashes separate phrases that are interchangeable / alternatives / otherwise synonyms.
– basic building blocks –
OBJECT
Kitchen / the rusty knife / a container / Susan / etc.
ADJECTIVE
closed / not openable / edible / male / dark / etc.
ADJECTIVES
ADJECTIVE [ADJECTIVE] [ADJECTIVE] [...]
QUALIFIED-NOUN
[ADJECTIVES] OBJECT [[that is/which is/who is] ADJECTIVES]
– is here –
SUBJECT-LIST is here.
Here is a SUBJECT-LIST.
SUBJECT-LIST
SUBJECT [, SUBJECT] [[,] and SUBJECT] [...]
SUBJECT
[QUALIFIED-NOUN called] OBJECT
– contains, supports, carries, wears –
SUBJECT PREDICATES a QUALIFIED-NOUN-LIST.
PREDICATES
contains / supports / carries / wears
QUALIFIED-NOUN-LIST
QUALIFIED-NOUN [, QUALIFIED-NOUN] [[,] and QUALIFIED-NOUN] [...]
– containing, supporting, carrying, wearing –
SUBJECT is PREDICATING a QUALIFIED-NOUN-LIST.
PREDICATING a QUALIFIED-NOUN-LIST is a SUBJECT.
PREDICATING
containing / supporting / carrying / wearing
– in, contained in/by, on, supported on/by, carried by, worn by –
SUBJECT-LIST is PREDICATED-BY a QUALIFIED-NOUN.
PREDICATED-BY a QUALIFIED-NOUN is a SUBJECT-LIST.
PREDICATED-BY
in / contained in / contained by /
on / supported in / supported by /
carried [by] /
worn [by] /
part of
– is a kind of –
SUBJECT-LIST is a kind of OBJECT.
– is a –
SUBJECT-LIST is a FULLY-QUALIFIED-ADJECTIVE.
SUBJECT-LIST is a FULLY-QUALIFIED-NOUN.
FULLY-QUALIFIED-ADJECTIVE
[ADJECTIVE-LIST] [VERB-PHRASE / PARTICIPLE-PHRASE-LIST]
FULLY-QUALIFIED-NOUN
[ADJECTIVE-LIST] OBJECT [[that is/which is/who is] ADJECTIVE-LIST] [VERB-PHRASE / PARTICIPLE-PHRASE-LIST]
ADJECTIVE-LIST
ADJECTIVE [[,/, and/and/that is/which is/who is] ADJECTIVE] [[,/, and/and/that is/which is/who is] ADJECTIVE] [...]
VERB-PHRASE
that/which/who PREDICATES a QUALIFIED-NOUN
PARTICIPLE-PHRASE-LIST
[,/, and/and/that is/which is/who is] PARTICIPLE-PHRASE [, PARTICIPLE-PHRASE] [[,] and PARTICIPLE-PHRASE] [...]
PARTICIPLE-PHRASE
PREDICATED-BY/PREDICATING a QUALIFIED-NOUN
– has –
SUBJECT-LIST has the PROPERTY VALUE.
PROPERTY-LIST is a VALUE.
PROPERTY-LIST
PROPERTY [, PROPERTY] [[,] and PROPERTY] [...]
PROPERTY
VARIABLE
VARIABLE of OBJECT
VARIABLE
decription / location / player / etc.
VALUE
"It looks ordinary." / 10 / 334 / lamp / sword / etc.
[/code]
And I’ve been building on it as I go. Currently there a lot of things I’ve learned about the grammar that I have not yet folded into this skunkworks ‘spec’. But is this all duplicative work, anyway? I have just been doing it because it suits my brain.
Paul.