A Friendly Introduction to Programming
Welcome to the home page of Turtle Java, a graphics programming environment designed to provide an enjoyable introduction to programming in Java syntax, together with a practical insight into fundamental concepts of computer science such as compilation and machine code.
Register Your Interest in Turtle Java 9.00
At present (Summer 2010), Turtle Java is undergoing the most important enhancement since its initial development. Version 9.00 will include facilities to accommodate integer and boolean methods, to process and print strings, handle arrays (both as variables and parameters), perform appropriate type-checking, detect and respond to keyboard and mouse input, as well as various mathematical enhancements to enable trigonometrical and other relevant functions to be approximated. Its machine inspection and debugging facilities are also being expanded, with memory dumping and the ability to output strings to a visual log. Altogether, these changes will both greatly increase the power of the system to create interesting software (e.g. interactive games and simple AI programs), and also its value as a teaching tool. In particular, the handling of data structures (e.g. arrays) in memory has been carefully designed to follow the Java paradigm, so that learning about the Turtle Machine can deepen understanding of how Java itself operates, in a direct way that is - we believe - not available on any other system.
It may be some time before Turtle Java 9.00 is fully tested and published here. In the meantime, if you are interested in acquiring it, please register your interest, so that you can be kept informed of progress and provided with the software at the first available opportunity. You might also be invited (on a purely optional basis, of course) to beta-test the software, assistance with which would be much appreciated.
Download Turtle Java 8.05
This program is freeware for educational use, but please respect the copyright, and ensure that if you pass it on you do so without charge, make clear its authorship, and leave all documentation intact. The program is provided in two forms, first as a standard ZIP archive, and then as a self-extracting ZIP file:
Using the System
Having downloaded the ZIP archive, extract it into an appropriate directory (e.g. "C:\TurtleJava") and start the system by running the file "TurtleJava.exe". From the Help menu, choose "Illustrative programs" and select one from the list. This will load the selected program into the editing area on the left of the Turtle window. Then click on the "RUN" button near the top middle of the window, and you will see the program running (the screenshot below shows the "Method with parameter" program).
Now try out some of the other illustrative programs from the Help menu. Having run them to get an idea of some of what the system can do, go back to the Help menu, choose "Turtle help" (the very first option), double-click the first line in the "Contents" tab (which should say "Turtle Graphics Programming System") and then on "Introduction". Start reading, and away you go!
Alternatively, to get straight into the self-teach exercises, choose "Exercises" from the Help menu.
Full documentation is provided in the comprehensive Help file included in
the package. The table of contents is as follows:
- Turtle Java Programming System
- The Canvas
- The Program
- The Turtle Standalone Run-Time System
- Teaching Aims: Deep Understanding of Programming Concepts
- Current Version of the Turtle Java Software
- Hardware Requirements and Issues
- Menus in the Turtle Java System
- File Menu
- Edit Menu
- Layout Menu
- Compile Menu
- Options Menu
- Help Menu
- Turtle Java Programming
- Programming Quick Reference
- Programming Essentials
- Introduction to Turtle Java Syntax
- Turtle Java Syntax Reference
- Methods and Parameters
- The Recursion Factory
- The Visual Compiler and the Turtle Machine
- An Introduction to PCode
- Technical Note on Variables, Methods, and Parameters
- PCode Reference Guide
- Working with the System
- Compiler Error Messages
video made by