#:t
#:f
#:true
- #.(symbol-name 'nil) ;; for case-sensitive Lisps like some versions of Allegro
+ #.(symbol-name 'nil) ; for case-sensitive Lisps like some versions of Allegro
#:this
#:false
#:undefined
-
+
;; keywords
#:break
#:continue
-
+
;; array literals
#:array
#:list
#:aref
#:make-array
-
+
;; operators
#:! #:not #:~
#:* #:/ #:%
#:*= #:/= #:%= #:+= #:\&= #:^= #:\|= #:~=
#:1+ #:1-
#:incf #:decf
-
+
;; body forms
#:progn
-
+
;; object literals
#:create
#:with-slots
-
+
;; macros
#:macrolet
#:symbol-macrolet
-
+
;; if
#:if
#:when
#:unless
-
+
;; single argument statements
#:return
#:throw
-
+
;; single argument expressions
#:delete
#:void
#:typeof
#:instanceof
#:new
-
+
;; assignment and binding
#:setf
- #:defaultf
#:defsetf
+ #:psetf
+ #:setq
+ #:psetq
+ #:simple-let*
+ #:simple-let
+ #:lexical-let*
+ #:lexical-let
+ #:let*
#:let
-
+
;; variables
+ #:var
#:defvar
-
+
;; iteration
+ #:labeled-for
#:for
- #:doeach
+ #:for-in
#:while
-
+ #:do
+ #:do*
+ #:dotimes
+ #:dolist
+ #:doeach
+
;; with
#:with
-
+
;; case
#:switch
#:case
#:default
-
+
;; try throw catch
#:try
-
+
;; regex literals
#:regex
-
+
;; conditional compilation (IE)
#:cc-if
-
+
;; function definition
#:defun
#:lambda
-
+
;; lambda lists
#:&key
#:&rest
#:define-symbol-macro
#:define-script-symbol-macro
#:defmacro
-
+
;; lisp eval
#:lisp
-
- ;; iteration
- #:do
- #:dotimes
- #:dolist
- #:doeach
- #:while
-
+
;; v v v STUFF WE SHOULD PROBABLY MOVE TO OTHER LIBS v v v
-
- ;; CSS
- #:css
- #:css-to-string
- #:css-inline
- #:css-file
;; html generator for javascript
#:ps-html
#:asin
#:atan
#:exp
+ #:log
#:floor
#:expt
+ #:sqrt
#:round
#:random
#:oddp
#:evenp
#:ignore-errors
+ #:concatenate
#:length
#:null
#:@
- ;; libries
+ ;; js runtime utils
#:*ps-lisp-library*
#:mapcar
+ #:map-into
+ #:map
+ #:map-until
+ #:member
+ #:append
+ #:set-difference
))
- "All symbols considerred part of the Parenscript language.")
+ "All symbols considered part of the Parenscript language.")
(defpackage :parenscript
(:use :common-lisp)
;; compiler
#:compile-script
#:ps
+ #:ps-doc
#:ps*
#:ps-inline
#:ps-inline*
-
+
;; for parenscript macro definition within lisp
#:defpsmacro
#:defmacro/ps
#:defmacro+ps
#:import-macros-from-lisp
-
+
;; gensym
#:ps-gensym
#:with-ps-gensyms
;; deprecated interface
#:gen-js-name
- #:gen-js-name-string
#:with-unique-js-names
#:defjsmacro
#:js-compile
#:js-inline
#:js-inline*
- #:js-file
- #:js-script
- #:js-to-statement-strings
#:js
#:js*
))
+
+(defpackage :parenscript-special-forms
+ (:use))