%PDF-1.2
7 0 obj
[5 0 R/XYZ 123.81 734.95]
endobj
13 0 obj
<<
/Title(Discovering Core ML)
/A<<
/S/GoTo
/D(section.1.1)
>>
/Parent 12 0 R
/Next 14 0 R
>>
endobj
14 0 obj
<<
/Title(The syntax of Core ML)
/A<<
/S/GoTo
/D(section.1.2)
>>
/Parent 12 0 R
/Prev 13 0 R
/Next 15 0 R
>>
endobj
16 0 obj
<<
/Title(Reduction semantics)
/A<<
/S/GoTo
/D(subsection.1.3.1)
>>
/Parent 15 0 R
/Next 17 0 R
>>
endobj
17 0 obj
<<
/Title(Properties of the reduction)
/A<<
/S/GoTo
/D(subsection.1.3.2)
>>
/Parent 15 0 R
/Prev 16 0 R
/Next 18 0 R
>>
endobj
18 0 obj
<<
/Title(Big-step operational semantics)
/A<<
/S/GoTo
/D(subsection.1.3.3)
>>
/Parent 15 0 R
/Prev 17 0 R
>>
endobj
15 0 obj
<<
/Title(The dynamic semantics of Core ML)
/A<<
/S/GoTo
/D(section.1.3)
>>
/Parent 12 0 R
/Prev 14 0 R
/First 16 0 R
/Last 18 0 R
/Count -3
/Next 19 0 R
>>
endobj
20 0 obj
<<
/Title(Types and programs)
/A<<
/S/GoTo
/D(subsection.1.4.1)
>>
/Parent 19 0 R
/Next 21 0 R
>>
endobj
21 0 obj
<<
/Title(Type inference)
/A<<
/S/GoTo
/D(subsection.1.4.2)
>>
/Parent 19 0 R
/Prev 20 0 R
/Next 22 0 R
>>
endobj
22 0 obj
<<
/Title(Unification for simple types)
/A<<
/S/GoTo
/D(subsection.1.4.3)
>>
/Parent 19 0 R
/Prev 21 0 R
/Next 23 0 R
>>
endobj
23 0 obj
<<
/Title(Polymorphism)
/A<<
/S/GoTo
/D(subsection.1.4.4)
>>
/Parent 19 0 R
/Prev 22 0 R
>>
endobj
19 0 obj
<<
/Title(The static semantics of Core ML)
/A<<
/S/GoTo
/D(section.1.4)
>>
/Parent 12 0 R
/Prev 15 0 R
/First 20 0 R
/Last 23 0 R
/Count -4
/Next 24 0 R
>>
endobj
25 0 obj
<<
/Title(Fix-point combinator)
/A<<
/S/GoTo
/D(subsection.1.5.1)
>>
/Parent 24 0 R
/Next 26 0 R
>>
endobj
26 0 obj
<<
/Title(Recursive types)
/A<<
/S/GoTo
/D(subsection.1.5.2)
>>
/Parent 24 0 R
/Prev 25 0 R
/Next 27 0 R
>>
endobj
24 0 obj
<<
/Title(Recursion)
/A<<
/S/GoTo
/D(section.1.5)
>>
/Parent 12 0 R
/Prev 19 0 R
/First 25 0 R
/Last 27 0 R
/Count -3
>>
endobj
27 0 obj
<<
/Title(Type inference v.s. type checking)
/A<<
/S/GoTo
/D(subsection.1.5.3)
>>
/Parent 24 0 R
/Prev 26 0 R
>>
endobj
12 0 obj
<<
/Title(Core ML)
/A<<
/S/GoTo
/D(chapter.1)
>>
/Parent 11 0 R
/First 13 0 R
/Last 24 0 R
/Count -5
/Next 28 0 R
>>
endobj
30 0 obj
<<
/Title(Examples in OCaml)
/A<<
/S/GoTo
/D(subsection.2.1.1)
>>
/Parent 29 0 R
/Next 31 0 R
>>
endobj
31 0 obj
<<
/Title(Formalization of superficial pattern matching)
/A<<
/S/GoTo
/D(subsection.2.1.2)
>>
/Parent 29 0 R
/Prev 30 0 R
/Next 32 0 R
>>
endobj
32 0 obj
<<
/Title(Recursive datatype definitions)
/A<<
/S/GoTo
/D(subsection.2.1.3)
>>
/Parent 29 0 R
/Prev 31 0 R
/Next 33 0 R
>>
endobj
33 0 obj
<<
/Title(Type abbreviations)
/A<<
/S/GoTo
/D(subsection.2.1.4)
>>
/Parent 29 0 R
/Prev 32 0 R
/Next 34 0 R
>>
endobj
34 0 obj
<<
/Title(Record types)
/A<<
/S/GoTo
/D(subsection.2.1.5)
>>
/Parent 29 0 R
/Prev 33 0 R
>>
endobj
29 0 obj
<<
/Title(Data types and pattern matching)
/A<<
/S/GoTo
/D(section.2.1)
>>
/Parent 28 0 R
/First 30 0 R
/Last 34 0 R
/Count -5
/Next 35 0 R
>>
endobj
36 0 obj
<<
/Title(Formalization of the store)
/A<<
/S/GoTo
/D(subsection.2.2.1)
>>
/Parent 35 0 R
/Next 37 0 R
>>
endobj
37 0 obj
<<
/Title(Type soundness)
/A<<
/S/GoTo
/D(subsection.2.2.2)
>>
/Parent 35 0 R
/Prev 36 0 R
/Next 38 0 R
>>
endobj
38 0 obj
<<
/Title(Store and polymorphism)
/A<<
/S/GoTo
/D(subsection.2.2.3)
>>
/Parent 35 0 R
/Prev 37 0 R
/Next 39 0 R
>>
endobj
39 0 obj
<<
/Title(Multiple-field mutable records)
/A<<
/S/GoTo
/D(subsection.2.2.4)
>>
/Parent 35 0 R
/Prev 38 0 R
>>
endobj
35 0 obj
<<
/Title(Mutable storage and side effects)
/A<<
/S/GoTo
/D(section.2.2)
>>
/Parent 28 0 R
/Prev 29 0 R
/First 36 0 R
/Last 39 0 R
/Count -4
/Next 40 0 R
>>
endobj
40 0 obj
<<
/Title(Exceptions)
/A<<
/S/GoTo
/D(section.2.3)
>>
/Parent 28 0 R
/Prev 35 0 R
>>
endobj
28 0 obj
<<
/Title(The core of OCaml)
/A<<
/S/GoTo
/D(chapter.2)
>>
/Parent 11 0 R
/Prev 12 0 R
/First 29 0 R
/Last 40 0 R
/Count -3
/Next 41 0 R
>>
endobj
43 0 obj
<<
/Title(Basic examples)
/A<<
/S/GoTo
/D(subsection.3.1.1)
>>
/Parent 42 0 R
/Next 44 0 R
>>
endobj
44 0 obj
<<
/Title(Polymorphism, subtyping, and parametric classes)
/A<<
/S/GoTo
/D(subsection.3.1.2)
>>
/Parent 42 0 R
/Prev 43 0 R
>>
endobj
42 0 obj
<<
/Title(Discovering objects and classes)
/A<<
/S/GoTo
/D(section.3.1)
>>
/Parent 41 0 R
/First 43 0 R
/Last 44 0 R
/Count -2
/Next 45 0 R
>>
endobj
46 0 obj
<<
/Title(Type-checking objects)
/A<<
/S/GoTo
/D(subsection.3.2.1)
>>
/Parent 45 0 R
/Next 47 0 R
>>
endobj
47 0 obj
<<
/Title(Typing classes)
/A<<
/S/GoTo
/D(subsection.3.2.2)
>>
/Parent 45 0 R
/Prev 46 0 R
>>
endobj
45 0 obj
<<
/Title(Understanding objects and classes)
/A<<
/S/GoTo
/D(section.3.2)
>>
/Parent 41 0 R
/Prev 42 0 R
/First 46 0 R
/Last 47 0 R
/Count -2
/Next 48 0 R
>>
endobj
48 0 obj
<<
/Title(Advanced uses of objects)
/A<<
/S/GoTo
/D(section.3.3)
>>
/Parent 41 0 R
/Prev 45 0 R
>>
endobj
41 0 obj
<<
/Title(The object layer)
/A<<
/S/GoTo
/D(chapter.3)
>>
/Parent 11 0 R
/Prev 28 0 R
/First 42 0 R
/Last 48 0 R
/Count -3
/Next 49 0 R
>>
endobj
51 0 obj
<<
/Title(Basic modules)
/A<<
/S/GoTo
/D(subsection.4.1.1)
>>
/Parent 50 0 R
/Next 52 0 R
>>
endobj
52 0 obj
<<
/Title(Parameterized modules)
/A<<
/S/GoTo
/D(subsection.4.1.2)
>>
/Parent 50 0 R
/Prev 51 0 R
>>
endobj
50 0 obj
<<
/Title(Using modules)
/A<<
/S/GoTo
/D(section.4.1)
>>
/Parent 49 0 R
/First 51 0 R
/Last 52 0 R
/Count -2
/Next 53 0 R
>>
endobj
53 0 obj
<<
/Title(Understanding modules)
/A<<
/S/GoTo
/D(section.4.2)
>>
/Parent 49 0 R
/Prev 50 0 R
/Next 54 0 R
>>
endobj
54 0 obj
<<
/Title(Advanced uses of modules)
/A<<
/S/GoTo
/D(section.4.3)
>>
/Parent 49 0 R
/Prev 53 0 R
>>
endobj
49 0 obj
<<
/Title(The module language)
/A<<
/S/GoTo
/D(chapter.4)
>>
/Parent 11 0 R
/Prev 41 0 R
/First 50 0 R
/Last 54 0 R
/Count -3
/Next 55 0 R
>>
endobj
56 0 obj
<<
/Title(Overlapping)
/A<<
/S/GoTo
/D(section.5.1)
>>
/Parent 55 0 R
/Next 57 0 R
>>
endobj
58 0 obj
<<
/Title(Classes as module components)
/A<<
/S/GoTo
/D(subsection.5.2.1)
>>
/Parent 57 0 R
/Next 59 0 R
>>
endobj
57 0 obj
<<
/Title(Combining modules and classes)
/A<<
/S/GoTo
/D(section.5.2)
>>
/Parent 55 0 R
/Prev 56 0 R
/First 58 0 R
/Last 59 0 R
/Count -2
>>
endobj
59 0 obj
<<
/Title(Classes as pre-modules)
/A<<
/S/GoTo
/D(subsection.5.2.2)
>>
/Parent 57 0 R
/Prev 58 0 R
>>
endobj
55 0 obj
<<
/Title(Mixing modules and objects)
/A<<
/S/GoTo
/D(chapter.5)
>>
/Parent 11 0 R
/Prev 49 0 R
/First 56 0 R
/Last 57 0 R
/Count -2
/Next 60 0 R
>>
endobj
60 0 obj
<<
/Title(First steps in OCaml)
/A<<
/S/GoTo
/D(appendix.A)
>>
/Parent 11 0 R
/Prev 55 0 R
/Next 61 0 R
>>
endobj
62 0 obj
<<
/Title(Variant types)
/A<<
/S/GoTo
/D(section.B.1)
>>
/Parent 61 0 R
/Next 63 0 R
>>
endobj
63 0 obj
<<
/Title(Labeled arguments)
/A<<
/S/GoTo
/D(section.B.2)
>>
/Parent 61 0 R
/Prev 62 0 R
/Next 64 0 R
>>
endobj
64 0 obj
<<
/Title(Optional arguments)
/A<<
/S/GoTo
/D(section.B.3)
>>
/Parent 61 0 R
/Prev 63 0 R
>>
endobj
61 0 obj
<<
/Title(Variant and labeled arguments)
/A<<
/S/GoTo
/D(appendix.B)
>>
/Parent 11 0 R
/Prev 60 0 R
/First 62 0 R
/Last 64 0 R
/Count -3
/Next 65 0 R
>>
endobj
66 0 obj
[5 0 R/XYZ 123.81 715.15]
endobj
67 0 obj
<<
/Type/Encoding
/Differences[0/Gamma/Delta/Theta/Lambda/Xi/Pi/Sigma/Upsilon/Phi/Psi/Omega/ff/fi/fl/ffi/ffl/dotlessi/dotlessj/grave/acute/caron/breve/macron/ring/cedilla/germandbls/ae/oe/oslash/AE/OE/Oslash/suppress/exclam/quotedblright/numbersign/dollar/percent/ampersand/quoteright/parenleft/parenright/asterisk/plus/comma/hyphen/period/slash/zero/one/two/three/four/five/six/seven/eight/nine/colon/semicolon/exclamdown/equal/questiondown/question/at/A/B/C/D/E/F/G/H/I/J/K/L/M/N/O/P/Q/R/S/T/U/V/W/X/Y/Z/bracketleft/quotedblleft/bracketright/circumflex/dotaccent/quoteleft/a/b/c/d/e/f/g/h/i/j/k/l/m/n/o/p/q/r/s/t/u/v/w/x/y/z/endash/emdash/hungarumlaut/tilde/dieresis/suppress
160/space/Gamma/Delta/Theta/Lambda/Xi/Pi/Sigma/Upsilon/Phi/Psi 173/Omega/ff/fi/fl/ffi/ffl/dotlessi/dotlessj/grave/acute/caron/breve/macron/ring/cedilla/germandbls/ae/oe/oslash/AE/OE/Oslash/suppress/dieresis]
>>
endobj
70 0 obj
<<
/Encoding 67 0 R
/Type/Font
/Subtype/Type1
/Name/F1
/FontDescriptor 69 0 R
/BaseFont/NNRXYJ+CMBX12
/FirstChar 33
/LastChar 196
/Widths[342.6 581 937.5 562.5 937.5 875 312.5 437.5 437.5 562.5 875 312.5 375 312.5
562.5 562.5 562.5 562.5 562.5 562.5 562.5 562.5 562.5 562.5 562.5 312.5 312.5 342.6
875 531.2 531.2 875 849.5 799.8 812.5 862.3 738.4 707.2 884.3 879.6 419 581 880.8
675.9 1067.1 879.6 844.9 768.5 844.9 839.1 625 782.4 864.6 849.5 1162 849.5 849.5
687.5 312.5 581 312.5 562.5 312.5 312.5 546.9 625 500 625 513.3 343.7 562.5 625 312.5
343.7 593.7 312.5 937.5 625 562.5 625 593.7 459.5 443.8 437.5 625 593.7 812.5 593.7
593.7 500 562.5 1125 562.5 562.5 562.5 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 675.9 937.5 875 787 750 879.6 812.5 875 812.5 875 0 0 812.5
656.2 625 625 937.5 937.5 312.5 343.7 562.5 562.5 562.5 562.5 562.5 849.5 500 574.1
812.5 875 562.5 1018.5 1143.5 875 312.5 562.5]
>>
endobj
71 0 obj
<<
/Rect[179.71 532.72 267.33 551.93]
/Type/Annot
/Subtype/Link
/Border[0 0 1]
/C[0 1 1]
/A<<
/S/URI
/URI(http://caml.inria.fr/ocaml/)
>>
>>
endobj
72 0 obj
<<
/Type/Encoding
/Differences[0/Gamma/Delta/Theta/Lambda/Xi/Pi/Sigma/Upsilon/Phi/Psi/Omega/ff/fi/fl/ffi/ffl/dotlessi/dotlessj/grave/acute/caron/breve/macron/ring/cedilla/germandbls/ae/oe/oslash/AE/OE/Oslash/suppress/exclam/quotedblright/numbersign/sterling/percent/ampersand/quoteright/parenleft/parenright/asterisk/plus/comma/hyphen/period/slash/zero/one/two/three/four/five/six/seven/eight/nine/colon/semicolon/exclamdown/equal/questiondown/question/at/A/B/C/D/E/F/G/H/I/J/K/L/M/N/O/P/Q/R/S/T/U/V/W/X/Y/Z/bracketleft/quotedblleft/bracketright/circumflex/dotaccent/quoteleft/a/b/c/d/e/f/g/h/i/j/k/l/m/n/o/p/q/r/s/t/u/v/w/x/y/z/endash/emdash/hungarumlaut/tilde/dieresis/suppress
160/space/Gamma/Delta/Theta/Lambda/Xi/Pi/Sigma/Upsilon/Phi/Psi 173/Omega/ff/fi/fl/ffi/ffl/dotlessi/dotlessj/grave/acute/caron/breve/macron/ring/cedilla/germandbls/ae/oe/oslash/AE/OE/Oslash/suppress/dieresis]
>>
endobj
75 0 obj
<<
/Encoding 72 0 R
/Type/Font
/Subtype/Type1
/Name/F2
/FontDescriptor 74 0 R
/BaseFont/TDQETV+CMTI12
/FirstChar 33
/LastChar 196
/Widths[300 500 800 755.2 800 750 300 400 400 500 750 300 350 300 500 500 500 500
500 500 500 500 500 500 500 300 300 300 750 500 500 750 726.9 688.4 700 738.4 663.4
638.4 756.7 726.9 376.9 513.4 751.9 613.4 876.9 726.9 750 663.4 750 713.4 550 700
726.9 726.9 976.9 726.9 726.9 600 300 500 300 500 300 300 500 450 450 500 450 300
450 500 300 300 450 250 800 550 500 500 450 412.5 400 325 525 450 650 450 475 400
500 1000 500 500 500 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 613.4 800 750 676.9 650 726.9 700 750 700 750 0 0 700 600 550 575 862.5 875
300 325 500 500 500 500 500 814.8 450 525 700 700 500 863.4 963.4 750 250 500]
>>
endobj
76 0 obj
<<
/Rect[128.78 297.72 261.22 318.08]
/Type/Annot
/Subtype/Link
/Border[0 0 1]
/C[0 1 1]
/A<<
/S/URI
/URI(http://cristal.inria.fr/~remy)
>>
>>
endobj
78 0 obj
<<
/Filter[/FlateDecode]
/Length 294
>>
stream
xڭMO0
zN{Q$@1i'4vB\lR)>Ϫ
|