Getting started with GendL
This tutorial aims to get you started with GendL.
It assumes a standard GendL installation and setup which provides
Emacs and will start the GendL web server on localhost port 9000.
The tutorial makes use of GendL's built-in wireframe geometry (the
geom-base
package) to demonstrate some of the basic concepts of
GendL. It also covers most of the Common Lisp (CL) basics that you
will need to master in order to work with GendL effectively. What you
will not need is to become a CL expert or specialist in order to
excel as a GendL user, as GendL does much of the language "heavy
lifting" for you.
Most of the topics covered in this tutorial have either .lisp
or PDF
files which you can download and/or use. These are presented in the
References section on the right-hand sidebar of each page. Any .lisp
files with valid ANSI Common Lisp (CL) code sould be compileable in GendL
This tutorial uses the following color-coding and font convention for identifying categories of Lisp symbols when they occur in the narrative portion of the text (don't worry if you don't understand the meaning of all these terms yet):
- Function - a CL or GendL Function name
- Macro - a CL or GendL Macro name
- Object Definition name - a symbol being used to name a Gendl object definition
- Object Definition Keyword - one of the valid Keywords which can be used in any GendL object definitions
- Slot Name - a name of a slot specified in a particular GendL object definition
- Special Operator - CL special operators
- Variable Name - symbol being used as a variable name
- Package Name - symbol being used to name a CL Package
- General Keyword - keyword symbol used for its name only
- Value Any Lisp data value, e.g. a Number, String, List, or Gendl Object instance. Such values are typically obtained by calling a function or sending a message to an object.
Examples in the CL Read-Eval-Print-Loop are shown in sections of the screen as shown below
GDL-USER> (setq a 1)
1GDL-USER> (setq b 2 c "three" d nil)
NILGDL-USER> b
2GDL-USER> c
threeGDL-USER> d
NIL
Code examples are shown in sections of the screen as shown below and will generally be downloadable from the References, as shown on this page
(define-object my-box-1 (box):input-slots((length 2)(width 3)(height 4)))
Each topic page has Previous and Next navigation links as well as a link back to the Home page which contains a list of all topics in this tutorial. Note that most pages topics build on what was covered in previous topics so its recomended to work through the pages sequentially
Finally an index is provided with links to indexed words reference in each topic. The index may be accessed from the home page. To view the index now click here
Resources
![]() | my-box-1.lisp |