My Notes
Exercises
Quick Reference
- Ruby (2.4)
- OCaml (4.12.x)
Ruby
- ruby-lang.org
- The main Ruby website.
- Quick
Start (Ruby in 20 minutes)
-
Introduction to Ruby - A simple introduction to
basic Ruby
- PythonTutor
for Ruby - An interactive, web-based visual
debugger for Ruby programs
-
The Pragmatic Programmer's Guide - "The Pickaxe
Book" is a more comprehensive overview of Ruby. It's an
online version of the first edition of a printed Ruby
book. The only thing to keep in mind is that it covers
Ruby 1.6, while you can buy the newest
printed version which covers the Ruby 1.9 and 2.0.
We probably won't do anything for this course where the
difference between versions. There's a lot of
information here which you won't need- the most relevant
sections are the first fourteen listed (the first up
through "Basic Input and Output"), then "When Trouble
Strkes", "Ruby and Its World", and
"The Ruby Language" and
"Classes and Objects". These last two are good
summary references for the language.
-
Ruby Class Reference
-
Ruby documentation - A list from ruby-lang.org of
Ruby reference manuals, online sources of Ruby
information (some of the ones which will probably be
more useful are mentioned specifically below), and Ruby
articles. If you want to buy a printed book about Ruby
several are listed.
-
Ruby User's Guide - An English translation of a
book written by the designer of the language. More of a
language reference than a tutorial.
OCaml
Rust
Formal grammars and finite automata
Lambda calculus
Ruby On Rails
- Rails is a
full-stack framework for developing database-backed web
applications according to the Model-View-Control
pattern.
Git
Other relevant texts
Previous required texts for CMSC 330 have chapters on
relevant topics covered in this course. If the lecture
notes are insufficient, look for these books. They should
be available in the university library.
- Concepts of Programming Languages (Seventh
Edition) by R. Sebesta, Addison Wesley (2006)
(ISBN 0-321-33025-0).
- Programming Languages: Design and Implementation
(Fourth Edition) by T. Pratt and M. Zelkowitz,
Prentice Hall (2001) (ISBN 0-13-027678-2).
- O'ReillyHistory of Programming Languages Poster