Talk:Manchester Baby/Archive 1

older comments
M. Williams, in the reference, gives the information about first running first a simple division program, then the relatively prime program, and then the factor of an integer program. Every other source I've seen (including the website in the external link, computer 50) just mentions the third one, calling it the first stored program to run. It seems logical to me that they would first test just the division routine, wo Williams' description seems reasonable. If that is true, then you could argue that the division routine was actually first. If that is considered too trivial, an arguement could be made that the relatively prime program was about as sophisticated as the largest factor program.

Also, Williams says that the relatively prime program used the division routine. Given the instruction set (mainly a subtraction operation, data moves, branch, and stop), it might make more sense to use the original verison of Euclid's algorithm, which uses subtraction only (instead of division). I wonder if that was done.

Can anyone comment on this? --Bubba73 15:33, 5 Jun 2005 (UTC)

If the division routine ran first, then the division routine was the first program. You can't exclude it on grounds of triviality - if it's a sequence of instructions, it's a program, and if those instructions were executed, then the program ran. You might argue that the coprimeness or factoring programs were the first applications to run, but that's a whole other kettle of fish!

As for the implementation of the coprimality test: a subtraction-based Euclid's algorithm would be simpler to write from scratch, but since they'd written the division routine by that point, i suppose it wasn't that much harder to write a division-based one, and a division-based one will run much faster. That makes the second program another landmark - the first reuse of a software component!

-- Tom Anderson (not a user) 2006-02-05

CRT
The article does not say what CRT means. Billlion 10:43, 10 February 2007 (UTC)

I've clarified this in the 2nd paragraph -- the Williams tube is a type of cathode ray tube (CRT). Greg 12:28, 10 February 2007 (UTC)

Are those numbers right?
"Then this routine was used in a program to show that 314,159,265 and 217,828,183 are relatively prime".

Hm. Looking at those numbers, the first is int(rnd(pi * 10^7)), and the second would be int(rnd(e * 10^7)) except that the leftmost "1" and the "7" have been transposed. I'm unsure whether the numbers given are correctly quoted, or a typist has fumbled somewhere along the line... would someone mind checking? Kay Dekker 01:28, 20 May 2007 (UTC)

Computer size
"Small scale" in relation to what? Jackiespeel (talk) 16:57, 24 June 2008 (UTC)
 * This was the name given to it by those who built it - primarily to test the Williams tube. Presumably small in relation to the size of the Manchester Mark I which they were building to use Williams tube memory.TedColes (talk) 22:01, 24 June 2008 (UTC)
 * In fact I have found the following quotation from the late Tom Kilburn in a 1990 issue of the newsletter of the UK Computer Conservation society http://www.cs.man.ac.uk/CCS/res/res02.htm#e


 * "The first small machine worked in June 1948. It's interesting why we built that small machine. We had a cathode ray tube which would store patterns on the CRT store over long periods but it wasn't really proof that the cathode ray tube system would work in a computer, because if at very high speed you write noughts over ones, or ones over noughts, which is what you are doing in a computer constantly, the signals you get from the screen are not balanced and the base line starts heaving up and down. We'd never seen this heaving up and down because we'd never fed it quickly enough but we surmised that it would be there and indeed it was.
 * So I decided to design some gear which would test this, but after a few weeks (actually I was travelling into Yorkshire at the time in that awful winter of 1947 and I did a lot of design on the train) one of the conclusions I came to was that the only way to test whether the cathode ray tube system would work in a computer was, in fact, to build a computer. So I designed the smallest computer which was a true computer (that is a stored program computer) which I could devise, and we ended up with a one-tube, 32-lines, 8-digit machine. The signals did in fact heave up and down and the design of the amplifier and the clamping system to deal with that was quite an interesting exercise."
 * TedColes (talk) 09:59, 25 June 2008 (UTC)

Peer review
Hello,

I've been asked to do a peer review, of sorts, as a means to aid the article towards WP:GAC. I'm completely green to the content of the article and my experience of computing is Adobe Photoshop and Wikipedia! In this capacity, I've found the following issues:


 * 1) Why was SSEM nicknamed "Baby", and who by?
 * 2) "Alan Turing provided the definition of a universal computer". What was it? Is this still accepted as a standard definition? Did anything exist prior to the definition?
 * 3) Could we mention a little more about what computing existed prior to SSEM, or Turing's definition? Just a sentence or two would help the casual reader (like me), IMHO.
 * 4) Without needing to navigate away from the article, who was John von Neumann?
 * 5) The second paragraph of the Background section is unsourced. For example, whose POV is it that EDVAC had drawbacks?
 * 6) Could the Development section have a little more context for the techno-jargon challenged? For example, explain how much computing power a "bit" had in terms familliar to casual readers, or say something like "the SSEM had a single operand architecture.... meaning that XYZ..."
 * 7) Citation is missing for the "seven instructions".
 * 8) First program is a single paragraph section, which is generally discouraged by MOS.
 * 9) In Later developments, we have the line "The SSEM developed into the Manchester Mark I, which led to the Ferranti Mark I". Did it develop sentiently? If not (!), who developed it and why?
 * 10) In Later developments, I think the table needs re-adjusting so that it reads as a comparison with SSEM, and makes that clearer.

Other than that, not a bad article. Quite some way off a "good" GA I think though. The pictures are good, but in short, what is lacking is context; explain what the jargon means and who the people are at every opportunity, it'll make for a much stronger article. Hope that helps. --Jza84 | Talk  21:33, 2 November 2008 (UTC)

