Monty Karel
A Gentle Introduction to the Art of Dynamic Object-Oriented Programming in Python
- Joseph Bergin
- Mark Stehlik
- Jim Roberts
- Richard Pattis
This book is now available at Amazon.com. All versions of the book are now updated to Python v3.
There is also a Beyond Monty Karel Volume
Note on Review Copies: Review copies are difficult, at best, for me. This is self published and I need to pay money out of pocket to send any review copy. I even need to purchase copies for my own use. I hope you understand.
|
If you intend to use the book, I'd like to know about it. Please send me email at jbergin@pace.edu.
Software can be downloaded from the Download Page. The software is under development. Consider this version to be trial only - early release. Instructions are in the zip file. Here is some information about the simulator software.
Features of the book
- The book contains the following 8 chapters.
- It is pure Python.
- Robot names are lower cased: karel instead of Karel, keeping with the Python convention.
- For the most part, the simulator will not be described in the book. You will be able to find that information here.
- The easiest way to use it is to use PyDev in Eclipse All are free on the web. There is also a (Python only) non-graphic simulator available. The API of both of these is identical. The current simulator works on any system that supports both Java and Python.
- The simulator world files are the same format as those of Karel J Robot. They may be read and written and exchanged between the versions.
- The book emphasizes object-oriented and dynamic features of Python. It is, in many ways, similar to Karel J Robot, but also introduces functions as first class objects and mixin inheritance.
Instructor's Guide (PDF)
Some Python hints/pitfalls/caveats will be provided here to guide instructors.
3 Extending the Robot Programming Language
4 Polymorphism
5 Conditionally Executing Instructions
6 Instructions That Repeat
7 Advanced Techniques for Robots
8 Concurrent Robot Programs
Appendix
Note that this version may contain several minor errors. It has not been through a rigorous editing process. I would appreciate comments and bug reports sent to me at jbergin@pace.edu. Thanks.
Here is the complete Table of Contents of the book as printed.
Last Updated:August 28, 2023
Back to Joseph Bergin's Home Page.