The nice thing about Pol Pot is that despite the fact that he decided to empty the cities of Cambodia in a totally stupid way, there haven't been enough movies made about his stupidity to program the populace into knee-jerk bigotry against reasonable ways of emptying the cities.
This is true not simply because of weapons of mass destruction and their proliferation -- but because of pandemics such as AIDS.
Packet switching protocols, such as IP, were originally developed to allow decentralization of critical communication infrastructure during the cold war. It's just incredibly stupid to not only continue to shove people into cities but to make a vision of the future based on "cities without borders".
Congrats to St. Louis, Diamandis and Ansaris
on
X-prize Award paid
·
· Score: 5, Insightful
The folks who made this prize award real, the folks at the St. Louis Science Center, the leadership of St. Louis, Peter Diamandis and the Ansaris are real heroes in this. They deserve as much recognition as Rutan's team.
Back in 1992 I developed some legislation for prize awards that one of the founders of the fusion energy program picked up on. It is relevant here because its goal is a very advanced form of fusion, adaptable to propulsion, that could make opening up the inner solar system for settlement, as well as industrialization, happen a lot faster.
One of the keys to transportation economy is the time value of money -- and that translates into velocity.
For example, one of the fallacies of asteroidal mining proponents is that you can afford to bring the stuff back to earth. The problem is the round-trip times start killing you due to interest costs on the capital equipment.
If you had nuclear rather than chemical propulsion that helps, but you still have problems with the shear mass of fission systems.
What you ideally want is aneutronic fusion of light atomic nuclei in a device that has a very high specific power. The worst you have to do is provide gamma ray shielding and you may actually be able to do round-trips to the asteroid belt in weeks.
(4) "scientific research" means activities that discover knowledge about natural phenomena, which, under existing statute, cannot be held as intellectual property via patent;
(5) "scientific knowledge" means knowledge acquired or discovered through scientific research;
(6) "development" means the acquisition of knowledge or reduction to practice of an invention which does not exist in nature and which has some practical value or which has value as intellectual property under patent law or other statutes;
(7) "engineering break-even" means the production, by a fusion energy device, of a fusion burn which consumes at least 5% of the confined fusion fuel and which produces at least twice the energy consumed by the fusion energy device during the burn;
(8) "commercial break-even" means the self-sustaining operation of a fusion energy device by feeding its power output back to its power input without the need for any outside input except its fuel;
(9) "commonly available" is any fuel whose dollar (1991) per ounce commercial price multiplied by the number of tons of plant and equipment required to burn it per million watts sustained power production is a quantity less than 10,000 dollar-tons per megawatt-ounce;
(10) "energetically aneutronic" means any fuel which, when burned in a fusion energy system, produces neutron radiation carrying away less than 10% of the produced energy;
(11) "environmentally aneutronic" means any fuel which, when burned in a fusion energy system, produces neutron radiation carrying away less than 1% of the produced energy;
...etc...
(6) The first Commercial Fusion Enterprise to demonstrate engineering break-even shall receive a $100,000,000 prize from the Fusion Energy Trust Fund, which is hereby established, and whose contents are to be invested in 30 year Treasury instruments and whose disbursements are to be administered by the National Academy of Engineering.
(7) The first Commercial Fusion Enterprise to demonstrate engineering break-even using an cycle burning an energetically aneutronic fuel shall receive a $100,000,000 prize from the fusion Energy Trust Fund.
(8) The first Commercial Fusion Enterprise to demonstrate engineering break-even using an cycle burning an environmentally aneutronic fuel shall receive a $100,000,000 prize from the fusion Energy Trust Fund.
There must be a libertarian State, as many wish New Hampshire to become.
There must be a fundamentalist Christian state, as many wish South Carolina (the State with the highest per capita African American population) to become.
There must be a panmixia state, as New York is becoming.
There must be ethnostates, as Europe and the Amerindian reservations could still support.
There must be an east-west hybrid state as parts of Hawaii are becoming (with some islands reserved for indigenous Hawians).
There must be a politically correct state as California has become.
There must be a frontier -- as the ocean deserts and space could be if interference with claims were prevented.
And even these aren't enough.
The problem is that all of these things represent true diversity which is the enemy of all those who claim to support diversity.
The fundamental conflict is between democracy as dispute processing and migration as dispute processing. Migration is superior, so long as eminent domain compensation applies, for the simple reason that it allows self determination for all value systems -- not just value systems that can produce the most invasive voters world wide.
Now is your opportunity to reflect on the importance of a smaller central government and a less uniformity among the States. Think of how nice it would be to be able to move to a State that didn't have all these Federal mandates coming at it from guys like Bush and his supporters. You, in all likelihood, are a liberal. Remember, this uniformity among the States started with your interference in local governance.
To Bush supporters:
Every exercise of power by your leader(s) in Washington D.C. is an opportunity for greater imposition of socialist tyrrany in the future. You will have to leave the country or fight because there won't be any State within the United States that can protect your rights.
The Red Sox curse is broken and the Redskins lose to the team from one of the two swing states needed to win the election.
How much money did these guy spend on the campaigns? How much money does it cost to fix baseball games these days?
Yeah I can believe the psychological impact on the electorate alone would be enough to swing the election to Kerry.
So now the question is, how does Kerry get all those cynical young guys to join the military to go off to the middle east and fight for USrael? Its not like they have fresh-off-the-farm guys like my father to volunteer for overseas conflicts anymore. Most of the GI generation's boomer children got economically sterilized so there isn't a pool of naive dutiful kids to sucker with Disney animations of pompous Muslim clerics goose stepping around.
They'll have to do something really dramatic to get them excited about fighting for "their country".
I am tempted to try to join the cyber1.org system, but not now when it is obviously slashdotted or will soon be:)
It probably shouldn't be slashdotted yet. The system still has some bugs and the purpose is mainly a reunion of some of the PLATO community. There will probably have to be a second system set up for the outside world.
Wrong. You need to add your operators to your rules.
The point I believe Etter is making is about the appropriate phrasing and location of those rules. He's attempting to deal with the notion of "thing" or ontology and how it relates to physics, which, I think, is quite important to the foundation of any attempt to model computation.
Level 1 is the science of pure predication and proof. One of the great
achievements of modern times is to have put this science into a form whose principles are
as self-evident as 2+2 = 4. This happened in the latter part of the Nineteenth Century,
and the people responsible, or at least those whose names we know, had modest aims,
mostly having to do with fixing the serious bugs in the Aristotelian logic still taught in
the schools of their time. What emerged, however, was a totally new branch of
mathematics. This has come to be called the predicate calculus, and it has nailed down
once and for all what is meant by logical proof. In essence, the predicate calculus is the
grammar of the words AND, OR, NOT, SOME and ALL. What makes it so important is
how deeply these rules are embedded in all of human thought. If you believe they are
wrong, and you want to convince the rest of us to change them, you had better have
awfully good reasons, for to do so would be like convincing us that 2+2 = 5.
The second level goes beyond those rules that govern predication in general to
introduce a particular predicate, the equality predicate x=y. The axioms for equality are
normally presented as belonging to logic, and Quine2 has argued very cogently that this is
proper. Even if we agree with him, though, we must be clear that the equality axioms are
independent of the axioms of "pure" logic at level 1. Level 2 thus has room for changes
that don't bear on the rules for AND.
The third level, and here I am referring to what is found in most logic textbooks,
is set theory. Quine3 argues, and again very cogently, that set theory does not really
belong to logic, and here I agree with him. Though there have been various attempts to
create a quantum set theory, I don't see how changes on level 3 can be fundamental
enough to come to grips with complementarity.
This brings us back to level 2. What I am proposing is that we should found level
2 on a three-place predicate that I call sameness, rather than on the two place equality
predicate x=y. My notation for this predicate is y(x=z), read "x is the same y as z".
Examples: "2+2 is the same number as 2*2", "Mary is the same woman as Mrs. Smith",
"Bill is the same man he was ten years ago", "The morning star is the same planet as the
evening star", "Your car is the same color as mine" etc. The axioms of sameness are
very simple:
Axiom 1. y(x=x)
Axiom 2. If y(x=z) then y(z=x)
Axiom 3. If y(x=z) and y(z=w) then y(x=w)
Logical analysis has shown that the sameness predicate has some remarkable
properties. For instance, it can be "morphed" into any other predicate by applying
suitable axioms; it's the Morpheus of predicates, so-to-speak. Another remarkable fact is
that any axiom system can be translated into an axiom system in which sameness is the
only predicate. All of this is beyond the scope of the present paper, however; the point
here is to see how sameness handles complementarity.
Suppose we are given q and p such that q(x=z) means that x has the same position
as z and p(x=z) means they have the same momentum. Now if we can measure position,
then we can tell whether x has the same position as z, and similarly if we can measure
momentum, we can tell whether x has the same momentum as z. Therefore if we can
simultaneously measure both position AND momentum, we can tell whether x has the
same position AND the same momentum as z. Thus the question arises as to whether this
compound of two samenesses comes under the a
Actually, a real 3d rendered multiplayer 3d first person shooter game, as opposed to a pseudo 3d, 2d first person shooter game, existed in multiplayer mode in March of 1974. It was only 32 players but it was nation-wide. It was called spasim.
Rumor has it that it is being restored for Internet play on cyber1 as "0spasim". At least I've given them permission to restore the backup of 0spasim to that system, which is an emulation of the PLATO system upon a CDC Cyber 6400 emulation of one of Seymour Cray's original machines.
I'd appreciate your thoughts on the following, as I think it may provide a better way to approach modeling computer systems:
Quine, in his essay "The Scope of Logic" says the identity predicate
x=y is inherent in the very idea of predicates.
Given the predicate P(x1,x2,x3,...xN), a "Quine identity" P(A=B)
is the conjunction:
For all x2,x3,...xN ( P( A,x2,x3,...xN) iff P( B,x2,x3...xN) &
For all x1, x3,...xN ( P(x1, A,x3,...xN) iff P(x1, B,x3...xN) &
For all x1,x2,...xN ( P(x1,x2, A,...xN) iff P(x1,x2, B...xN) & ...
For all x1,x2,x3,... ( P(x1,x2,x3,... A ) iff P(x1,x2,x3... B )
Tom Etter (yes, the author of Racter) posits three predicates about which nothing is presumed except that
they are Quine identities:
Row(x=y)
Column(x=y)
Value(x=y)
Mathematics is now expressible with no further primitives.
It is simply a matter of how eager the evaluation is, but the table can be generated prior to execution if the predicates are known at compile time. If you dislike how efficient the tabling mechanism is in, say, XSB prolog, then you always have the option of building an optimizer for a particular machine.
The only logic applied to the failure case is that which the programmer codes.
Indeed, failure cases can be thought of as default behaviors. You might have multiple options for default behaviors -- and the question is what priority you give these defaults.
You are also missing the core premise of systems coding - to be close to the hardware, which necessarily precludes prolog.
Programming close to the hardware merely means you are modeling the hardware and that model, rather than being compiled into code, is physically realized by hardware. Model theory is exactly what you need and predicate calculus is the way most mathematics express models.
Now how about "getting back to us" with your identity so we can see how credible your "postive" ad hominem is. Comparing resumes and all that so we can call each other "positive" things like "insane" and give each other "advice" like "get out of the house more often". And, no, I'm not asking for yet another anonymous response -- this time of your supposed "resume" san identity. You set the ground rules for considering the source of an argumet so follow them.
As far as my priorities on implementing an OS based on the predicate calculus criteria I set forth -- I'll "get back to you" after I've handled a lot of very much more important issues. I'm 50 years of age with a lot of responsibilities. If I give advice and refuse to take it from some anonymous coward who thinks he's qualified to diagnose sanity and judge the merit of scientific arguments that are too threatening to his world view to consider them without reacting against their source, then so be it.
If I do happen to break free of more pressing matters and can afford the time to spend doing this sort of system, you should not, in your anonymous narcisism, convince yourself that your "advice" contributed to the completion.
If you want to optimize exception handling then choose an exception-based execution model. Most people -- particularly Perl programmers -- are familiar with the short-circuit "or" and short-circuit "and" style of programming. "and" binds more tightly than "or" so that a sequence of "and" looks like a normal execution thread with no exceptions, whereas a sequence of "or" looks like a cascade of exception handlers (if all the prior expressions in the "or" sequence fail then you take the next one as an exception handler).
When I say "thread" above I'm not just throwing around an ad hoc term -- you can use this to provide the basis for parallel execution in an OS or language.
There is an entire school of thought built around this idea called logic programming and it is based on the most widely used foundation for mathematics -- the predicate calculus.
I don't know why people spend so much time and energy optimizing things that are less powerful.
Almost all the Object Oriented stuff people layer on predicates are,
at best, an ad hoc, and poor, means of optimizing execution speed.
Let me explain.
One of the principles of polymorphism is that the same method has the
same abstract meaning regardless of the kind of object. A predicate
considered as a method subsumes such polymorphism by simply trying the
various possible implementations of the method and committing to only
those that succeed. If more than one succeeds then so be it -- that's
the whole idea of relations as opposed to functions.
So, one reason you want all this OO stuff is the inheritance
hierarchies keep you from going through all possible interpretations
of
a given method when the vast majority of them will fail for a given
object.
Another, related, problem is that inheritance provides defaults
without requiring a lot of thinking on the part of the computer. What
I mean by "thinking" here is the sort of thing that is done by
statistical imputation of missing data via algorithms like expectation
maximization (EM) [clusty.com] or multi-relational data mining via inductive logic
programming .
So, the other reason you want all this OO stuff is so you can avoid
mining a background database to provide reasonable defaults for
various aspects of the data.
Some might be concerned that over-riding isn't absolute in such
a system -- that you don't absolutely block, say, more generic methods
when you have more specific ones present, and they're right. You don't
block those methods -- you lower their priority by lowering
the probability of those implementations via the statistical methods of
imputation and/or induction. In a microthreading environment they most
likely won't get
any resources allocated to them before other higher priority
implementations have succeeded. In a single threaded/depth-first
environment they will be down the list of desired alternatives -- but
they won't be discarded until something equivalent to a prolog cut
operation kills them off.
However, and this is the important point, the work that has been
expended toward OO facilities has vastly outstripped the effort that
which has been put toward more parsimonious ways of optimizing
predicate systems.
One of the better predicate calculus systems out there -- more
promising due to its use of tabling to avoid infinite regress on
head-recursive definitions and its optimization of queries using some
fairly general theorems of predicate calculus -- is XSB
. It has an interface to odbc and a direct interface
to Oracle, but it would be better if it had something like a
I'm not saying "we" should have. Perhaps nuclear war would have been preferable to withdrawl becaus at least then Washington, D.C. might have been nuked.
The US government hasn't represented folks like myself for a very long time.
New York Times
reporter James Brooke was recently shocked, shocked
to discover that the Japanese people's famous
fascination with robots and automation stems from their
"xenophobia." [Japan Seeks Robotic Help in
Caring for the Aged
Mar. 5, 2004 NYT ]
The labor-saving device that gave Brookes the willies
was Sanyo's new clamshell-shaped automated bathing
machine. It allows frail people confined to wheelchairs
to roll in dirty and roll out clean and dry.
Shivered Brooke:
"Futuristic images of elderly Japanese going through
rinse and dry cycles in rows of washing machines may
evoke chills."
Yet the machine doesn't seem to give the shivers to its
users. Toshiko Shibahara, an 89-year-old resident of a
Japanese nursing home told Brooke, "You don't get a
chill. You feel always warm." Likewise, Kuni
Kikuchi, an 88-year-old in a wheelchair, noted, "It
automatically washes my body, so I am quite happy about
it. These bubbles are good for the massage effect."
It's easy to imagine other advantages. A roll-in machine
means that attendants don't have to manhandle the
elders' wizened naked bodies into the tub, which must be
a relief to all concerned. Greater automation means
bathing times are less dependent on the staff's work
schedules, which can be a blessing to old people
struggling with incontinence. Finally, as this kind of
technology progresses and becomes cheap enough, the
elderly can stay in their own homes longer before
finally being bundled off to nursing homes.
But the NYT
can't be bothered with what a bunch of old ladies
want, not when it has important brow-furrowing to do
over the dark urges behind the Japanese drive to empower
their elderly. Brookes writes:
"But [these bathing machines] also point to where the
world's most rapidly aging nation is heading. Leaders of
the Philippines and Thailand... suggest a different
route: granting work visas to tens of thousands of
foreign nurses. But that is unlikely in a nation that...
in the last decade has issued about 50,000 work visas a
year... Building on such xenophobia,
Japan's nurses' unions successfully lobbied
lawmakers of the governing Liberal Democratic Party in
late February to block the admission of foreign doctors
and nurses."
My question: doesn't the uniqueness of
Japanese culture add to the diversity of the world?
Oh, excuse me, that's the
wrong kind of diversity. We are supposed
to celebrate the right kind of diversity--the kind where
each country becomes so
diverse in population, its
culture so diluted by immigration, that all
countries are eventually the same.
How silly of me to forget that the ultimate goal of
"diversity" is global uniformity--and monotony.
PARCPlace's Environment Beat It
on
10 Years of OpenStep
·
· Score: 2, Interesting
Just shy of 8 years ago I was involved in a startup that was taking an insurance company paperless. Some developers who had been using NeXT since the first beta release of the black cube were there and decided to run a test of development environments. One was NeXTSTEP and the other was PARCPlace's Smalltalk environment. The test involved the same set of forms presented as paper to the developers, whose job it was to make those forms into computer applications updating a database. One developer useed PARCPlace's Smalltalk environment. The other used NeXTSTEP. PARCPlace's environment beat NeXTSTEP by better than a factor of 2.
From chapter 4, "Arms Races and Manipulation" of "The Extended Phenotype" by Richard Dawkins:
"Several species of ant have no workers of their own. The queens invade nests of other species, dispose of the host queen, and use the host workers to bring up their own reproductive young. The method of disposing of the queen varies. In some species, such as the descriptively named Bothriomyrmex regicidus and B. decapitans, the parasite queen rides about on the back of the host queen and then, in Wilson's (1971) delightful description, 'begins the one act for which she is uniquely specialized: slowly cutting off the head of her victim' (p. 363)."
The first $ contribution to Linux from Portland
on
Linus Interviewed
·
· Score: 3, Informative
The nice thing about Pol Pot is that despite the fact that he decided to empty the cities of Cambodia in a totally stupid way, there haven't been enough movies made about his stupidity to program the populace into knee-jerk bigotry against reasonable ways of emptying the cities.
This is true not simply because of weapons of mass destruction and their proliferation -- but because of pandemics such as AIDS.
Packet switching protocols, such as IP, were originally developed to allow decentralization of critical communication infrastructure during the cold war. It's just incredibly stupid to not only continue to shove people into cities but to make a vision of the future based on "cities without borders".
The folks who made this prize award real, the folks at the St. Louis Science Center, the leadership of St. Louis, Peter Diamandis and the Ansaris are real heroes in this. They deserve as much recognition as Rutan's team.
One of the keys to transportation economy is the time value of money -- and that translates into velocity.
For example, one of the fallacies of asteroidal mining proponents is that you can afford to bring the stuff back to earth. The problem is the round-trip times start killing you due to interest costs on the capital equipment.
If you had nuclear rather than chemical propulsion that helps, but you still have problems with the shear mass of fission systems.
What you ideally want is aneutronic fusion of light atomic nuclei in a device that has a very high specific power. The worst you have to do is provide gamma ray shielding and you may actually be able to do round-trips to the asteroid belt in weeks.
Anyway, here is an excerpt from the relevant legislative language:
There must be a fundamentalist Christian state, as many wish South Carolina (the State with the highest per capita African American population) to become.
There must be a panmixia state, as New York is becoming.
There must be ethnostates, as Europe and the Amerindian reservations could still support.
There must be an east-west hybrid state as parts of Hawaii are becoming (with some islands reserved for indigenous Hawians).
There must be a politically correct state as California has become.
There must be a frontier -- as the ocean deserts and space could be if interference with claims were prevented.
And even these aren't enough.
The problem is that all of these things represent true diversity which is the enemy of all those who claim to support diversity.
The fundamental conflict is between democracy as dispute processing and migration as dispute processing. Migration is superior, so long as eminent domain compensation applies, for the simple reason that it allows self determination for all value systems -- not just value systems that can produce the most invasive voters world wide.
To Bush supporters:
Every exercise of power by your leader(s) in Washington D.C. is an opportunity for greater imposition of socialist tyrrany in the future. You will have to leave the country or fight because there won't be any State within the United States that can protect your rights.
How much money did these guy spend on the campaigns? How much money does it cost to fix baseball games these days?
Yeah I can believe the psychological impact on the electorate alone would be enough to swing the election to Kerry.
So now the question is, how does Kerry get all those cynical young guys to join the military to go off to the middle east and fight for USrael? Its not like they have fresh-off-the-farm guys like my father to volunteer for overseas conflicts anymore. Most of the GI generation's boomer children got economically sterilized so there isn't a pool of naive dutiful kids to sucker with Disney animations of pompous Muslim clerics goose stepping around.
They'll have to do something really dramatic to get them excited about fighting for "their country".
I know! How about killing a school full of children? Yeah, that's the ticket.
It probably shouldn't be slashdotted yet. The system still has some bugs and the purpose is mainly a reunion of some of the PLATO community. There will probably have to be a second system set up for the outside world.
It does not follow, however, that r such that r(x=z) if and only if Epq(x,z).
has the existential quantifier before the 'r' in the original pdf, so I should have transcribed it as:
It does not follow, however, that there exists an r such that r(x=z) if and only if Epq(x,z).
The point I believe Etter is making is about the appropriate phrasing and location of those rules. He's attempting to deal with the notion of "thing" or ontology and how it relates to physics, which, I think, is quite important to the foundation of any attempt to model computation.
From a postscript to another of Etter's papers:
Logic, as currently taught, has three levels.
Level 1 is the science of pure predication and proof. One of the great achievements of modern times is to have put this science into a form whose principles are as self-evident as 2+2 = 4. This happened in the latter part of the Nineteenth Century, and the people responsible, or at least those whose names we know, had modest aims, mostly having to do with fixing the serious bugs in the Aristotelian logic still taught in the schools of their time. What emerged, however, was a totally new branch of mathematics. This has come to be called the predicate calculus, and it has nailed down once and for all what is meant by logical proof. In essence, the predicate calculus is the grammar of the words AND, OR, NOT, SOME and ALL. What makes it so important is how deeply these rules are embedded in all of human thought. If you believe they are wrong, and you want to convince the rest of us to change them, you had better have awfully good reasons, for to do so would be like convincing us that 2+2 = 5.
The second level goes beyond those rules that govern predication in general to introduce a particular predicate, the equality predicate x=y. The axioms for equality are normally presented as belonging to logic, and Quine2 has argued very cogently that this is proper. Even if we agree with him, though, we must be clear that the equality axioms are independent of the axioms of "pure" logic at level 1. Level 2 thus has room for changes that don't bear on the rules for AND.
The third level, and here I am referring to what is found in most logic textbooks, is set theory. Quine3 argues, and again very cogently, that set theory does not really belong to logic, and here I agree with him. Though there have been various attempts to create a quantum set theory, I don't see how changes on level 3 can be fundamental enough to come to grips with complementarity.
This brings us back to level 2. What I am proposing is that we should found level 2 on a three-place predicate that I call sameness, rather than on the two place equality predicate x=y. My notation for this predicate is y(x=z), read "x is the same y as z". Examples: "2+2 is the same number as 2*2", "Mary is the same woman as Mrs. Smith", "Bill is the same man he was ten years ago", "The morning star is the same planet as the evening star", "Your car is the same color as mine" etc. The axioms of sameness are very simple:
Axiom 1. y(x=x)
Axiom 2. If y(x=z) then y(z=x)
Axiom 3. If y(x=z) and y(z=w) then y(x=w)
Logical analysis has shown that the sameness predicate has some remarkable properties. For instance, it can be "morphed" into any other predicate by applying suitable axioms; it's the Morpheus of predicates, so-to-speak. Another remarkable fact is that any axiom system can be translated into an axiom system in which sameness is the only predicate. All of this is beyond the scope of the present paper, however; the point here is to see how sameness handles complementarity.
Suppose we are given q and p such that q(x=z) means that x has the same position as z and p(x=z) means they have the same momentum. Now if we can measure position, then we can tell whether x has the same position as z, and similarly if we can measure momentum, we can tell whether x has the same momentum as z. Therefore if we can simultaneously measure both position AND momentum, we can tell whether x has the same position AND the same momentum as z. Thus the question arises as to whether this compound of two samenesses comes under the a
What do you say about your beard, psycho? That's all we care about. Get back to us when you've had the appropriate amount of psychotherapy.
Silas Warner does deserve limited credit for the first FPS game -- but not for Wolfenstein. See Spsim.
Rumor has it that it is being restored for Internet play on cyber1 as "0spasim". At least I've given them permission to restore the backup of 0spasim to that system, which is an emulation of the PLATO system upon a CDC Cyber 6400 emulation of one of Seymour Cray's original machines.
Quine, in his essay "The Scope of Logic" says the identity predicate x=y is inherent in the very idea of predicates.
Given the predicate P(x1,x2,x3,...xN), a "Quine identity" P(A=B) is the conjunction:
For all x2,x3,...xN ( P( A ,x2,x3,...xN) iff P( B ,x2,x3...xN) & ,x3,...xN) iff P(x1, B ,x3...xN) & ...xN ( P(x1,x2, A ,...xN) iff P(x1,x2, B ...xN) &
...
For all x1, x3,...xN ( P(x1, A
For all x1,x2,
For all x1,x2,x3,... ( P(x1,x2,x3,... A ) iff P(x1,x2,x3... B )
Tom Etter (yes, the author of Racter) posits three predicates about which nothing is presumed except that they are Quine identities:
Row(x=y)
Column(x=y)
Value(x=y)
Mathematics is now expressible with no further primitives.
FOR INSTANCE:
See The Expressive Power of Equality for a proof that three identities are sufficient to express Zermelo-Fraenkl set theory.
If you were to say a computer's instruction set was not a mathematical object, you would hear objections from mathematicians like Alan Turing.
If you were to say a computer's circuitry was not a mathematical object, you would hear objections from mathematicians like George Boole.
It is simply a matter of how eager the evaluation is, but the table can be generated prior to execution if the predicates are known at compile time. If you dislike how efficient the tabling mechanism is in, say, XSB prolog, then you always have the option of building an optimizer for a particular machine.
Indeed, failure cases can be thought of as default behaviors. You might have multiple options for default behaviors -- and the question is what priority you give these defaults.
You are also missing the core premise of systems coding - to be close to the hardware, which necessarily precludes prolog.
Programming close to the hardware merely means you are modeling the hardware and that model, rather than being compiled into code, is physically realized by hardware. Model theory is exactly what you need and predicate calculus is the way most mathematics express models.
As far as my priorities on implementing an OS based on the predicate calculus criteria I set forth -- I'll "get back to you" after I've handled a lot of very much more important issues. I'm 50 years of age with a lot of responsibilities. If I give advice and refuse to take it from some anonymous coward who thinks he's qualified to diagnose sanity and judge the merit of scientific arguments that are too threatening to his world view to consider them without reacting against their source, then so be it.
If I do happen to break free of more pressing matters and can afford the time to spend doing this sort of system, you should not, in your anonymous narcisism, convince yourself that your "advice" contributed to the completion.
When I say "thread" above I'm not just throwing around an ad hoc term -- you can use this to provide the basis for parallel execution in an OS or language.
There is an entire school of thought built around this idea called logic programming and it is based on the most widely used foundation for mathematics -- the predicate calculus.
I don't know why people spend so much time and energy optimizing things that are less powerful.
As for object oriented programming, As I've said before:
Almost all the Object Oriented stuff people layer on predicates are, at best, an ad hoc, and poor, means of optimizing execution speed.
Let me explain.
One of the principles of polymorphism is that the same method has the same abstract meaning regardless of the kind of object. A predicate considered as a method subsumes such polymorphism by simply trying the various possible implementations of the method and committing to only those that succeed. If more than one succeeds then so be it -- that's the whole idea of relations as opposed to functions.
So, one reason you want all this OO stuff is the inheritance hierarchies keep you from going through all possible interpretations of a given method when the vast majority of them will fail for a given object.
Another, related, problem is that inheritance provides defaults without requiring a lot of thinking on the part of the computer. What I mean by "thinking" here is the sort of thing that is done by statistical imputation of missing data via algorithms like expectation maximization (EM) [clusty.com] or multi-relational data mining via inductive logic programming .
So, the other reason you want all this OO stuff is so you can avoid mining a background database to provide reasonable defaults for various aspects of the data.
Some might be concerned that over-riding isn't absolute in such a system -- that you don't absolutely block, say, more generic methods when you have more specific ones present, and they're right. You don't block those methods -- you lower their priority by lowering the probability of those implementations via the statistical methods of imputation and/or induction. In a microthreading environment they most likely won't get any resources allocated to them before other higher priority implementations have succeeded. In a single threaded/depth-first environment they will be down the list of desired alternatives -- but they won't be discarded until something equivalent to a prolog cut operation kills them off.
However, and this is the important point, the work that has been expended toward OO facilities has vastly outstripped the effort that which has been put toward more parsimonious ways of optimizing predicate systems.
One of the better predicate calculus systems out there -- more promising due to its use of tabling to avoid infinite regress on head-recursive definitions and its optimization of queries using some fairly general theorems of predicate calculus -- is XSB . It has an interface to odbc and a direct interface to Oracle, but it would be better if it had something like a
The US government hasn't represented folks like myself for a very long time.
The big difference between that conflict and the present one is a major player other than the US is in the region and has a whole lot of nukes.
Just shy of 8 years ago I was involved in a startup that was taking an insurance company paperless. Some developers who had been using NeXT since the first beta release of the black cube were there and decided to run a test of development environments. One was NeXTSTEP and the other was PARCPlace's Smalltalk environment. The test involved the same set of forms presented as paper to the developers, whose job it was to make those forms into computer applications updating a database. One developer useed PARCPlace's Smalltalk environment. The other used NeXTSTEP. PARCPlace's environment beat NeXTSTEP by better than a factor of 2.
Actually the first monetary contribution ever sent to Linus for Linux was from a guy who now lives near Portland and /. carried an article he wrote recently: The Jobs Crunch.