Background

 * "During the Second World War, researchers working on the problem of removing the clutter from radar signals had developed a form of delay line memory, the first practical application of which was the mercury delay line, developed by J. Presper Eckert. The idea was to eliminate the radar reflection from static objects by delaying each returned pulse in a delay line for the time between transmitted pulses and then to compare the returned pulse with the stored pulse, leaving a residual signal which contained only the images of any moving objects."
 * The explanation should be improved. "The idea was" is vague; it is better to be more explicit.
 * No mention is made anywhere that mercury is the medium through which the acoustic waves (corresponding to the returned radar pulses) travel. What is the "stored pulse?"  It is not explained.
 * "delaying each returned pulse" seems to be incorrect in light of what is written in delay line memory. It is only "half of each returned pulse;"  the other half is sent directly to the receiver.
 * The inversion of the delayed pulse to (algebraically) eliminate the direct pulses from static objects is not explained. ("... compare the returned pulse with the stored pulse ..." is confusing.)  More explanation may add more text, but it is imperative that the reader be on board at this early stage, otherwise, s/he will stop reading.  In any case, it is not already a lengthy article, so a little extra will not hurt it.


 * Reply: Mercury was not always the medium used in delay lines, it was just one of the materials used. I've added a very brief overview of how radar works so as to explain the idea of "pulses" and that each received pulse was compared with its predecessor, which would have been stored in the delay line. The material in the delay line memory article is unsourced, so I can't speak for its accuracy. The explanation I've  given in this article comes from Brown (1999), A Radar History of World War II: Technical and Military Imperatives. --Malleus Fatuorum 02:02, 19 March 2009 (UTC)


 * "In 1945, scientists within the Ministry of Supply decided that Britain needed a National Mathematical Laboratory to coordinate machine-aided computation, and so a Mathematics Division was set up at the National Physical Laboratory (NPL)."
 * "decided" is probably not the best word here. Perhaps "were persuaded" or even "concluded?"
 * We need a transition sentence before the sentence to tell us how this is connected to the Manchester machine, otherwise the reader begins to wonder why all this is being described.


 * Reply: I've swapped "decided" for "concluded". Turing is partly the common thread through the section, leading up to Williams being allocated his circuit technicians and joining Manchester University. I've had a go at adding a linking sentence though, to make the change of emphasis between the first and second halves of the section seem less abrupt. The whole thing is really just trying to paint a picture of the context in which the SSEM was developed though. --Malleus Fatuorum 03:28, 19 March 2009 (UTC)


 * "On 19 February 1946, Alan Turing presented the design for an electronic stored-program computer, to be known as the Automatic Computing Engine (ACE)."
 * Doesn't say where. Was it at the math division at NPL?  Or was it in a paper?


 * Reply: It was in a paper presented to the NPL. I've clarified that. --Malleus Fatuorum 02:22, 19 March 2009 (UTC)


 * "The NPL did not have the expertise to build such a machine however, and so they contacted Tommy Flowers at the General Post Office's (GPO) Dollis Hill Research Laboratory."
 * Needs to be tighter. How about, "The NPL, which did not have the expertise to build such a machine, in turn contacted ... ?"
 * Do we need the abbreviation, GPO? It is used only once later.  Too many abbreviations can be confusing to the reader.  I feel that unless a full name is extremely long (as that for ENIAC), an abbreviation should be used only if it will be needed at least twice later.


 * Reply: Tightened up the sentence much as you suggested. I see no harm in keeping the GPO abbreviation, it's how most people here in the UK would know the precursor to BT and the Post Office. "General Post Office racks" doesn't seem like a very attractive alternative. --Malleus Fatuorum 03:28, 19 March 2009 (UTC)


 * "Flowers had designed Colossus Colossus, the world's first programmable electronic computer, but other commitments meant that he was unable to take part in the project, although his team did build some mercury delay lines for ACE."
 * This too needs to be tighter. How about, "Flowers, who had designed Colossus Colossus, the world's first programmable computer, had other commitments and was unable to take part in the project; his team, however, did build some mercury delay lines for ACE."
 * The reader now becomes aware that ACE had mercury delay lines. So, either this fact should be first mentioned in the sentence about ACE above, or not be mentioned at all here.
 * The number of different names ENIAC, Colossus Colossus, Manchester Mark I, Ferranti Mark I, ... are now beginning to add up, and each is the world's first something or other. It might be a good to have a diagram or table, which has the year of first operation of each computer, its name and "domicile," and its claim to fame.  It would certainly help the reader.


 * Reply: There's such a table in History of computing hardware. I'd be very reluctant to duplicate it here, especially in the Background section. I've tightened up the first sentence, much as you suggest. I don't think it's particularly important that the ACE used mercury delay lines, most computers of the period did; the fact is only mentioned in passing to demonstrate that Flowers' team did do some work on ACE even though he himself didn't. --Malleus Fatuorum 03:28, 19 March 2009 (UTC)


 * "Maurice Wilkes at the University of Cambridge Mathematical Laboratory, and the Telecommunications Research Establishment (TRE), were also approached for assistance."
 * Here the syntax is not the best; the reader has to make sense of the punctuation to clarify the sentence (i.e. that MW was not at both places). Better to say, "MF at UCML was approached, as was the TRE."
 * If MW will be playing a future role in the Manchester machine, then it should be indicated here ("MF, who was later to play ..., was also approached ..."); otherwise, it seems like a random comment to the reader. Same for TRE.


 * Reply: I've switched the order of this sentence as well as rewriting it. The important player here is TRE, not Wilkes, as Williams was at that time working for the TRE. Wilkes played no part in the SSEM's development, he's only included here for completeness. --Malleus Fatuorum 03:51, 19 March 2009 (UTC)


 * "The Department of Scientific and Industrial Research (DSIR), who ran the NPL, decided that of all the work being carried out by the TRE on its behalf, ACE was to be given the top priority."
 * The sentence is confusing because we have been told that TRE was only approached. It seems now that they had already begun to work.
 * Why do we need to know about DSIR? As far as I can tell, it never appears again in the article. If it needs to be mentioned, why not simply say, "NPL's parent organization" without adding another abbreviation?  ("ran the NPL" is vague)


 * Reply:' The sentence says that the TRE was already doing work for DSIR, not that that work had anything to do with ACE, which it didn't. I've rewritten the offending sentence to say: "The government department responsible for the NPL ...". --Malleus Fatuorum 03:28, 19 March 2009 (UTC)


 * "This led to the superintendent of TRE's Physics Division visiting NPL on 22 November 1946, along with Frederic C. Williams, and A. M. Uttley."
 * What is "This?" How about something like, "NPL's decision to make ACE a major focus of its collaboration with the TRE led to a visit by ...."
 * Were Williams and Uttley also at TRE? Their affiliation should be mentioned.


 * Reply: I've made the suggested changes. --Malleus Fatuorum 14:17, 19 March 2009 (UTC)


 * "Most of Williams' circuit technicians were being transferred to the Department of Atomic Energy, and he was leaving six weeks later to take up a professorship at the University of Manchester."
 * Here again the cause comes after the effect. Better to say, "William had already accepted a professorship at WUM and most of his circuit technicians were in the process of being transferred ..."  Don't really need to know "six weeks later."
 * At this point the reader becomes aware that Williams is some kind of big wig in all this. Something about his future role should have been intimated before we went into the history (to provide some direction for the reader).


 * Reply: I've added an explanation that Williams led a group at TRE developing CRT stores as an alternative to delay lines, and removed the six-week timescale. Williams was introduced in the lead as one of the main people behind the SSEM, and the following section on the Williams tube makes clear exactly what his primary contribution was. --Malleus Fatuorum 15:56, 19 March 2009 (UTC)


 * "The TRE therefore agreed to second a small number of staff to the university to work under Williams' direction, and that others would work with Uttley at TRE."
 * "second?" This usage of "second" (as tr. verb) is not that widespread (at least in my experience); would "support" work?


 * Reply: "Second" is quite correct and appropriate here, and it is widely used in this sense. "Support" doesn't have the same meaning. Someone who is "seconded" is working at one establishment like any other employee, but is actually an employee of another establishment, to which they will return at the end of their secondment. --Malleus Fatuorum 02:02, 19 March 2009 (UTC)


 * "small number of staff?" why not simply "support a small staff of circuit technicians," since those are the ones that were staying behind?
 * Which others? The ones that were to be transferred to DAE? Are we really saying that the technicians were not transferred to DAE, that some went with Williams to Manchester and others stayed back at TRE to work with Utley?  If so, all this should be clearly stated.


 * Reply: I've made a few changes along the lines suggested to clarify that of the the technicians scheduled to be transferred to the DAE, some were transferred, some were were seconded to Manchester University, and some stayed behind to work with Uttley. --Malleus Fatuorum 14:35, 19 March 2009 (UTC)


 * "The NPL also sent a proposal and draft contract to both Williams and Wilkes to work on ACE."
 * Is this really needed? If it is important to the development of the project, then something should be mentioned here about what role either the proposal or draft contract would play.
 * Reply: I don't think it's important, but obviously whoever put it in did. I've removed it. --Malleus Fatuorum 02:02, 19 March 2009 (UTC)


 * "''ACE was one of several projects set up in the years following the Second World War with the aim of constructing a stored-program computer. EDVAC was under development at the University of Pennsylvania's Moore School of Electrical Engineering, which Flowers and Wilkes had visited and where they had attended a presentation on EDVAC in 1946. The University of Cambridge Mathematical Laboratory was working on EDSAC, and Max Newman planned to set up a calculating machine laboratory at the University of Manchester based on the Selectron tube memory being developed by RCA.
 * This reads like an overview (or context). It should have been presented at the outset of the history.


 * Reply: I've integrated the relevant bits earlier into the section. --Malleus Fatuorum 02:22, 19 March 2009 (UTC)

More later. Fowler&amp;fowler «Talk»  23:52, 18 March 2009 (UTC)


 * I hope that all of these points have now been satisfactorily dealt with. --Malleus Fatuorum 15:56, 19 March 2009 (UTC)
 * Yes, the background section reads much better.  Fowler&amp;fowler  «Talk»  19:00, 20 March 2009 (UTC)

I am surprised that the table 'Defining characteristics of some early digital computers of the 1940s' from the History of computing hardware has been removed. It is transcluded in the articles for almost all the other machines that it cross-references. Am I alone in thinking that it provides useful contextual information for those who want to use the encyclopedia to clarify what is meant by the first computer, a word that is most justifiably used in the lead of this article? --TedColes (talk) 07:23, 26 May 2009 (UTC)


 * I don't see that the table adds much, if anything at all of value to this article, which is about the SSEM, not the history of computing. Anyone who wants a wider historical overview can very easily click on the link to the main article. The lead does not in any case describe the SSEM as the first computer, which it most certainly wasn't, it describes it as the first stored-program computer. --Malleus Fatuorum 13:47, 26 May 2009 (UTC)


 * I am not at all surprised that it was removed. The template had outgrown its usefulness. See Template talk:Early computer characteristics. -- Petri Krohn (talk) 11:04, 28 May 2009 (UTC)

Williams's tube

 * "Although early computers such as CSIRAC made successful use of mercury delay line memory,the technology had several drawbacks: the amount of data it could store was limited, it was heavy, and it was expensive."
 * The "it" becomes a little ambiguous in the second and third independent clauses. I would probably favor: "it could store limited data, it was heavy, and it was expensive."
 * Doesn't all memory ultimately store limited data? Can we be a little more specific?
 * Also, how heavy and expensive was it? Are any numbers available?  If they are they would certainly help in highlighting (by comparison) the CRT memory.
 * Reply:[[Image:Mercury memory.jpg|thumb|right|Mercury memory of [[UNIVAC I]] (1951)]] You're right, all memory is ultimately limited, so I've tightened that bit up. I don'thave any figures for price or weight, but this pic to the right should give some idea of the scale of the beast. I would have included that in the article if I'd also been able to get a decent image of a Williams tube, but the licensing on the pic in its article looks decidely dodgey, and wouldn't get past FAC reviewers. Next time I'm at the museum I may try to get a shot of one of the replica tubes. This article would have been so much easier if the supporting articles had been in better shape. Still, I suppose we have to start somewhere. --Malleus Fatuorum 22:05, 20 March 2009 (UTC)


 * "In addition, because data was stored as a sequence of acoustic waves, and because the velocity of sound through a medium varies with temperature, the mercury had to be maintained at a constant temperature."
 * Do you think it might be clearer if we said, "In addition, since data was stored as a sequence of acoustic waves whose velocity, in turn, varied with the temperature of the medium of propagation, the medium, mercury, had to be maintained at a constant temperature."?
 * Why was it such a problem to maintain the medium at a constant temperature? Air-conditioners were around in 1946.
 * Reply: I've somewhat reworded that sentence along the lines you suggest. The mercury had to be maintained at a constant temperature of 40° C, a bit more than most AC units would be able to achieve even today. --Malleus Fatuorum 22:05, 20 March 2009 (UTC)
 * "The Manchester Small-Scale Experimental Machine (SSEM) was designed to prove that the Williams tube, the first random-access digital storage device, could operate at computer speeds."
 * Could "computer speeds" be clarified or wikilinked? (This, of course, does become clearer in later sections when we see the evidence of the speed of the computation.)
 * I wonder if this also might be the place to add one sentence clarifying the difference between William tube's RAM and the previous serial memory. A reader might wonder that since the speed of sound in mercury is quite fast (1450 m/s), it would make it seem almost RAM-like.  So, how was the new memory that much better (or something to that effect).

Development and design

 * You say that by August 1947, the memory capacity had increased to 2,048 bits or a 64x32 bit array. Wouldn't this correspond to two 32x32 bit words?  Later, you say that the memory was able to hold 32  32x32 bit words.  When did the memory capacity increase from 2,048 bits to 32,768 bits (32x32x32)?  Or did I misinterpret this?

First programs

 * Am I correct in assuming that starting with $$2^{31}-1$$ and in descending order, each divisor was repeatedly subtracted until the remainder either became 0 or a negative number?
 * Reply: Not quite. To find the highest factor of $$2^{18}$$ the program tried every integer from $$2^{18}-1$$ downwards, in the way that you describe. $$2^{31}-1$$ was the largest number that the SSEM's memory could store, but obviously a number larger than the one we're looking for the highest factor of couldn't possibly be a factor. So the program tried every integer between $$2^{18}-1$$ and $$2^{17}$$, at which point, as you say, the remainder from the repeated subtractions was zero and the program stopped. --Malleus Fatuorum 22:18, 20 March 2009 (UTC)

These are all the questions I have. Congratulations! This is a very informative article. I learned something. Fowler&amp;fowler «Talk»  19:00, 20 March 2009 (UTC)


 * Thanks for your very detailed review, which has undoubtedly improved the article in some important areas, and hopefully gone at least some way to making it more accessible to the general reader. --Malleus Fatuorum 22:23, 20 March 2009 (UTC)

ABC?
Since this page is discussing electronic digital computers (and which one was the first), I thought it prudent to provide the following link.

John Vincent Atanasoff and the Birth of the Digital Computer


 * Since this article deals with a computer built in the UK, I don't know if this link is 100% relevant, but it maybe the basis for a future edit if this becomes a topic of interest.


 * I want to let the article and secondary links speak for themselves so I won't quote anything here, so read it and decide for yourself.

173.26.199.82 (talk) 04:38, 30 May 2009 (UTC) -Ben Hadley, not a user

http://en.wikipedia.org/wiki/Colossus_computer —Preceding unsigned comment added by Ntrfug (talk • contribs) 01:17, 30 May 2009 (UTC)


 * That's obviously interesting stuff, but I'm not certain it's relevant here. This article isn't discussing which was the first electronic digital computer, it's specifically describing the SSEM, which is undoubtedly the world's first stored-program electronic digital computer. --Malleus Fatuorum 12:52, 30 May 2009 (UTC)

Wrong information about the Z3
"Programmable computers such as the Z3 and Colossus were subsequently developed during the 1940s, but their programs were generally represented by patch cables and switches."


 * This is definitively wrong regarding the Z3. The Z3 was the world's first working programmable, fully automatic computer. Its programs were stored externally on tape, so the Manchester Small-Scale Experimental Machine can claim the improvement of internal program storage. - I'll try to correct this in the article. Cheers, MikeZ (talk) 09:36, 30 May 2009 (UTC)


 * Just clumsy wording on my part, thanks for making the correction. --Malleus Fatuorum 12:53, 30 May 2009 (UTC)

First?
Wasn't COLOSSUS the first stored-program digital computer?


 * Nope, that was the Z3. Colossus had to be rewired with patch cables and switches. Cheers, MikeZ (talk) 09:27, 30 May 2009 (UTC)


 * Nope, the Z3 used film stock to store its programs. --Malleus Fatuorum 12:48, 30 May 2009 (UTC)
 * Ah, I see from your comment below that you're using the term "stored-program" in a rather specialised sense in distinguishing between internally and externally stored programs. Forget I spoke. :-) --Malleus Fatuorum 12:56, 30 May 2009 (UTC)

