Difference between revisions of "Touch of class typos"

(4 The interface of a class)
Line 265: Line 265:
 
===D An introduction to Java (material by Marco Piccioni)===
 
===D An introduction to Java (material by Marco Piccioni)===
 
===E An introduction to C# (material by Benjamin Morandi)===
 
===E An introduction to C# (material by Benjamin Morandi)===
 +
 +
=== Typos reported by Ernst Leisi (no chapter numbers given) ===
 +
(Second version [the one with 910 pages])
 +
 +
 +
s. 51 - What this tells us is that the objects our programs manipulate classify              ... sounds kind of strange... the objects our programs
 +
      themselves naturally into certain classes
 +
 +
 +
s. 59 - Line8.i_th (2) is “La_Motte” and so on.                                              ... there is no La_Motte on the picture
 +
 +
 +
 +
s. 61 - Line8.remove_all_remove_all_segments                                                ... why two times remove_all ?
 +
                 
 +
 +
 +
s. 69 - invariant (where * denotes multiplication:                                          ... missing " ) "
 +
 +
 +
 +
s. 84 - (a = b) or (c and ((not d) = e)))                                                    ... the last " ) " is one too much or there should be one at the beginning ( " ( " )
 +
 +
 +
 +
s. 97 - Line8.i_th (2)).is_exchange                                                          ... " ) " in both examples
 +
 +
 +
 +
s. 98 - mathematicians often use a period “.” or a comma “,”;                                ... the last ->  "  <-  is not written with normal "style" :O
 +
 +
 +
 +
s.100 - {3, 7, 911, 13, 15}:                                    ... missing " , " between 9 and 11
 +
 +
 +
 +
s.111 - The first thing we need in our class is a feature representing the line to be built.  ... "We call it (the feature) fancy_line... but the feature is " build_a_line " i guess
 +
        We call it fancy_line.
 +
 +
 +
s.121 - line_exists: s /= Void                                                                ... line_exists: l /= Void
 +
 +
 +
 +
s.125 - instruction as executed by clients is jot just create stop1                          ... jot ? ^^
 +
 +
 +
 +
s.125 - line_exists: s /= Void       ... line_exists: l /= Void
 +
 +
 +
 +
s.128 - 1 • he precondition of its creation procedure.                                        ... missing " T "
 +
 +
 +
 +
s.132 - One immediate question is how > you will you < specify the root class and root creation procedure of a system.
 +
 +
 +
 +
s.134 - This is true of unqualified calls:                                                    ... true for ?
 +
 +
 +
 +
s.136 - made of components to be developed autonomously and combined in may different ways.  ... many
 +
 +
 +
 +
s.141 - 687 + 42 = 29                                                                        ... 729
 +
 +
 +
 +
s.146 - It is the control structure we have been using implicitly in all the examples so far, ... they would be executed    (i guess)
 +
        since we have been writing instructions under the assumption that they would
 +
        executed in the order given.
 +
 +
s.151 - full.extend (metro_1)]                                                                ... " ] "
 +
 +
 +
 +
s.152 - this is true in both its “” and its “”.                                              ... its what?
 +
 +
 +
 +
s.162 - Afterexecution       ... After execution
 +
 +
 +
 +
s.163 - If you have ever try to use a program only to see it “hang”, it might very            ... tried
 +
 +
 +
 +
s.171 - Of course this convention is not there by accident, but intended                      ... to ensure ?
 +
        precisely ensure that the typical iteration scheme on a list
 +
 +
 +
s.183 - chosen by the programmer, who lets the compiler maps them to memory                  ... lets the compiler map them
 +
        locations.
 +
 +
 +
s.192 - part of the loop, The loop correctness rules                                          ... , T
 +
 +
 +
 +
s.195 - interations                                                                          ... (maybe iteration?)
 +
 +
 +
 +
s.195 - In the discussion of data structures.we will see that it is possible, without        ... " . "  ... " constrol " ... " to to "
 +
new constrol constructs, to to define powerful iterators applicable to a wide
 +
range of object structures.
 +
 +
s.197 - In addition, as yo may have       ... you
 +
 +
 +
 +
s.199 - The rationale for this policy—which may appear surprising at first—is that a          ... " lists " maybe ?!
 +
Multi-branch explicitly list a set of expected cases and their desired treatment.
 +
 +
 +
s.208 - The last example of our study of conditionals provide a good case for defining        ... " provides "
 +
a “functional abstraction” in the form of a routine.

Revision as of 05:07, 12 February 2009

Typos for "Touch of Class" draft

How to report a typo

Report it under the appropriate chapter title below. Please include the original section number. The page number is less important as it changes. The best is to copy-paste the relevant text extract and mark the faulty word(s), for example by **...**. It is convenient to show the extract as a display (start lines with spaces) and also, if you wish, to give your name.

For example:

In section 16.1, just after the first figure: 
Money, Pass, Map, Louvre, Orsay
Money, Pass, **Louvre, Map**, Orsay
Money, Map, Pass, Louvre, Orsay

