Errata

Real World OCaml

Errata for Real World OCaml

Submit your own errata for this product.

The errata list is a list of errors and their corrections that were found after the product was released.

The following errata were submitted by our customers and have not yet been approved or disproved by the author or editor. They solely represent the opinion of the customer.

Color Key: Serious technical mistake Minor technical mistake Language or formatting error Typo Question Note Update

Version Location Description Submitted by Date submitted
Chapter 4, section Multifile Programs and Modules

The last paragraph of Chapter 4, section Multifile Programs and Modules writes

Note that the resulting code can still be built with ocamlbuild, which will discover dependencies and realize that counter.ml needs to be compiled.

Shouldn't this be

Note that the resulting code can still be built with corebuild, which will discover dependencies and realize that counter.ml needs to be compiled.

since we are using Core.std in the program ?

jehanzeb khan  Aug 25, 2015 
Printed Page 50
2nd paragraph

I think the phrase:

"extension allocates a new list element but change any of the existing ones"

should have "doesn't change" instead of "change"

Brian Adkins  Sep 19, 2014 
Printed Page 53
OCaml utop (part 10)

When attempting to copy/paste the (part 10) snippet into utop, I get the following error:

utop # let run_bench tests =
Bench.bench
~ascii_table:true
~display:Textutils.Ascii_table.Display.column_titles
tests
;;
Error: The function applied to this argument has type ?run_config:Bench.Run_config.t -> ?analysis_configs:Bench.Analysis_config.t list -> ?display_config:Bench.Display_config.t -> ?save_to_file:(Bench.Measurement.t -> string) -> unit
This argument cannot be applied with label ~ascii_table

When I looked up the doc for Bench.bench, I don't see a reference to ~ascii_table or ~display

Brian Adkins  Sep 19, 2014 
Printed, PDF Page 53
OCaml utop (part 10)

The example using core_bench, and in particular the part which says:

[cite]
Bench.bench
~ascii_table:true
~display:Textutils.Ascii_table.Display.column_titles
tests
[/cite]

Fails to compile/execute.

Stéphane Zuckerman  Apr 07, 2015 
PDF Page 76
last paragraph

howe defined => how we defined

Fouad Mardini  Jul 14, 2013 
Printed Page 78

Calculations of average are wrong, they should be
( x + y ) / of_int 2

J?rgen Tegn  Feb 23, 2014 
Printed Page 156
3rd code block

Due to an off-by-one error, the fib and fib_norec implementation give different results for `fib 20` : 10946 and 6765, respectively.

Anonymous  Jun 01, 2014 
Printed Page 294
Bottom indented section

Text before (URL) just reads 'OCaml' rather than indicating what the link is about.

Should read 'Yojson'

David Drysdale  Feb 28, 2014 
Printed Page 303
Last para before indented section

Text before (URL) just reads 'OCaml' rather than indicating what the link is about.

Should read 'ATDgen'

David Drysdale  Feb 28, 2014 
Printed Page 393
Middle bullet

Text before (URL) just reads 'OCaml' rather than indicating what the link is about.

Should maybe read 'resource' or 'page'.

David Drysdale  Feb 28, 2014 
Printed Page 402
Last paragraph

'there is a limit around 240 variants' -> 'there is a limit of around 240 variants'

David Drysdale  Feb 28, 2014 
Printed Page 406
Last paragraph

Text before (URL) just reads 'OCaml' rather than indicating what the link is about.

Should read 'LACAML'

David Drysdale  Feb 28, 2014 
PDF Page 421
1st paragraph

The first sentence reads "Compiling source code into executable programs is a fairly complex libraries, linkers,
and assemblers."

Something seems to be missing between "complex" and "libraries".

Perhaps change this to:

"Compiling source code into executable programs is a fairly complex process involving libraries, linkers,
and assemblers."

Daniel Dickman  May 20, 2014 
Printed Page 456
Last line

Text before (URL) just reads 'OCaml' rather than indicating what the link is about.

Should read 'manual'.

David Drysdale  Mar 02, 2014