first stored-program computer… considered "small and primitive" compared to its contemporaries
(cur) (prev) 16:14, 30 May 2009 Malleus Fatuorum (talk | contribs) (26,375 bytes) (its contemporaries were under construction; the SSEM was the first to be completed) (undo)

(cur) (prev) 16:28, 30 May 2009 Crunchy Numbers (talk | contribs) (26,343 bytes) (so its future contemporaries were under construction... at the time who knew what would happen?) (undo)

Malleus Fatuorum># everyone knew, please read the text about ACE and EDSAC and so on)


 * I did read the referenced web page at this section.

http://www.computer50.org/mark1/contemporary.html
 * It said that from June 1948 to October 1949 (when EDSAC was fully functional) this was the only working stored-program computer. As a matter of logic and language usage doesn't it follow that something can't be both "the only" and have contemporaries at the same time?


 * From http://en.wiktionary.org/wiki/contemporary the definition of contemporary is "coexistent in time".


 * We could say that it was small and primitive compared to contemporary designs, to competing designs. But this was really a test bed right? Not intended to be the desired design.


 * Also when I asked who knew what would happen I meant there could have been budget cuts or a crisis and perhaps non of the "contemporaries" would have been completed.

I don't claim to be an expert on this topic but I am a good editor. I tend to work on articles where contributions are welcomed. I also do some vandalism reverts from time to time. You seem to have things under control here and there are other articles where I can work. It was just a shame to see a mistake, even if minor, on a featured article. -Crunchy Numbers (talk) 17:20, 30 May 2009 (UTC)


 * Well, other stored-program electronic computers were certainly "coexistent in time" with the SSEM, which just happened to the first one to be successfully demonstrated working. Indeed as the SSEM was incrementally morphed into the Manchester Mark 1 it would be difficult to say when one became the other. Nevertheless the present wording appears to be open to different interpretations, so I've rewritten the offending sentence: "Although considered "small and primitive" by the standards of its time, it was the first working machine to contain all of the elements essential to a modern electronic computer." --Malleus Fatuorum 18:45, 30 May 2009 (UTC)

Pic removed
I removed this picture from the article because I found it did not add anything to the reader's understanding of the Manchester Small-Scale Experimental Machine, or of Turing machines. The parts are not labeled. I don't know why there's an aerodynamic mousetrap in the middle of it. It's likely to make some readers think that it's not a metaphor and that it's literal. Tempshill (talk) 06:53, 23 May 2009 (UTC)


 * I agree but possibly for different reasons.
 * This picture is not directly related to the SSEM. The coverage of Turing machines is background to this article.
 * It is a poor picture of a Turing machine - it is purely abstract and does not illustrate the concepts involved even for a Turing machine.
 * It does not aid understanding of the SSEM at all.
 * As such it is merely decoration. An "artistic" representation has no place here.  This is not an article on the arts and this is an encyclopaedia, not an art site.
 * If there is no good reason for a picture there then why do we have a picture? It does not back up the points made in the article or introduce new information.  It is just clutter that serves to distract from the main focus of the article. CrispMuncher (talk) 21:26, 23 May 2009 (UTC).


 * I have no objection to this image being replaced with a better one, but I strongly object to its removal. The image was taken from here in response to comments made at this article's FAC. Let's also all remind ourselves that there never was and never will be a Turing machine, so any image is inevitably an artist's impression. --Malleus Fatuorum 22:08, 23 May 2009 (UTC)


 * Do you believe that this illustration aids the reader's understanding of a Turing machine, let alone the SSEM? I am surprised if so.  If it doesn't, it doesn't belong in the article.  Tempshill (talk) 05:30, 1 June 2009 (UTC)


 * Yes, I do. --Malleus Fatuorum 09:49, 1 June 2009 (UTC)

