\hrule * === - defined in :: =d:\code\gitlab\slime\src\./built_ins.cpp:166:0= - type :: =:cfunction= - docu :: #+BEGIN: Takes 0 or more arguments and returns =t= if all arguments are equal and =()= otherwise. #+END: \hrule * =>= - defined in :: =d:\code\gitlab\slime\src\./built_ins.cpp:182:0= - type :: =:cfunction= - docu :: #+BEGIN: TODO #+END: \hrule * =>== - defined in :: =d:\code\gitlab\slime\src\./built_ins.cpp:199:0= - type :: =:cfunction= - docu :: #+BEGIN: TODO #+END: \hrule * =<= - defined in :: =d:\code\gitlab\slime\src\./built_ins.cpp:216:0= - type :: =:cfunction= - docu :: #+BEGIN: TODO #+END: \hrule * =<== - defined in :: =d:\code\gitlab\slime\src\./built_ins.cpp:235:0= - type :: =:cfunction= - docu :: #+BEGIN: TODO #+END: \hrule * =+= - defined in :: =d:\code\gitlab\slime\src\./built_ins.cpp:252:0= - type :: =:cfunction= - docu :: #+BEGIN: TODO #+END: \hrule * =-= - defined in :: =d:\code\gitlab\slime\src\./built_ins.cpp:264:0= - type :: =:cfunction= - docu :: #+BEGIN: TODO #+END: \hrule * =*= - defined in :: =d:\code\gitlab\slime\src\./built_ins.cpp:286:0= - type :: =:cfunction= - docu :: #+BEGIN: TODO #+END: \hrule * =/= - defined in :: =d:\code\gitlab\slime\src\./built_ins.cpp:306:0= - type :: =:cfunction= - docu :: #+BEGIN: TODO #+END: \hrule * =**= - defined in :: =d:\code\gitlab\slime\src\./built_ins.cpp:326:0= - type :: =:cfunction= - docu :: #+BEGIN: TODO #+END: \hrule * =%= - defined in :: =d:\code\gitlab\slime\src\./built_ins.cpp:341:0= - type :: =:cfunction= - docu :: #+BEGIN: TODO #+END: \hrule * =assert= - defined in :: =d:\code\gitlab\slime\src\./built_ins.cpp:356:0= - type :: =:cfunction= - docu :: #+BEGIN: TODO #+END: \hrule * =define= - defined in :: =d:\code\gitlab\slime\src\./built_ins.cpp:367:0= - type :: =:cfunction= - docu :: #+BEGIN: TODO #+END: \hrule * =mutate= - defined in :: =d:\code\gitlab\slime\src\./built_ins.cpp:429:0= - type :: =:cfunction= - docu :: #+BEGIN: TODO #+END: \hrule * =vector-length= - defined in :: =d:\code\gitlab\slime\src\./built_ins.cpp:454:0= - type :: =:cfunction= - docu :: #+BEGIN: TODO #+END: \hrule * =vector-ref= - defined in :: =d:\code\gitlab\slime\src\./built_ins.cpp:462:0= - type :: =:cfunction= - docu :: #+BEGIN: TODO #+END: \hrule * =vector-set!= - defined in :: =d:\code\gitlab\slime\src\./built_ins.cpp:479:0= - type :: =:cfunction= - docu :: #+BEGIN: TODO #+END: \hrule * =set!= - defined in :: =d:\code\gitlab\slime\src\./built_ins.cpp:499:0= - type :: =:cfunction= - docu :: #+BEGIN: TODO #+END: \hrule * =set-car!= - defined in :: =d:\code\gitlab\slime\src\./built_ins.cpp:521:0= - type :: =:cfunction= - docu :: #+BEGIN: TODO #+END: \hrule * =set-cdr!= - defined in :: =d:\code\gitlab\slime\src\./built_ins.cpp:532:0= - type :: =:cfunction= - docu :: #+BEGIN: TODO #+END: \hrule * =if= - defined in :: =d:\code\gitlab\slime\src\./built_ins.cpp:543:0= - type :: =:cfunction= - docu :: #+BEGIN: TODO #+END: \hrule * =quote= - defined in :: =d:\code\gitlab\slime\src\./built_ins.cpp:563:0= - type :: =:cfunction= - docu :: #+BEGIN: TODO #+END: \hrule * =quasiquote= - defined in :: =d:\code\gitlab\slime\src\./built_ins.cpp:568:0= - type :: =:cfunction= - docu :: #+BEGIN: TODO #+END: \hrule * =and= - defined in :: =d:\code\gitlab\slime\src\./built_ins.cpp:665:0= - type :: =:cfunction= - docu :: #+BEGIN: TODO #+END: \hrule * =or= - defined in :: =d:\code\gitlab\slime\src\./built_ins.cpp:676:0= - type :: =:cfunction= - docu :: #+BEGIN: TODO #+END: \hrule * =not= - defined in :: =d:\code\gitlab\slime\src\./built_ins.cpp:687:0= - type :: =:cfunction= - docu :: #+BEGIN: TODO #+END: \hrule * =while= - defined in :: =d:\code\gitlab\slime\src\./built_ins.cpp:697:0= - type :: =:cfunction= - docu :: #+BEGIN: TODO #+END: \hrule * =lambda= - defined in :: =d:\code\gitlab\slime\src\./built_ins.cpp:775:0= - type :: =:cfunction= - docu :: #+BEGIN: TODO #+END: \hrule * =special-lambda= - defined in :: =d:\code\gitlab\slime\src\./built_ins.cpp:787:0= - type :: =:cfunction= - docu :: #+BEGIN: TODO #+END: \hrule * =eval= - defined in :: =d:\code\gitlab\slime\src\./built_ins.cpp:795:0= - type :: =:cfunction= - docu :: #+BEGIN: TODO #+END: \hrule * =begin= - defined in :: =d:\code\gitlab\slime\src\./built_ins.cpp:807:0= - type :: =:cfunction= - docu :: #+BEGIN: TODO #+END: \hrule * =list= - defined in :: =d:\code\gitlab\slime\src\./built_ins.cpp:823:0= - type :: =:cfunction= - docu :: #+BEGIN: TODO #+END: \hrule * =vector= - defined in :: =d:\code\gitlab\slime\src\./built_ins.cpp:827:0= - type :: =:cfunction= - docu :: #+BEGIN: TODO #+END: \hrule * =pair= - defined in :: =d:\code\gitlab\slime\src\./built_ins.cpp:833:0= - type :: =:cfunction= - docu :: #+BEGIN: TODO #+END: \hrule * =first= - defined in :: =d:\code\gitlab\slime\src\./built_ins.cpp:843:0= - type :: =:cfunction= - docu :: #+BEGIN: TODO #+END: \hrule * =rest= - defined in :: =d:\code\gitlab\slime\src\./built_ins.cpp:854:0= - type :: =:cfunction= - docu :: #+BEGIN: TODO #+END: \hrule * =set-type= - defined in :: =d:\code\gitlab\slime\src\./built_ins.cpp:865:0= - type :: =:cfunction= - docu :: #+BEGIN: TODO #+END: \hrule * =delete-type= - defined in :: =d:\code\gitlab\slime\src\./built_ins.cpp:877:0= - type :: =:cfunction= - docu :: #+BEGIN: TODO #+END: \hrule * =type= - defined in :: =d:\code\gitlab\slime\src\./built_ins.cpp:884:0= - type :: =:cfunction= - docu :: #+BEGIN: TODO #+END: \hrule * =info= - defined in :: =d:\code\gitlab\slime\src\./built_ins.cpp:918:0= - type :: =:cfunction= - docu :: #+BEGIN: TODO #+END: \hrule * =show= - defined in :: =d:\code\gitlab\slime\src\./built_ins.cpp:999:0= - type :: =:cfunction= - docu :: #+BEGIN: TODO #+END: \hrule * =addr-of= - defined in :: =d:\code\gitlab\slime\src\./built_ins.cpp:1011:0= - type :: =:cfunction= - docu :: #+BEGIN: TODO #+END: \hrule * =generate-docs= - defined in :: =d:\code\gitlab\slime\src\./built_ins.cpp:1017:0= - type :: =:cfunction= - docu :: #+BEGIN: TODO #+END: \hrule * =print= - defined in :: =d:\code\gitlab\slime\src\./built_ins.cpp:1026:0= - type :: =:cfunction= - docu :: #+BEGIN: TODO #+END: \hrule * =read= - defined in :: =d:\code\gitlab\slime\src\./built_ins.cpp:1034:0= - type :: =:cfunction= - docu :: #+BEGIN: TODO #+END: \hrule * =exit= - defined in :: =d:\code\gitlab\slime\src\./built_ins.cpp:1051:0= - type :: =:cfunction= - docu :: #+BEGIN: TODO #+END: \hrule * =break= - defined in :: =d:\code\gitlab\slime\src\./built_ins.cpp:1062:0= - type :: =:cfunction= - docu :: #+BEGIN: TODO #+END: \hrule * =memstat= - defined in :: =d:\code\gitlab\slime\src\./built_ins.cpp:1067:0= - type :: =:cfunction= - docu :: #+BEGIN: TODO #+END: \hrule * =try= - defined in :: =d:\code\gitlab\slime\src\./built_ins.cpp:1071:0= - type :: =:cfunction= - docu :: #+BEGIN: TODO #+END: \hrule * =load= - defined in :: =d:\code\gitlab\slime\src\./built_ins.cpp:1086:0= - type :: =:cfunction= - docu :: #+BEGIN: TODO #+END: \hrule * =import= - defined in :: =d:\code\gitlab\slime\src\./built_ins.cpp:1097:0= - type :: =:cfunction= - docu :: #+BEGIN: TODO #+END: \hrule * =copy= - defined in :: =d:\code\gitlab\slime\src\./built_ins.cpp:1108:0= - type :: =:cfunction= - docu :: #+BEGIN: TODO #+END: \hrule * =error= - defined in :: =d:\code\gitlab\slime\src\./built_ins.cpp:1116:0= - type :: =:cfunction= - docu :: #+BEGIN: TODO #+END: \hrule * =symbol->keyword= - defined in :: =d:\code\gitlab\slime\src\./built_ins.cpp:1123:0= - type :: =:cfunction= - docu :: #+BEGIN: TODO #+END: \hrule * =string->symbol= - defined in :: =d:\code\gitlab\slime\src\./built_ins.cpp:1132:0= - type :: =:cfunction= - docu :: #+BEGIN: TODO #+END: \hrule * =symbol->string= - defined in :: =d:\code\gitlab\slime\src\./built_ins.cpp:1144:0= - type :: =:cfunction= - docu :: #+BEGIN: TODO #+END: \hrule * =concat-strings= - defined in :: =d:\code\gitlab\slime\src\./built_ins.cpp:1153:0= - type :: =:cfunction= - docu :: #+BEGIN: TODO #+END: \hrule * =pe= - defined in :: =pre.slime:4:40= - type :: =:macro= - arguments :: : - postitional :: =expr= - docu :: none \hrule * =when= - defined in :: =pre.slime:23:41= - type :: =:macro= - arguments :: : - postitional :: =condition=: - rest :: =body= - docu :: #+BEGIN: Special form for when multiple actions should be done if a condition is true. {{{example_start}}} (when (not ()) (print "Hello ") (print "from ") (print "when!")) (when () (print "Goodbye ") (print "World!")) {{{example_end}}} #+END: \hrule * =unless= - defined in :: =pre.slime:30:41= - type :: =:macro= - arguments :: : - postitional :: =condition=: - rest :: =body= - docu :: #+BEGIN: Special form for when multiple actions should be done if a condition is false. #+END: \hrule * =n-times= - defined in :: =pre.slime:37:35= - type :: =:macro= - arguments :: : - postitional :: =times=, =action= - docu :: #+BEGIN: Executes action times times. #+END: \hrule * =let= - defined in :: =pre.slime:54:64= - type :: =:macro= - arguments :: : - postitional :: =bindings=: - rest :: =body= - docu :: none \hrule * =cond= - defined in :: =pre.slime:68:17= - type :: =:macro= - arguments :: : - rest :: =clauses= - docu :: none \hrule * =case= - defined in :: =pre.slime:83:17= - type :: =:macro= - arguments :: : - postitional :: =var=: - rest :: =clauses= - docu :: none \hrule * =define-special= - defined in :: =pre.slime:86:81= - type :: =:macro= - arguments :: : - postitional :: =name-and-args=: - rest :: =body= - docu :: none \hrule * =construct-list= - defined in :: =pre.slime:127:14= - type :: =:macro= - arguments :: : - rest :: =body= - docu :: #+BEGIN: {{{example_start}}} (construct-list i <- '(1 2 3 4 5) yield (* i i)) {{{example_end}}} (construct-list i <- '(1 2 3 4) j <- '(A B) yield (pair i j)) (construct-list i <- '(1 2 3 4 5 6 7 8) if (= 0 (% i 2)) yield i) #+END: \hrule * =apply= - defined in :: =pre.slime:132:28= - type :: =:macro= - arguments :: : - postitional :: =fun=, =seq= - docu :: #+BEGIN: Applies the function to the sequence, as in calls the function with ithe sequence as arguemens. #+END: \hrule * =define-typed= - defined in :: =pre.slime:144:16= - type :: =:macro= - arguments :: : - postitional :: =args=: - rest :: =body= - docu :: none \hrule * =define-module= - defined in :: =pre.slime:158:27= - type :: =:macro= - arguments :: : - postitional :: =module-name=: - keyword :: =exports=: - rest :: =body= - docu :: none \hrule * =null?= - type :: =:lambda= - arguments :: : - postitional :: =x= - docu :: #+BEGIN: Checks if the argument is =nil=. #+END: \hrule * =type=?= - type :: =:lambda= - arguments :: : - postitional :: =obj=, =typ= - docu :: #+BEGIN: Checks if the argument =obj= is of type =typ= #+END: \hrule * =types=?= - type :: =:lambda= - arguments :: : - rest :: =objs= - docu :: none \hrule * =assert-types== - type :: =:lambda= - arguments :: : - rest :: =objs= - docu :: none \hrule * =number?= - type :: =:lambda= - arguments :: : - postitional :: =x= - docu :: #+BEGIN: Checks if the argument is a number. #+END: \hrule * =symbol?= - type :: =:lambda= - arguments :: : - postitional :: =x= - docu :: #+BEGIN: Checks if the argument is a symbol. #+END: \hrule * =keyword?= - type :: =:lambda= - arguments :: : - postitional :: =x= - docu :: #+BEGIN: Checks if the argument is a keyword. #+END: \hrule * =pair?= - type :: =:lambda= - arguments :: : - postitional :: =x= - docu :: #+BEGIN: Checks if the argument is a pair. #+END: \hrule * =string?= - type :: =:lambda= - arguments :: : - postitional :: =x= - docu :: #+BEGIN: Checks if the argument is a string. #+END: \hrule * =lambda?= - type :: =:lambda= - arguments :: : - postitional :: =x= - docu :: #+BEGIN: Checks if the argument is a function. #+END: \hrule * =macro?= - type :: =:lambda= - arguments :: : - postitional :: =x= - docu :: #+BEGIN: Checks if the argument is a macro. #+END: \hrule * =special-lambda?= - type :: =:lambda= - arguments :: : - postitional :: =x= - docu :: #+BEGIN: Checks if the argument is a special-lambda. #+END: \hrule * =built-in-function?= - type :: =:lambda= - arguments :: : - postitional :: =x= - docu :: #+BEGIN: Checks if the argument is a built-in function. #+END: \hrule * =callable?= - type :: =:lambda= - arguments :: : - postitional :: =x= - docu :: none \hrule * =end= - type :: =:lambda= - arguments :: : - postitional :: =seq= - docu :: #+BEGIN: Returns the last pair in the sqeuence. {{{example_start}}} (define a (list 1 2 3 4)) (printf (end a)) {{{example_end}}} #+END: \hrule * =last= - type :: =:lambda= - arguments :: : - postitional :: =seq= - docu :: #+BEGIN: Returns the (first) of the last (pair) of the given sequence. {{{example_start}}} (define a (list 1 2 3 4)) (printf (last a)) {{{example_end}}} #+END: \hrule * =extend= - type :: =:lambda= - arguments :: : - postitional :: =seq=, =elem= - docu :: #+BEGIN: Extends a list with the given element, by putting it in the (rest) of the last element of the sequence. #+END: \hrule * =extend2= - type :: =:lambda= - arguments :: : - postitional :: =seq=, =elem= - docu :: #+BEGIN: Extends a list with the given element, by putting it in the (rest) of the last element of the sequence. #+END: \hrule * =append= - type :: =:lambda= - arguments :: : - postitional :: =seq=, =elem= - docu :: #+BEGIN: Appends an element to a sequence, by extendeing the list with (pair elem nil). #+END: \hrule * =length= - type :: =:lambda= - arguments :: : - postitional :: =seq= - docu :: #+BEGIN: Returns the length of the given sequence. #+END: \hrule * =member?= - type :: =:lambda= - arguments :: : - postitional :: =elem=, =seq= - docu :: none \hrule * =sublist-starting-at-index= - type :: =:lambda= - arguments :: : - postitional :: =seq=, =index= - docu :: none \hrule * =list-without-index= - type :: =:lambda= - arguments :: : - postitional :: =seq=, =index= - docu :: none \hrule * =increment= - type :: =:lambda= - arguments :: : - postitional :: =val= - docu :: #+BEGIN: Adds one to the argument. #+END: \hrule * =decrement= - type :: =:lambda= - arguments :: : - postitional :: =val= - docu :: #+BEGIN: Subtracts one from the argument. #+END: \hrule * =range= - type :: =:lambda= - arguments :: : - keyword :: =from= =(0)=, =to= - docu :: #+BEGIN: Returns a sequence of numbers starting with the number defined by the key =from= and ends with the number defined in =to=. #+END: \hrule * =range-while= - type :: =:lambda= - arguments :: : - keyword :: =from= =(0)=, =to= - docu :: #+BEGIN: Returns a sequence of numbers starting with the number defined by the key 'from' and ends with the number defined in 'to'. #+END: \hrule * =map= - type :: =:lambda= - arguments :: : - postitional :: =fun=, =seq= - docu :: #+BEGIN: Takes a function and a sequence as arguments and returns a new sequence which contains the results of using the first sequences elemens as argument to that function. #+END: \hrule * =reduce= - type :: =:lambda= - arguments :: : - postitional :: =fun=, =seq= - docu :: #+BEGIN: Takes a function and a sequence as arguments and applies the function to the argument sequence. This only works correctly if the given function accepts a variable amount of parameters. If your funciton is limited to two arguments, use [[=reduce-binary=]] instead. #+END: \hrule * =reduce-binary= - type :: =:lambda= - arguments :: : - postitional :: =fun=, =seq= - docu :: #+BEGIN: Takes a function and a sequence as arguments and applies the function to the argument sequence. reduce-binary applies the arguments *pair-wise* which means it works with binary functions as compared to [[=reduce=]]. #+END: \hrule * =filter= - type :: =:lambda= - arguments :: : - postitional :: =fun=, =seq= - docu :: #+BEGIN: Takes a function and a sequence as arguments and applies the function to every value in the sequence. If the result of that funciton application returns a truthy value, the original value is added to a list, which in the end is returned. #+END: \hrule * =zip= - type :: =:lambda= - arguments :: : - postitional :: =l1=, =l2= - docu :: none \hrule * =unzip= - type :: =:lambda= - arguments :: : - postitional :: =lists= - docu :: none \hrule * =enumerate= - type :: =:lambda= - arguments :: : - postitional :: =seq= - docu :: none \hrule * =printf= - type :: =:lambda= - arguments :: : - keyword :: =sep= =(" ")=, =end= =("\n")=: - rest :: =args= - docu :: #+BEGIN: A wrapper for the built-in function [[=print=]] that accepts a variable number of arguments and also provides keywords for specifying the printed separators (=sep=) between the arguments and what should be printed after the last argument (=end=). #+END: \hrule * =key-not-found-index= - defined in :: =alist.slime:28:31= - type :: =:number= - value :: =-1= - docu :: none \hrule * =make-alist= - type :: =:lambda= - arguments :: none. - docu :: none \hrule * =make-plist= - type :: =:lambda= - arguments :: none. - docu :: none \hrule * =pprint-alist= - type :: =:lambda= - arguments :: : - postitional :: =alist= - docu :: none \hrule * =pprint-plist= - type :: =:lambda= - arguments :: : - postitional :: =plist= - docu :: none \hrule * =alist-get= - type :: =:lambda= - arguments :: : - postitional :: =alist=, =key= - docu :: none \hrule * =alist-find= - type :: =:lambda= - arguments :: : - postitional :: =alist=, =key= - docu :: none \hrule * =alist-key-exists?= - type :: =:lambda= - arguments :: : - postitional :: =alist=, =key= - docu :: none \hrule * =alist-remove!= - type :: =:lambda= - arguments :: : - postitional :: =alist=, =key= - docu :: none \hrule * =alist-set!= - type :: =:lambda= - arguments :: : - postitional :: =alist=, =key=, =value= - docu :: none \hrule * =alist-set-overwrite!= - type :: =:lambda= - arguments :: : - postitional :: =alist=, =key=, =value= - docu :: none \hrule * =plist-get= - type :: =:lambda= - arguments :: : - postitional :: =plist=, =prop= - docu :: none \hrule * =plist-set!= - type :: =:lambda= - arguments :: : - postitional :: =plist=, =prop=, =value= - docu :: none \hrule * =plist-set-overwrite!= - type :: =:lambda= - arguments :: : - postitional :: =plist=, =prop=, =value= - docu :: none \hrule * =plist-find= - type :: =:lambda= - arguments :: : - postitional :: =plist=, =prop= - docu :: none \hrule * =plist-prop-exists?= - type :: =:lambda= - arguments :: : - postitional :: =plist=, =prop= - docu :: none \hrule * =plist-remove!= - type :: =:lambda= - arguments :: : - postitional :: =plist=, =prop= - docu :: none \hrule * =cons= - defined in :: =d:\code\gitlab\slime\src\./built_ins.cpp:833:0= - type :: =:cfunction= - docu :: #+BEGIN: TODO #+END: \hrule * =car= - defined in :: =d:\code\gitlab\slime\src\./built_ins.cpp:843:0= - type :: =:cfunction= - docu :: #+BEGIN: TODO #+END: \hrule * =cdr= - defined in :: =d:\code\gitlab\slime\src\./built_ins.cpp:854:0= - type :: =:cfunction= - docu :: #+BEGIN: TODO #+END: \hrule * =caar= - type :: =:lambda= - arguments :: : - postitional :: =seq= - docu :: none \hrule * =cddr= - type :: =:lambda= - arguments :: : - postitional :: =seq= - docu :: none \hrule * =cadr= - type :: =:lambda= - arguments :: : - postitional :: =seq= - docu :: none \hrule * =cdar= - type :: =:lambda= - arguments :: : - postitional :: =seq= - docu :: none \hrule * =caaar= - type :: =:lambda= - arguments :: : - postitional :: =seq= - docu :: none \hrule * =caadr= - type :: =:lambda= - arguments :: : - postitional :: =seq= - docu :: none \hrule * =cadar= - type :: =:lambda= - arguments :: : - postitional :: =seq= - docu :: none \hrule * =caddr= - type :: =:lambda= - arguments :: : - postitional :: =seq= - docu :: none \hrule * =cdaar= - type :: =:lambda= - arguments :: : - postitional :: =seq= - docu :: none \hrule * =cdadr= - type :: =:lambda= - arguments :: : - postitional :: =seq= - docu :: none \hrule * =cddar= - type :: =:lambda= - arguments :: : - postitional :: =seq= - docu :: none \hrule * =cdddr= - type :: =:lambda= - arguments :: : - postitional :: =seq= - docu :: none \hrule * =define-class= - defined in :: =oo.slime:22:22= - type :: =:macro= - arguments :: : - postitional :: =name-and-members=: - rest :: =body= - docu :: #+BEGIN: Macro for creating simple classes. #+END: \hrule * =->= - defined in :: =oo.slime:25:24= - type :: =:macro= - arguments :: : - postitional :: =obj=, =meth=: - rest :: =args= - docu :: none \hrule * =math::pi= - defined in :: =pre.slime:338:12= - type :: =:number= - value :: =3.141593= - docu :: #+BEGIN: Tha famous circle constant. #+END: \hrule * =math::abs= - defined in :: =pre.slime:338:12= - type :: =:lambda= - arguments :: : - postitional :: =x= - docu :: #+BEGIN: Accepts one argument and returns the absoulte value of it #+END: \hrule * =math::sqrt= - defined in :: =pre.slime:338:12= - type :: =:lambda= - arguments :: : - postitional :: =x= - docu :: #+BEGIN: Accepts one argument and returns the square root of it #+END: \hrule * =math::make-vector3= - defined in :: =pre.slime:338:12= - type :: =:constructor= - arguments :: : - postitional :: =x=, =y=, =z= - docu :: #+BEGIN: This is the handle to an object of the class vector3 #+END: