Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Posting-Version: version B 2.10.1 6/24/83; site pucc-i Path: utzoo!watmath!clyde!cbosgd!ihnp4!inuxc!pur-ee!CS-Mordred!Pucc-H:Pucc-I:ags From: ags@pucc-i (Dave Seaman) Newsgroups: net.lang Subject: Re: Turing the first? Message-ID: <888@pucc-i> Date: Wed, 6-Feb-85 16:39:26 EST Article-I.D.: pucc-i.888 Posted: Wed Feb 6 16:39:26 1985 Date-Received: Fri, 8-Feb-85 02:08:52 EST References: <8900018@uiucdcsb.UUCP> <18218@lanl.ARPA> <428@ucsfcgl.UUCP> <870@pucc-i> <436@ucsfcgl.UUCP> Organization: Purdue University Computing Center Lines: 37 > I admit not to having read Babbage's original paper on this, but my > understanding was that he used the phrase "eating its own tail" to > refer to conditional branches based on its own calculated values. I > was talking about code which modified itself. According to Lady Lovelace, the Analytical Engine could store two kinds of numbers: those which represent "quantities" and those which represent "operations." As she explained, "...one main reason why the separate nature of the science of operations has been little felt, and in general little dwelt on, is the SHIFTING meaning of many of the symbols used in mathematical notation. First the symbols of OPERATION are frequently also the symbols of the RESULTS of operations. We may say that these symbols are apt to have both a RETRO- SPECTIVE and a PROSPECTIVE signification. "...whenever numbers meaning OPERATIONS and not QUANTITIES (such as the indices of powers) are inscribed on any column or set of columns, those columns immediately act in a wholly separate and independent manner, becoming connected with the OPERATING MECHANISM exclusively, and re-acting upon this. They never come into combination with numbers upon any other columns meaning QUANTITIES; though, of course, if there are numbers meaning operations upon n columns, these may COMBINE AMONGST EACH OTHER, and will often be required to do so, just as numbers meaning QUANTITIES combine with each other in any variety." [All emphasis in the original] The single example which Ada Lovelace chose to illustrate operations, indices of powers, is not what we would call self-modifying code today. The description is sufficiently general, however, to include the concept of calculating arbitrary "operations" and then carrying them out. It appears that Ada may also be the inventor of strong typing! -- Dave Seaman ..!pur-ee!pucc-i:ags