title image
That can't be right. What is the original? —Preceding unsigned comment added by 66.72.196.26 (talk) 04:43, 30 May 2009 (UTC) --Malleus Fatuorum 13:23, 22 June 2009 (UTC) I realize it's a replica, but that blue-screen Hewlett-Packard oscilloscope sitting on the storage rack is an anachronism. --Mensanator (talk) 16:34, 21 June 2009 (UTC)


 * What do you mean by "an anachronism"? --Malleus Fatuorum 16:49, 21 June 2009 (UTC)


 * I mean precisely what the dictionary says it means, "an artifact that belongs to another time" --Mensanator (talk) 21:05, 21 June 2009 (UTC)


 * So are you suggesting that the replica machine does not incorporate an oscilloscope, as is clearly shown that it does on the photograph? An oscilloscope belongs to the time the replica was built, wouldn't you agree?. --Malleus Fatuorum 21:19, 21 June 2009 (UTC)


 * Be that as it may, it still looks out of place, like a jet amongst a display of replica WWI biplanes. Or, as in the Museum of the Air Force at Wright Patterson Field, a biplane amongst the jets (they were re-arranging the displays and hadn't gotten around to unhooking the biplane from the ceiling). Looks amusing. --Mensanator (talk) 06:09, 22 June 2009 (UTC)


 * I don't think that's a good analogy at all; it's more like a modern spanner being used in the maintenance of a WWI biplane. Oscilloscope's predate the SSEM of course, but insisting that a replica built in 1998 and being maintained in 2009 ought to be worked on only with a period oscilloscope seems a little unrealistic. --Malleus Fatuorum 13:24, 22 June 2009 (UTC)


 * Yeah, I suppose you're right. Still, a period scope would have imparted a nice "this is what we had to work with back then" feel, but that's probably beyond the scope (no pun intended) of the project. And I, for one, wouldn't want to have to work with one. And who else even notices things like this? It was just a first impression, so never mind. Wouldn't mind visiting it someday, although I picture my sister gnawing her own leg off as I try to explain the significance. --Mensanator (talk) 00:19, 23 June 2009 (UTC)

Arithmetic operations
I do not agree that unary operations such as negation are arithmetic operations; the essence of arithmetic operations is that they are binary. However it seems that I am outnumbered in that view, so I shall simply have to bite my tongue, grin and bear it, and all that jazz. "Subtraction from zero", for instance, is a binary operation, not unary, but that's not what negation means, especially in the context of the SSEM, or indeed any other computer, where it simply involves bit flipping. --Malleus Fatuorum 22:20, 16 June 2009 (UTC)

Let me restate my case more clearly; which of the SSEM's seven instructions allows for any arithmetic operation other than subtraction? --Malleus Fatuorum 23:16, 16 June 2009 (UTC)


 * The technical explanation is that the term "operator" in the context of computer programming is a subset of the more broad mathematical concept of "operator", which is essentially an n-ary function that maps one or more operands to a single value. The number of operands that a given operator takes is its arity. So yes, unary operators are bona fide arithmetic operators. To answer your question about the SSEM, the LDN and SUB instructions are therefore the arithmetic instructions. And to be especially pedantic, all CPU operations are in reality nothing more than "bit flipping". — Loadmaster (talk) 00:09, 24 June 2009 (UTC)


 * I don't recall asking any questions about the SSEM, but have it your own way. Make whatever changes you like. I've done what I can with this article and I'll leave it to you now. --Malleus Fatuorum 00:43, 24 June 2009 (UTC)

The First Program
An earlier discussion here reflected on what was truly the first program. I have the benefit of a copy of Geoff Tootill's notebook of the time. The first program, written by Tom Kilburn, found the highest factor of a number by successive subtractions. Geoff Tootill had written a program to find the HCF of two numbers, and it was chance that it was Kilburn's program which was first to run. About 3 weeks later Alan Turing submitted a long division routine which itself occupied all 32 words of the store. See the paper in the Annals of the History of Computing, "Early Programs on the Manchester Mark I Prototype", Jul-Sep 1998, Vol 20, No 3, p.4. (The term "Mark I Prototype" in the above title is wrong with hindsight, we should have said "Small-Scale Experimental Machine".)

Ssem1948 (talk) 20:36, 29 June 2008 (UTC)

Could we see the code of the three first programs? (please) May 2010. —Preceding unsigned comment added by 86.206.30.123 (talk) 12:02, 14 May 2010 (UTC)

JMP/JRP
I've modified the implicit register used in the definition of JRP: become which seems to be more realistic and does corespond to.
 * JRP: Jump to the instruction at the specified memory address plus the accumulator (relative unconditional jump)
 * JRP: Jump to the instruction at the specified memory address plus the program counter (relative unconditional jump)

(program counter can be changed into instruction adress) But, seeing the 'original program', I've got a doubt on the formulation of JMP/JRP. I think it should be:
 * JMP: Jump to the instruction at the adress obtained from the specified memory address (absolute unconditional jump)
 * JRP: Jump to the instruction at the program counter plus the relative value obtained from the specified memory address (relative unconditional jump)

(a double indirection system due to the fact that the SSEM always get its value from the memory, cf. LDN/SUB with direct adress)

And more, in the 'original program', there is a shift from the value stored at the adress and the target (+1). Ex: Jump back 2 lines is done with JRP 21, and Mem[21] coresponds to -3. This is probably due to some automatic PC<-PC+1, so JMP/JRP could/should be:
 * JMP: Jump to the instruction at the adress obtained from the specified memory address plus 1 (absolute unconditional jump)
 * JRP: Jump to the instruction at the program counter plus 1 plus the relative value obtained from the specified memory address (relative unconditional jump).

BDenis.--86.206.30.123 (talk) 14:21, 14 May 2010 (UTC)


 * Reading p.70 Barbacci, M. R. 1979. Instruction set processor specifications for simulation, evaluation, and synthesis. In Proceedings of the 16th Design Automation Conference (San Diego, CA, United States, June 25 - 27, 1979). Annual ACM IEEE Design Automation Conference. IEEE Press, Piscataway, NJ, 64-72. I think the 1st change was ok, and 2nd is necessary, the 3d needs to be formulated (maybe just a footnote for JMP and JRP to say that the program counter was increment after. As a consequence, the adress stored in memory was the target adress -1) BDenis.--129.88.133.117 (talk) 09:52, 17 May 2010 (UTC)

First program source code
Is there a record of what the actual program code for the first program(s) was? A 17-instruction program is short enough to be shown in its totality in the article, and would be very interesting from a historical computer science perspective. Or has the original code been lost to the sands of time? — Loadmaster (talk) 18:18, 16 June 2009 (UTC)


 * The original program has been lost, but it has been reconstructed with the help of the original team from a modified version written shortly afterwards found in, IIRC, Tootill's notebook. Lavington includes a copy in an appendix called "The 'real' first program". It's actually 25 lines long, as it includes the working storage area as well. It looks pretty strange to a modern eye though, as of course it doesn't use assembler mnemonics, as there were none, so it would need quite a bit of explanation. To give you a flavour, here are the first four lines:

"-18,C // Clear accumulator -19,C // load +a Sub 20 // trial substraction Test   // is difference -ve?"


 * To be perfectly honest I'm not certain this would be a valuable addition to this article, but now you've raised the issue in my mind I'm wondering whether the First computer program wouldn't be a worthwhile article in its own right. What do you think? --Malleus Fatuorum 20:54, 16 June 2009 (UTC)


 * That sounds interesting, although I'm not sure it warrants a separate article. Perhaps it could be a section in the Computer programming or History of programming languages article. — Loadmaster (talk) 21:35, 16 June 2009 (UTC)


 * Perhaps that's a better idea ... Computer programming sounds like a good potential candidate, but there's quite a bit that could be said about the first computer program, not least it was the only program Kilburn ever wrote ... have to think about it more. --Malleus Fatuorum 22:02, 16 June 2009 (UTC)

The first program is missing. Could we, please, have -here- the code of the original program with the asm syntax used in this article and some explanation (n.b. the syntax used in this article seems clear but quite different from the 'original' syntax [which is not as clean]. Which syntax have to be chosen? Is there any real 'original' syntax? Did compiler/assembler already exist in 1948? Was the 'original' program' written with this syntax (i.e. with mnemonic) or only with binary code?). BDenis--86.206.30.123 (talk) 11:59, 14 May 2010 (UTC)

The four lines above could be (in the cleaner syntax used in the article): "LDN 18 // Clear accumulator LDN 19 // load +a SUB 20 // trial substraction CMP   // is difference -ve?" —Preceding unsigned comment added by 86.206.30.123 (talk) 13:16, 14 May 2010 (UTC)

+ thank you for the article, it is very good. —Preceding unsigned comment added by 86.206.30.123 (talk) 13:39, 14 May 2010 (UTC)

first try
what about a modern version of the program (from the resurection paper, with the syntax used in the article, and symbolic adress):

"1            LDN Zero      \   (re)set init value for Acc   2 Div:         LDN MinusA    /   with some integer A 3              SUB B         \    4              CMP"

- prepare next division : B-- 10            STO B

It's interesting, the 7 instructions of the instruction set are used, even if JMP/JRP could have been expressed with only one of the two forms.

I would need some explanation about line 1, and line 18 (I've seen some explanation, but it didnt convince me), maybe the reason is below (about line 23? but I'm not sure, maybe it's just some kind of a separator between program and data)

A propos, I've been surprised about line 23 (value 1): it is referenced twice with different meanings As a conclusion line 23 is difficult to translate. It could have been: "23 ptrDiv,One: Div-1"
 * as adress line 16 (for begin of division)
 * as value line 9 (for decrement)

- 1 24 Remainder: 0

(see the coherent change line 25 also)

Maybe, the 'original' should be put side by side to compare and understand the logic.

BDenis--86.206.30.123 (talk) 16:38, 14 May 2010 (UTC)


 * I have two concerns. The first is that, as I'm sure you're aware, nobody knows what the first program really looked like, as nobody bothered to keep a copy. All we have is the best guesses of some of those who were involved in the project, many years later. I'm not sure it's even known for certain whether this version has ever been run. Secondly, if we make a modern mnemonic version then we're slap bang into original research territory, which is strictly verbotten here in wikipedia. All we can do is to find a modern version someone else (reliable) has published and use that. It's often frustrating, I know, but those are the rules. Malleus Fatuorum 16:52, 14 May 2010 (UTC)
 * PS. There were no compilers, assembers, or mnemonics in 1948; all the programming was done by setting binary values into each memory location in turn, using switches. Malleus Fatuorum 16:55, 14 May 2010 (UTC)

Second try
maybe something closer to the original (with mnemo from the wikipedia article) without my comments and symbolic adress.

"1            LDN 18  2              LDN 19 3              SUB 20         4              CMP           5              JRP 21  6              SUB 22 7              STO 24 8              LDN 22 9              SUB 23 10              STO 20        11              LDN 20        12              STO 22 13              LDN 24 14              CMP           15              JMP 25 16              JMP 23 17              STP           18               0 19              -262 144  20               262 143  21              -3 22              -262 143  23               1        24               0        25              16" —Preceding unsigned comment added by Bdenis (talk • contribs) 10:11, 17 May 2010 (UTC)

I think --Bdenis (talk) 10:17, 17 May 2010 (UTC)
 * there is no licence problem
 * there is no original work problem (it's just a translation of the 'original program' with the langage used in the wikipedia article, maybe this exists already in some paper)
 * the program is really missing in the article
 * the question is which form is the best (the first try, or the second, or another [or binary code, or the text from the resurection article]?)


 * The translation is the original work". Malleus Fatuorum 14:04, 17 May 2010 (UTC)
 * really?
 * because, it's not my program, not my language, not my values, what is my contribution? what is the original part? I'm sure, it's not research work, revolutionary ideas, personal position. It's clearly easily verifyable. BDenis.--86.206.30.123 (talk) 14:29, 17 May 2010 (UTC)


 * Yes, really. You are translating the original program into a form using mnemonics that did not exist when the program was written. That's analagous to a translation from, say, Polish to English. If such a translation were to be included in a featured article, the reliability of the translation would need to be established. Have you reason to believe that your translation would be accepted just because you claim it to be an accurate representation? I don't. Malleus Fatuorum 14:49, 17 May 2010 (UTC)


 * Do you compare Polish with the SSEM's instruction set (only 7 words), or English? I've added the original notation in the table describing the SSEM's instruction set.

{| class="wikitable" style="width:90%; margin:1em auto; clear:both; text-align:center;" ! style="width:9%;" | Binary code ! style="width:10%;" | Original notation ! style="width:11%;" | Modern mnemonic ! style="width:70%;" | Operation
 * +SSEM's instruction set
 * 000
 * S, Cl
 * JMP S
 * style="text-align:left;" | Jump to the instruction at the adress obtained from the specified memory address S (absolute unconditional jump)
 * 100
 * Add S, Cl
 * JRP S
 * style="text-align:left;" | Jump to the instruction at the program counter plus (+) the relative value obtained from the specified memory address S (relative unconditional jump)
 * 010
 * -S, C
 * LDN S
 * style="text-align:left;" | Take the number from the specified memory address S, negate it, and load it into the accumulator
 * 110
 * c, S
 * STO S
 * style="text-align:left;" | Store the number in the accumulator to the specified memory address S
 * 001 or 101
 * SUB S
 * SUB S
 * style="text-align:left;" | Subtract the number at the specified memory address S from the value in accumulator, and store the result in the accumulator
 * 011
 * Test
 * CMP
 * style="text-align:left;" | Skip next instruction if the accumulator contains a negative value
 * 111
 * Stop
 * STP
 * style="text-align:left;" | Stop
 * - class="tfoot references-small" style="text-align:left;"
 * colspan="4"| 18:58, 24 May 2018 (UTC)
 * Oppose: For reasons outlined above I think Manchester Small-Scale Experimental Machine as the title (ie use by Univ of Manchester and MOSI) with note nicknamed ‘Baby’ in the opening sentence woud seem fine. (Msrasnw (talk) 11:41, 25 May 2018 (UTC))
 * The only reasons I find "outlined above" are that some guys don't like me; can you please state what reasons you mean? The MOSI  mostly calls it Baby, but of course they also use Burton's name since they have his rebuild. Dicklyon (talk) 15:16, 25 May 2018 (UTC)
 * Hi sorry. By "outlined above" I meant "outlined by me above". My feeling is that both at the University of Manchester (its home) and at the Museum of Science and Industry - where the replica is, they seem to me to use the Manchester Small-Scale Experimental Machine as its proper name and Baby as a nickname. Both these seem authoritative. I think using nicknames for things might be one way to go but it would just seem less formal or less encyclopedic. (Msrasnw (talk) 17:29, 25 May 2018 (UTC)) PS: I am here via my having started a stub on Geoff Tootill one of its creators. PPS At IBM  Don Estridge had his 'baby computer' too which might complicate things.
 * Thanks for the clarification of your "feeling". Note that the uses at the University of Manchester are primarily just in their rehosting of the computer50.org pages, where the name "Small-Scale Experimental Machine" originated. The Museum of Science and Industry is where that Rebuild lives, so also uses that term. But they use Baby even more, because the machine didn't really need a new name. Look at what Agar said of that 50th-anniversary literature (see User:Dicklyon/Baby: the name 'Baby' has pre-dominated in the fiftieth anniversary literature over 'Mark I' or 'Small-Scale Experimental Machine'.  Neither site used "Manchester Small-Scale Experimental Machine" before Wikipedia adopted that title, so your observation is an example of the WP:CIRC that I'm trying to fix.  Dicklyon (talk) 19:10, 25 May 2018 (UTC)
 * style="text-align:left;" | Stop
 * - class="tfoot references-small" style="text-align:left;"
 * colspan="4"| 18:58, 24 May 2018 (UTC)
 * Oppose: For reasons outlined above I think Manchester Small-Scale Experimental Machine as the title (ie use by Univ of Manchester and MOSI) with note nicknamed ‘Baby’ in the opening sentence woud seem fine. (Msrasnw (talk) 11:41, 25 May 2018 (UTC))
 * The only reasons I find "outlined above" are that some guys don't like me; can you please state what reasons you mean? The MOSI  mostly calls it Baby, but of course they also use Burton's name since they have his rebuild. Dicklyon (talk) 15:16, 25 May 2018 (UTC)
 * Hi sorry. By "outlined above" I meant "outlined by me above". My feeling is that both at the University of Manchester (its home) and at the Museum of Science and Industry - where the replica is, they seem to me to use the Manchester Small-Scale Experimental Machine as its proper name and Baby as a nickname. Both these seem authoritative. I think using nicknames for things might be one way to go but it would just seem less formal or less encyclopedic. (Msrasnw (talk) 17:29, 25 May 2018 (UTC)) PS: I am here via my having started a stub on Geoff Tootill one of its creators. PPS At IBM  Don Estridge had his 'baby computer' too which might complicate things.
 * Thanks for the clarification of your "feeling". Note that the uses at the University of Manchester are primarily just in their rehosting of the computer50.org pages, where the name "Small-Scale Experimental Machine" originated. The Museum of Science and Industry is where that Rebuild lives, so also uses that term. But they use Baby even more, because the machine didn't really need a new name. Look at what Agar said of that 50th-anniversary literature (see User:Dicklyon/Baby: the name 'Baby' has pre-dominated in the fiftieth anniversary literature over 'Mark I' or 'Small-Scale Experimental Machine'.  Neither site used "Manchester Small-Scale Experimental Machine" before Wikipedia adopted that title, so your observation is an example of the WP:CIRC that I'm trying to fix.  Dicklyon (talk) 19:10, 25 May 2018 (UTC)

CN¥
 * Support: Per nomination. Opposition arguments don't resonate.  First one is a personal attack. Second one seems to indicate personal preference. Daniel.Cardenas (talk) 16:39, 25 May 2018 (UTC)
 * Support per nomination. Manchester Baby is concise, natural and consistent with most sources as indicated. kml (talk)

70th anniversary lecture coming up this month at Manchester MoSI
See Manchester Literary and Philosophical Society news: "... the Manchester Lecture will take place at 7 p.m. on Thursday 21 June 2018 at the Manchester Museum of Science and Industry (MSI). This year it is in celebration of the 70th anniversary of the creation of the world's first stored-program computer on 21 June 1948 at the University of Manchester. The computer is known as 'The Baby' and a replica of it is located at MSI." Dicklyon (talk) 06:00, 5 June 2018 (UTC)