Don't hardwire OS features

Alaric B. Williams alaric@abwillms.demon.co.uk
Sun, 15 Dec 1996 12:55:28 +0000


On 15 Dec 96 at 12:28, Francois-Rene Rideau wrote:

> > Depends how you develop, I guess. I'd have my basic operation set
> > worked out, and get that debugged before starting to define things in
> > terms of them.
> We'll see.

That sounds sinister :-)
 
> >> Well, I meant reifying, of course.
> > Yes, but what do you mean by that, no matter the syntax????
> Glad to have you ask that: meaning, not syntax.
> Well, that's basic reflection vocabulary:
> Reifying an object means taking a manipulable representation for it.
> The reverse operation is absorbing a object,
> which means adding a new feature to the system
> by making such object part of it.

Ah, right. I'd call that "extraction", I guess; that refers to the 
operation in Self where an object and all the objects it depends upon 
are located, so they can be transported to another system etc. 

> Typically, you implement system layers
> by reifying objects, (re)writing code,
> and absorb the object back.

Right.

>    For instance, if I want to manipulate a database,
> most of the time I don't care the format in which it is implemented;
> what I care about is being able to manipulate the database at will,
> and be able to exchange data with my partners.
> Hence, I want it to be abstract, not concrete,
> and I *don't want* to reify it;
> but low-level C programming will require me
> to manually manage the format, conversion, etc,
> be it line-oriented ASCII text (yuck), db/dbm/dbz/whatever format,
> or proprietary stuff.
>    But sometimes, I want to manipulate the representation,
> to modify the implementation, so as to optimize it or add features
> (persistency, distribution, specialization, etc).
> These means that I'll have to *reify* the given objects.
> Non-reflective systems (e.g. C) won't allow me to do that,
> unless I work on the reified version from the beginning on,
> without being able to change the way I represent things
> but by a complete rewrite of the code.

I'd be using totally different words for most of this, but I know 
what you mean :-)

> Reflective systems (Scheme and LISP object systems,
> Smalltalk, SELF(?), Dylan(?), and other) do allow reification,
> with their so-called meta-object-protocols.

Right.

> But I want it to be done consistently,
> in a way that I'm sure that if the representation is changed,
> the abstract data is conserved.
> And these systems won't provide the beginning of the shadow
> of any consistency check.
>    That's were Tunes come:
> letting people be free to reify or not.
> But Freedom is not basing one's choice on randomness,
> relying on chance, praying to be lucky;
> Freedom is basing choice on knowledge,
> taking responsibility.
> Being free to reify means
> being able to *know* that your reification is correct or not.

Uhuh.

> > ActiveX controls are Microsoft's idea of a competitor to Java. [...]
> > So, basically, the major flaw with ActiveX is that it thinks that
> > trusting electronic signatures or other such assertions of
> > reliability is a good substitute for transmitting code in analysable
> > form!

> Yeah, with these systems, you are not free to run unsafe code or not,
> you're bound to run *their* code or run no code.

Well, you're welcome to run unsafe code. Just you'd be taking ae 
risk! See, for example, the Exploder OCX - I don't have a URL handy, 
but there was an ActiveX control example that put up a window saying 
"Click here or I'll reboot your machine". It was signed, by the guy 
who wrote it (via VeriSign, an independent RSA certificating 
company). When you clicked on it in a browser, up came a dialog 
asking "Do you trust this guy?"...
 
> > Nicely put!
>
> I admit I didn't invent anything about the State.
> I just draw the (limited, yet powerful) analogy
> between State and the OS Kernel:
> in both case, the ultimate authority
> between parts of a dynamical system.

It's a good analogy.

> [Cut from here to "!!!!!" to avoid political chat]

:-)

> ["!!!!!" -- end of political chat]
> [political followup to private e-mail,
> unless it has computer consequences, as is the case here]

Ok!

ABW
 
--
Governments are merely protection rackets with good images.

Alaric B. Williams Internet : alaric@abwillms.demon.co.uk
http://www.abwillms.demon.co.uk/