Computer ScienceScience & MathematicsEconomics & FinanceBusiness & ManagementPolitics & GovernmentHistoryPhilosophy

Think OCaml

How to Think Like a (Functional) Programmer

by Allen Downey, Nicholas Monje

Think OCaml

Subscribe to new books via dBooks.org telegram channel

Join
DescriptionTable of ContentsDetailsHashtagsReport an issue

Book Description

How to Think Like a Computer Scientist is an introductory programming book based on the OCaml language. It is a modified version of Think Python by Allen Downey. It is intended for newcomers to programming and also those who know some programming but want to learn programming in the function-oriented paradigm, or those who simply want to learn OCaml.

OCaml is a powerful high-level programming language with a large emphasis on speed and efficiency.

This text leverages the power of the language to teach the reader important concepts in computer science and software design, with an emphasis in experimentation and self-directed learning.

This open book is licensed under a GNU Free Documentation License (GNU FDL). You can download Think OCaml ebook for free in PDF format (0.6 MB).

Table of Contents

Chapter 1
The way of the program
Chapter 2
Variables and Expressions
Chapter 3
Functions
Chapter 4
Program Flow
Chapter 5
Recursive Functions
Chapter 6
Algorithms
Chapter 7
Strings
Chapter 8
Lists
Chapter 9
Case Study: Regular Expressions
Chapter 10
Putting the O in OCaml, Part 1: Imperative programming
Chapter 11
Arrays
Chapter 12
Hashtables
Chapter 13
Tuples
Chapter 14
Records and Custom Data Structures
Chapter 15
Putting the O in Ocaml Part 2: Objects and Classes
Chapter 16
Case study: data structure selection
Appendix A
Debugging

Book Details

Title
Think OCaml
Subject
Computer Science
Publisher
Green Tea Press
Published
2011
Pages
142
Edition
1
Language
English
PDF Size
0.6 MB
License
GNU FDL

Related Books

Computational Thinking Education
This book offers a comprehensive guide, covering every important aspect of computational thinking education. It provides an in-depth discussion of computational thinking, including the notion of perceiving computational thinking practices as ways of mapping models from the abstraction of data and process structures to natural phenomena. Further, it...
Think Python
If you want to learn how to program, working with Python is an excellent way to start. This hands-on guide takes you through the language a step at a time, beginning with basic programming concepts before moving on to functions, recursion, data structures, and object-oriented design. This second edition and its supporting code have been updated for...
Early Geometrical Thinking in the Environment of Patterns, Mosaics and Isometries
This book discusses the learning and teaching of geometry, with a special focus on kindergarten and primary education. It examines important new trends and developments in research and practice, and emphasizes theoretical, empirical and developmental issues. Further, it discusses various topics, including curriculum studies and implementation, spat...
The Models of Engaged Learning and Teaching
This book provides a practical philosophy for promoting students' sophisticated thinking from Early Childhood to PhD in ways that explicitly interconnect across the years of education. It will help teachers, academics and the broader learning and teaching community to understand and implement these connections by introducing a conceptual frame...
IEA International Computer and Information Literacy Study 2018 Assessment Framework
This free book presents the assessment framework for IEA's International Computer an Information Literacy Study (ICILS) 2018, which is designed to assess how well students are prepared for study, work and life in a digital world. The study measures international differences in students' computer and information literacy (CIL): their abili...
Early Algebra
This survey of the state of the art on research in early algebra traces the evolution of a relatively new field of research and teaching practice. With its focus on the younger student, aged from about 6 years up to 12 years, this volume reveals the nature of the research that has been carried out in early algebra and how it has shaped the growth o...