The notion of “expectation”

A concept I was thinking of, back when first thinking through the Magnifi* engine, was that of “expectation.”  I’m still finding it useful in my current iteration, and I hope to keep exploring it.

The basic notion is this: In Copycat, where the goal of a run is fixed, the expectation is defined by the actual code.  It’s the fourth letter string in the problem (in abc : abd :: mrrjjj : ?, the ? stands for the expectation) along with the rules used to get there.

In Magnifi*, where the structure of the Workspace is determined by the domain definition (thus not determined by the code in the engine), the expectation is effectively a question mark like the one I used up above.  The expectation is the driving force of a run — it defines what the purpose of a run is.

OK?  So we can see an entire run as consisting of building conceptual structure that will fit into the slot of an expectation in a felicitous way, plus the requirement to “show your work”.  Now consider this: what if I define the specifications of a piece of software in this same way, and set the expectation as the deliverable?  The creative work necessary to derive the conceptual structure to fulfill that expectation should result in, say, a Perl script to the specification I first entered.

That’s where I hope this work is going.  It might take a little while to get there; I’ve been just sitting here thinking about starting for a decade, after all…  Discuss amongst yourselves.

Explore posts in the same categories: Author: Michael Roberts

3 Comments on “The notion of “expectation””

  1. Abhijit Mahabal Says:

    By the name “Magnifi*” are you referring to the hypothetical system that can be targeted at anything? I believe that the name “Magnificat” was used earlier as the next step after Metacat in the Copycat domain, but I may be wrong.

  2. Michael Says:

    Yeah, it was used earlier — by me. There was the Prolegomina to any Future Metacat, and then I figured, Magnificat must be next. I sure remember it that way, but as there are many other people involved, and there may even be documentation, then I’m prepared to be proved wrong and a horrible poseur.

    Yes, Magnifi* + cat = Magnificat. Kind of precious, but I really, really like the notion of separating an engine from the domain definition. We can then imagine Magnifiseq, Magnifinumbo, Magnifispirit, etc.

  3. You have a great idea there. I have an issue with the terms, though.

    I use the term expectation as “top-down, expectation-driven” pressures (stemming from the slipnet). The term I’m using to describe what you’re saying is “incognita”…

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: