On 07/09/12 23:14, Charles Stevenson wrote: > True about not needing it on PI. But PI could have handled Q-pointers > exactly how UV does today, if they had wanted to. > Personally, I like having 1 F-Pointer and every other pointer a > Q-pointer. Slightly less efficeint, but IMO more manageable. > REPLACE and INSERT functions also allowed (still allow) a syntax mixing > commas & a semi-colon. Ugh. > HOW could PI have managed it like UV? At least, not without changing the behaviour of PI?
iirc, UV originally ran on Unix. Which has suid programs. You create a PI account by running the INFO command in an os-level directory, and there is (a) no central place for storing a list of accounts, and (b) no way of guaranteeing that anybody creating an account has write access to update that list. (I think PI added a central repository of certain information, but as far as I am aware it was ALWAYS like what I see as one of the fundamental tenets of Pick - the description is optional and not definitive by default - not much use if it NEEDS to be there.) That's why I said adding Q-pointer functionality would have required a change in behaviour - as implemented there is no way for PI to read the account name and find out what account it is. Cheers, Wol > > On 9/7/2012 10:54 AM, Wols Lists wrote: >> On 07/09/12 03:19, Charles Stevenson wrote: >>> A newbie stumped me: Why are "Q-Pointers" "Q" pointers ? >>> >>> The "Q" lingo comes from the dawning days of Pick. >>> Why was the letter "Q" chosen? >>> >>> "A"ttribute makes sense. >>> "S"ynonym makes sense. >>> "PQ" for Prestored Query makes sense. PR for Proc would have been >>> better. >>> >>> D3 User Guide just says, >>> "Q-pointers are used in account master dictionaries to point to >>> other files." >>> UV User Ref says, >>> "Q-pointers are file definition synonyms that point to files in >>> local and remote UniVerse accounts." >>> Jonathon Sisk's "Pick Pocket Guide" doesn't help, either. >>> PI never had Q-pointers. Clif, did Devcom consider it "Q"uestionable? >> Seeing as INFORMATION never had any use for q-pointers, I guess that's >> why it never had them. Bear in mind, all PI FILEs were referenced by a >> file pointer in the VOC where f2 was the data portion os-level filename >> and f3 was the dict portion, why would it need a q-pointer? >> >> And I've just remembered another reason - PI doesn't have an MD of any >> sort. Given that f2 of a q-pointer is an account, how would PI find the >> FILE? PI doesn't have the concept of account in the same way as Pick - >> an account was an os-level directory and there was no master list. >> >> So I guess q-pointers didn't exist because (a) they weren't needed and >> (b) they would have needed a MAJOR changed in behaviour to implement >> them (it could have been done easy enough, but it didn't fit the >> philosophy, and I've always admired PI because of the very clean >> philosophy). >> >> Cheers, >> Wol _______________________________________________ U2-Users mailing list [email protected] http://listserver.u2ug.org/mailman/listinfo/u2-users
