This file was originally just copied from the C book as a placeholder. It now contains the actual chapters from the actual book.

This commit is contained in:
Robert Tice
2017-11-21 17:37:09 -05:00
parent dc449d11ed
commit eb6e7ce454

View File

@@ -1,70 +1,108 @@
---
parts:
- title: "The Basics"
- title: "Introduction"
chapters:
- title: "Short rationale for migrating from Ada to C"
- title: "Preface"
url: "part1-chapter1"
- title: "Compilation environments, multi language builds, bare metal v.s. Embedded linux"
- title: "Basics"
url: "part1-chapter2"
- title: "Preprocessor macros vs build configurations"
- title: "Compilation Unit Structure"
url: "part1-chapter3"
- title: "Introducing your first piece of Ada in an existing C application"
url: "part1-chapter4"
- title: "Overview of Ada basics (expressions, control flow, types, record, arrays)"
url: "part1-chapter5"
- title: "Structure blocks (packages, encapsulation, genericity)"
url: "part1-chapter6"
- title: "Interfacing with C"
url: "part1-chapter7"
- title: "Use case #1 mathematical computations with physical dimension checking"
url: "part1-chapter8"
- title: "The Low-Level"
- title: "Statements, Declarations, and Control Structures"
chapters:
- title: "Inline Assembly"
- title: "Statements and Declarations"
url: "part2-chapter1"
- title: "Bit masks"
- title: "Conditions"
url: "part2-chapter2"
- title: "Number wrap around"
- title: "Loops"
url: "part2-chapter3"
- title: "Register overlays"
url: "part2-chapter4"
- title: "Memory mapped communication"
url: "part2-chapter5"
- title: "Streams"
url: "part2-chapter6"
- title: "Endianness"
url: "part2-chapter7"
- title: "The run-times (boot loader, BSP…)"
url: "part2-chapter8"
- title: "Ravenscar tasking"
url: "part2-chapter9"
- title: "ARM environment (svd2ada)"
url: "part2-chapter10"
- title: "Use case #2 [???]"
url: "part2-chapter11"
- title: "Typical Algorithms"
- title: "Type System"
chapters:
- title: "List searches"
- title: "Strong Typing"
url: "part3-chapter1"
- title: "Switch debounce"
- title: "Language-Defined Types"
url: "part3-chapter2"
- title: "Lookup tables"
- title: "Application-Defined Types"
url: "part3-chapter3"
- title: "Large number support"
- title: "Type Ranges"
url: "part3-chapter4"
- title: "Use case #3 [???]"
- title: "Generalized Type Contracts: Subtype Predicates"
url: "part3-chapter5"
- title: "Verifiable Programming"
- title: "Attributes"
url: "part3-chapter6"
- title: "Arrays and Strings"
url: "part3-chapter7"
- title: "Heterogeneous Data Structures"
url: "part3-chapter8"
- title: "Pointers"
url: "part3-chapter9"
- title: "Functions and Procedures"
chapters:
- title: "Using SPARK subset (Stone)"
- title: "General Form"
url: "part4-chapter1"
- title: "Proving data flow (Bronze)"
- title: "Overloading"
url: "part4-chapter2"
- title: "Installing more provers and proving Absence of Run-Time Errors (Silver)"
- title: "Subprogram Contracts"
url: "part4-chapter3"
- title: "Specifying and verifying defensive code (Gold)"
url: "part4-chapter4"
- title: "Use case #4 The crazyflies"
url: "part4-chapter5"
- title: "Packages"
chapters:
- title: "Declaration Protection"
url: "part5-chapter1"
- title: "Hierarchical Packages"
url: "part5-chapter2"
- title: "Using Entities from Packages"
url: "part5-chapter3"
- title: "Classes and Object Oriented Programming"
chapters:
- title: "Primitive Subprograms"
url: "part6-chapter1"
- title: "Derivation and Dynamic Dispatch"
url: "part6-chapter2"
- title: "Constructors and Destructors"
url: "part6-chapter3"
- title: "Encapsulation"
url: "part6-chapter4"
- title: "Abstract Types and Interfaces"
url: "part6-chapter5"
- title: "Invariants"
url: "part6-chapter6"
- title: "Generics"
chapters:
- title: "Generic Subprograms"
url: "part7-chapter1"
- title: "Generic Packages"
url: "part7-chapter2"
- title: "Generic Parameters"
url: "part7-chapter3"
- title: "Exceptions"
chapters:
- title: "Standard Exceptions"
url: "part8-chapter1"
- title: "Custom Exceptions"
url: "part8-chapter2"
- title: "Concurrency"
chapters:
- title: "Tasks"
url: "part9-chapter1"
- title: "Rendezvous"
url: "part9-chapter2"
- title: "Selective Rendezvous"
url: "part9-chapter3"
- title: "Protected Objects"
url: "part9-chapter4"
- title: "Low Level Programming"
chapters:
- title: "Representation Clauses"
url: "part10-chapter1"
- title: "Embedded Assembly Code"
url: "part10-chapter2"
- title: "Interfacing with C"
url: "part10-chapter3"
- title: "Conclusions"
chapters:
- title: "Parting Thoughts"
url: "part11-chapter1"
- title: "References"
url: "part11-chapter2"
...