The second one is wrong. -- Luchin Doblies, 1.12.2008.

(Indeed Luchin Doblies reported this error -- thanks! BM.) The entry should appear in the section for the corresponding chapter (it does now). I am sorry that I will not be able to respond to individual comments, but I will consider all reports and correct the text as needed.

As errors get corrected I strike them out.

Preface etc.

from Draft 22.02, 23 August 08 19:15 (Santa Barbara)
page v, section Preface.
in the 'note' clause of the class PREFACING.
replace:
  "]
by:
  ]"
-- Eric Bezault, 12 December 2008


from Draft 22.02, 23 August 08 19:15 (Santa Barbara)

page xiii, section student_preface/Abstraction.
middle of second paragraph.
replace:
  you'll been encouraged
by:
  you'll be encouraged
-- Eric Bezault, 12 December 2008



from Draft 22.02, 23 August 08 19:15 (Santa Barbara)

page xv, section instructor_preface.
second paragraph, third bullet.
text:
  Eiffel and Design by Contract
action:
  put the last letter of "Contract" in bold.
-- Eric Bezault, 12 December 2008


from Draft 22.02, 23 August 08 19:15 (Santa Barbara)
page xxi, section student_preface/OUTSIDE-IN: THE INVERTED CURRICULUM/The supporting software.
middle of second paragraph.
replace:
  In the seond week
by:
  In the second week
-- Eric Bezault, 12 December 2008


from Draft 22.02, 23 August 08 19:15 (Santa Barbara)
page xxv, section student_preface/TECHNOLOGY CHOICES/Eiffel and Design by Contract.
right margin.
replace:
  at tinyurl.com/cq8gw..
by:
  at tinyurl.com/cq8gw.
action:
  remove extra dot.
-- Eric Bezault, 12 December 2008


from Draft 22.02, 23 August 08 19:15 (Santa Barbara)

page xxix, section student_preface/TECHNOLOGY CHOICES/Why not Java?.
replace:
  university context,it is meant
by:
  university context, it is meant
action:
  space after comma.
-- Eric Bezault, 12 December 2008

 

from Draft 22.02, 23 August 08 19:15 (Santa Barbara)

page xxxiv, section student_preface/TOPICS COVERED.
paragraph starting with "Part III"
text:
  It makes no attempt at
action:
  missing end of sentence.
-- Eric Bezault, 12 December 2008

1 The industry of pure ideas

2 Dealing with objects


from Draft 22.02, 23 August 08 19:15 (Santa Barbara)
page 17.
second paragraph.
text:
  Everything else you will learn here and on the supporting Web site
action:
  missing end of sentence.
-- Eric Bezault, 12 December 2008

 

from Draft 22.02, 23 August 08 19:15 (Santa Barbara)

page 21, section 2.2 OBJECTS AND CALLS/Editing the text.
second paragraph.
replace:
  important element ofprogram texts
by:
  important element of program texts
action:
  add space.
-- Eric Bezault, 12 December 2008


from Draft 22.02, 23 August 08 19:15 (Santa Barbara)
page 25, section 2.2 OBJECTS AND CALLS/Dissecting the program.
second paragraph.
replace:
  Previous rules rules addressed
by:
  Previous rules addressed
-- Eric Bezault, 12 December 2008


 

from Draft 22.02, 23 August 08 19:15 (Santa Barbara)

page 25, section 2.2 OBJECTS AND CALLS/Dissecting the program.
second paragraph.
text:
  Then to highlight Line 8 we execute
action:
  the code "Line8.highlight" appears on the next page after the end of
  the paragraph instead of embedded within the paragraph.
-- Eric Bezault, 12 December 2008

    I don't see the problem now so I assume it was fixed earlier
 

from Draft 22.02, 23 August 08 19:15 (Santa Barbara)

page 31, section 2.3 WHAT IS AN OBJECTS/Objects: a definition.
second paragraph.
replace:
  It is also s good
by:
  It is also good
-- Eric Bezault, 12 December 2008

   I don't see this, so I assume the sentence was removed.

3 Program structure basics

from Draft 22.02, 23 August 08 19:15 (Santa Barbara)
page 43, section 3.5 NESTING AND THE SYNTAX STRUCTURE.
in the gragh.
replace:
  -- Show city info including a monument..
by:
  -- Show city info including a monument.
action:
  remove one dot.
-- Eric Bezault, 12 December 2008

from Draft 22.02, 23 August 08 19:15 (Santa Barbara)
page 48, section 3-E.1 Vocabulary.
in right margin.
text:
  The definition of "class" may be less precise than the others.
action:
  remove this text. It's copy/pasted from 2-E.1
-- Eric Bezault, 12 December 2008

4 The interface of a class

from Draft 22.02, 23 August 08 19:15 (Santa Barbara)
page 52, section 4.2 CLASSES.
in sixth paragraph, second bullet.
text:
  there some names such as Paris and Route1
action:
  The 's' in 'such' should not be in italic.
-- Eric Bezault, 12 December 2008

5 Just Enough Logic

