+ (:shadow #:random #:count)
+ (:export #:export-world #:create-world #:current-state #:with-stop-handler
+ ; API as used by transpiled NetLogo programs
+ #:agent-value
+ #:ask
+ #:clear-all
+ #:count
+ #:create-turtles
+ #:die
+ #:display
+ #:hatch
+ #:of
+ #:forward
+ #:lookup-color
+ #:one-of
+ #:patches
+ #:reset-ticks
+ #:random
+ #:random-float
+ #:random-xcor
+ #:random-ycor
+ #:set-default-shape
+ #:setxy
+ #:show
+ #:stop
+ #:turtles
+ #:tick
+ #:ticks
+ #:turn-right #:turn-left
+ #:with)
+ (:documentation
+ "CLNL NVM
+
+NetLogo Virtual Machine: the simulation engine."))
+
+(defpackage #:clnl-lexer
+ (:use :common-lisp)
+ (:export #:lex)
+ (:documentation
+ "CLNL Lexer
+
+The primary code responsible for tokenizing NetLogo code."))
+
+(defpackage #:clnl-interface
+ (:use :common-lisp)
+ (:export #:run #:export-view #:initialize)
+ (:documentation
+ "CLNL Interface
+
+The NetLogo view interface using opengl. This is responsible for taking the
+current state of the enging and displaying it. Will not house any interface
+components."))
+
+(defpackage #:clnl-cli
+ (:use :common-lisp :cl-charms/low-level)
+ (:export #:run)
+ (:documentation
+ "CLNL CLI
+
+The main NetLogo interface for interacting with the program. Since CLNL is
+a command line interface program with a view for display purposes only, this
+is where all the features that the traditional NetLogo UI lives."))
+
+(defpackage #:clnl-model
+ (:use :common-lisp)
+ (:export #:default-model #:read-from-nlogo #:world-dimensions #:widget-globals #:code)
+ (:documentation
+ "CLNL Model
+
+The representation, parsing, and serializing of NetLogo model files, including
+all of the sections, and subsections held within. This package houses not only
+the code to read and write .nlogo files, but also the living state of the model
+as clnl runs."))