6 Creating objects and executing systems

7 Control structures

8 Routines, functional abstraction and information hiding

9 Variables, assignment and references

PART II: HOW THINGS WORK

10 Just enough hardware

11 Describing syntax

12 Programming languages

13 Compilers and friends: the basic software tools

PART III: ALGORITHMS AND DATA STRUCTURES

14 Fundamental data structures, genericity, and algorithm complexity

15 Recursion and trees

16 Devising and engineering an algorithm: Topological Sort

In section 16.1, just after the first figure: 
Money, Pass, Map, Louvre, Orsay
Money, Pass, **Louvre, Map**, Orsay
Money, Map, Pass, Louvre, Orsay

The second one is wrong. -- Luchin Doblies, 1.12.2008.


Section 16.3, topic "Cycles in the constraints", line 4-5:
"A topological sort program gets its input **in the form individual ordering constraints**, ..." 

Missing "of": "in the form of" -- L.D., 1.12.2008


Section 16.4, topic "The Loop", second last line of the code-square:
if “Any elements remain” then-- Report cycle:
cycle_found := True
“Insert these elements into **cyclist**”
end

I believe cyclist should be plural, "cyclists". -- L.D., 1.12.2008


Section 16.4, topic "The Candidates", second page, line 4: 
"What concrete **date** structure should we use for candidates?"

"date structure" instead of "data structure". -- L.D., 1.12.2008


Section 16.7, second line:
"..., such as the "<“ relation on numbers."

The quotes do not match in font. -- L.D., 1.12.2008

PART IV: OBJECT-ORIENTED TECHNIQUES

17 Inheritance

18 Operations as objects: agents and lambda calculus

19 Event-driven design

20 Program correctness and proofs

PART V: TOWARDS SOFTWARE ENGINEERING

21 Introduction to software engineering

PART VI: APPENDICES

A Using the EiffelStudio environment

B Eiffel syntax specification

C An introduction to C++ (material by Nadia Polikarpova)

D An introduction to Java (material by Marco Piccioni)

E An introduction to C# (material by Benjamin Morandi)

Typos reported by Ernst Leisi (no chapter numbers given)

(Second version [the one with 910 pages])


s. 51 - What this tells us is that the objects our programs manipulate classify ... sounds kind of strange... the objects our programs

      themselves naturally into certain classes


s. 59 - Line8.i_th (2) is “La_Motte” and so on. ... there is no La_Motte on the picture


s. 61 - Line8.remove_all_remove_all_segments ... why two times remove_all ?


s. 69 - invariant (where * denotes multiplication: ... missing " ) "


s. 84 - (a = b) or (c and ((not d) = e))) ... the last " ) " is one too much or there should be one at the beginning ( " ( " )


s. 97 - Line8.i_th (2)).is_exchange ... " ) " in both examples


s. 98 - mathematicians often use a period “.” or a comma “,”; ... the last -> " <- is not written with normal "style" :O


s.100 - {3, 7, 911, 13, 15}: ... missing " , " between 9 and 11


s.111 - The first thing we need in our class is a feature representing the line to be built. ... "We call it (the feature) fancy_line... but the feature is " build_a_line " i guess

       We call it fancy_line.


s.121 - line_exists: s /= Void ... line_exists: l /= Void


s.125 - instruction as executed by clients is jot just create stop1 ... jot ? ^^


s.125 - line_exists: s /= Void ... line_exists: l /= Void


s.128 - 1 • he precondition of its creation procedure. ... missing " T "


s.132 - One immediate question is how > you will you < specify the root class and root creation procedure of a system.


s.134 - This is true of unqualified calls: ... true for ?


s.136 - made of components to be developed autonomously and combined in may different ways. ... many


s.141 - 687 + 42 = 29 ... 729


s.146 - It is the control structure we have been using implicitly in all the examples so far, ... they would be executed (i guess)

       since we have been writing instructions under the assumption that they would
       executed in the order given.

s.151 - full.extend (metro_1)] ... " ] "


s.152 - this is true in both its “” and its “”. ... its what?


s.162 - Afterexecution ... After execution


s.163 - If you have ever try to use a program only to see it “hang”, it might very ... tried


s.171 - Of course this convention is not there by accident, but intended ... to ensure ?

       precisely ensure that the typical iteration scheme on a list


s.183 - chosen by the programmer, who lets the compiler maps them to memory ... lets the compiler map them

       locations.


s.192 - part of the loop, The loop correctness rules ... , T


s.195 - interations ... (maybe iteration?)


s.195 - In the discussion of data structures.we will see that it is possible, without ... " . " ... " constrol " ... " to to " new constrol constructs, to to define powerful iterators applicable to a wide range of object structures.

s.197 - In addition, as yo may have ... you


s.199 - The rationale for this policy—which may appear surprising at first—is that a ... " lists " maybe ?! Multi-branch explicitly list a set of expected cases and their desired treatment.


s.208 - The last example of our study of conditionals provide a good case for defining ... " provides " a “functional abstraction” in the form of a routine.