Files
slime/manual/built-in-docs.org
T

992 lines
15 KiB
Org Mode

\hrule
* =file_name=
- defined in :: =generate-docs.slime:5:44=
- type :: =:string=
- value :: ="../manual/built-in-docs.org"=
- docu :: none
\hrule
* ===
- defined in :: =src/./built_ins.cpp:159:0=
- type :: =:cfunction=
- docu ::
#+BEGIN:
Takes 0 or more arguments and returns =t= if all arguments are equal and =()= otherwise.
#+END:
\hrule
* =>=
- defined in :: =src/./built_ins.cpp:175:0=
- type :: =:cfunction=
- docu ::
#+BEGIN:
TODO
#+END:
\hrule
* =>==
- defined in :: =src/./built_ins.cpp:189:0=
- type :: =:cfunction=
- docu ::
#+BEGIN:
TODO
#+END:
\hrule
* =<=
- defined in :: =src/./built_ins.cpp:203:0=
- type :: =:cfunction=
- docu ::
#+BEGIN:
TODO
#+END:
\hrule
* =<==
- defined in :: =src/./built_ins.cpp:217:0=
- type :: =:cfunction=
- docu ::
#+BEGIN:
TODO
#+END:
\hrule
* =+=
- defined in :: =src/./built_ins.cpp:231:0=
- type :: =:cfunction=
- docu ::
#+BEGIN:
TODO
#+END:
\hrule
* =-=
- defined in :: =src/./built_ins.cpp:243:0=
- type :: =:cfunction=
- docu ::
#+BEGIN:
TODO
#+END:
\hrule
* =*=
- defined in :: =src/./built_ins.cpp:264:0=
- type :: =:cfunction=
- docu ::
#+BEGIN:
TODO
#+END:
\hrule
* =/=
- defined in :: =src/./built_ins.cpp:281:0=
- type :: =:cfunction=
- docu ::
#+BEGIN:
TODO
#+END:
\hrule
* =**=
- defined in :: =src/./built_ins.cpp:300:0=
- type :: =:cfunction=
- docu ::
#+BEGIN:
TODO
#+END:
\hrule
* =%=
- defined in :: =src/./built_ins.cpp:307:0=
- type :: =:cfunction=
- docu ::
#+BEGIN:
TODO
#+END:
\hrule
* =assert=
- defined in :: =src/./built_ins.cpp:314:0=
- type :: =:cfunction=
- docu ::
#+BEGIN:
TODO
#+END:
\hrule
* =define-syntax=
- defined in :: =src/./built_ins.cpp:323:0=
- type :: =:cfunction=
- docu ::
#+BEGIN:
TODO
#+END:
\hrule
* =define=
- defined in :: =src/./built_ins.cpp:369:0=
- type :: =:cfunction=
- docu ::
#+BEGIN:
TODO
#+END:
\hrule
* =mutate=
- defined in :: =src/./built_ins.cpp:425:0=
- type :: =:cfunction=
- docu ::
#+BEGIN:
TODO
#+END:
\hrule
* =vector-length=
- defined in :: =src/./built_ins.cpp:447:0=
- type :: =:cfunction=
- docu ::
#+BEGIN:
TODO
#+END:
\hrule
* =vector-ref=
- defined in :: =src/./built_ins.cpp:452:0=
- type :: =:cfunction=
- docu ::
#+BEGIN:
TODO
#+END:
\hrule
* =vector-set!=
- defined in :: =src/./built_ins.cpp:465:0=
- type :: =:cfunction=
- docu ::
#+BEGIN:
TODO
#+END:
\hrule
* =set!=
- defined in :: =src/./built_ins.cpp:480:0=
- type :: =:cfunction=
- docu ::
#+BEGIN:
TODO
#+END:
\hrule
* =set-car!=
- defined in :: =src/./built_ins.cpp:500:0=
- type :: =:cfunction=
- docu ::
#+BEGIN:
TODO
#+END:
\hrule
* =set-cdr!=
- defined in :: =src/./built_ins.cpp:508:0=
- type :: =:cfunction=
- docu ::
#+BEGIN:
TODO
#+END:
\hrule
* =if=
- defined in :: =src/./built_ins.cpp:516:0=
- type :: =:cfunction=
- docu ::
#+BEGIN:
TODO
#+END:
\hrule
* =quote=
- defined in :: =src/./built_ins.cpp:530:0=
- type :: =:cfunction=
- docu ::
#+BEGIN:
TODO
#+END:
\hrule
* =quasiquote=
- defined in :: =src/./built_ins.cpp:534:0=
- type :: =:cfunction=
- docu ::
#+BEGIN:
TODO
#+END:
\hrule
* =and=
- defined in :: =src/./built_ins.cpp:631:0=
- type :: =:cfunction=
- docu ::
#+BEGIN:
TODO
#+END:
\hrule
* =or=
- defined in :: =src/./built_ins.cpp:643:0=
- type :: =:cfunction=
- docu ::
#+BEGIN:
TODO
#+END:
\hrule
* =not=
- defined in :: =src/./built_ins.cpp:655:0=
- type :: =:cfunction=
- docu ::
#+BEGIN:
TODO
#+END:
\hrule
* =lambda=
- defined in :: =src/./built_ins.cpp:689:0=
- type :: =:cfunction=
- docu ::
#+BEGIN:
TODO
#+END:
\hrule
* =special-lambda=
- defined in :: =src/./built_ins.cpp:705:0=
- type :: =:cfunction=
- docu ::
#+BEGIN:
TODO
#+END:
\hrule
* =eval=
- defined in :: =src/./built_ins.cpp:721:0=
- type :: =:cfunction=
- docu ::
#+BEGIN:
TODO
#+END:
\hrule
* =begin=
- defined in :: =src/./built_ins.cpp:731:0=
- type :: =:cfunction=
- docu ::
#+BEGIN:
TODO
#+END:
\hrule
* =list=
- defined in :: =src/./built_ins.cpp:743:0=
- type :: =:cfunction=
- docu ::
#+BEGIN:
TODO
#+END:
\hrule
* =vector=
- defined in :: =src/./built_ins.cpp:747:0=
- type :: =:cfunction=
- docu ::
#+BEGIN:
TODO
#+END:
\hrule
* =pair=
- defined in :: =src/./built_ins.cpp:754:0=
- type :: =:cfunction=
- docu ::
#+BEGIN:
TODO
#+END:
\hrule
* =first=
- defined in :: =src/./built_ins.cpp:761:0=
- type :: =:cfunction=
- docu ::
#+BEGIN:
TODO
#+END:
\hrule
* =rest=
- defined in :: =src/./built_ins.cpp:768:0=
- type :: =:cfunction=
- docu ::
#+BEGIN:
TODO
#+END:
\hrule
* =set-type!=
- defined in :: =src/./built_ins.cpp:775:0=
- type :: =:cfunction=
- docu ::
#+BEGIN:
TODO
#+END:
\hrule
* =delete-type!=
- defined in :: =src/./built_ins.cpp:781:0=
- type :: =:cfunction=
- docu ::
#+BEGIN:
TODO
#+END:
\hrule
* =type=
- defined in :: =src/./built_ins.cpp:786:0=
- type :: =:cfunction=
- docu ::
#+BEGIN:
TODO
#+END:
\hrule
* =mem-reset=
- defined in :: =src/./built_ins.cpp:819:0=
- type :: =:cfunction=
- docu ::
#+BEGIN:
TODO
#+END:
\hrule
* =info=
- defined in :: =src/./built_ins.cpp:828:0=
- type :: =:cfunction=
- docu ::
#+BEGIN:
TODO
#+END:
\hrule
* =show=
- defined in :: =src/./built_ins.cpp:899:0=
- type :: =:cfunction=
- docu ::
#+BEGIN:
TODO
#+END:
\hrule
* =addr-of=
- defined in :: =src/./built_ins.cpp:911:0=
- type :: =:cfunction=
- docu ::
#+BEGIN:
TODO
#+END:
\hrule
* =generate-docs=
- defined in :: =src/./built_ins.cpp:916:0=
- type :: =:cfunction=
- docu ::
#+BEGIN:
TODO
#+END:
\hrule
* =print=
- defined in :: =src/./built_ins.cpp:922:0=
- type :: =:cfunction=
- docu ::
#+BEGIN:
TODO
#+END:
\hrule
* =read=
- defined in :: =src/./built_ins.cpp:937:0=
- type :: =:cfunction=
- docu ::
#+BEGIN:
TODO
#+END:
\hrule
* =exit=
- defined in :: =src/./built_ins.cpp:949:0=
- type :: =:cfunction=
- docu ::
#+BEGIN:
TODO
#+END:
\hrule
* =break=
- defined in :: =src/./built_ins.cpp:954:0=
- type :: =:cfunction=
- docu ::
#+BEGIN:
TODO
#+END:
\hrule
* =memstat=
- defined in :: =src/./built_ins.cpp:960:0=
- type :: =:cfunction=
- docu ::
#+BEGIN:
TODO
#+END:
\hrule
* =load=
- defined in :: =src/./built_ins.cpp:979:0=
- type :: =:cfunction=
- docu ::
#+BEGIN:
TODO
#+END:
\hrule
* =import=
- defined in :: =src/./built_ins.cpp:989:0=
- type :: =:cfunction=
- docu ::
#+BEGIN:
TODO
#+END:
\hrule
* =copy=
- defined in :: =src/./built_ins.cpp:1000:0=
- type :: =:cfunction=
- docu ::
#+BEGIN:
TODO
#+END:
\hrule
* =symbol->keyword=
- defined in :: =src/./built_ins.cpp:1013:0=
- type :: =:cfunction=
- docu ::
#+BEGIN:
TODO
#+END:
\hrule
* =string->symbol=
- defined in :: =src/./built_ins.cpp:1018:0=
- type :: =:cfunction=
- docu ::
#+BEGIN:
TODO
#+END:
\hrule
* =symbol->string=
- defined in :: =src/./built_ins.cpp:1027:0=
- type :: =:cfunction=
- docu ::
#+BEGIN:
TODO
#+END:
\hrule
* =concat-strings=
- defined in :: =src/./built_ins.cpp:1034:0=
- type :: =:cfunction=
- docu ::
#+BEGIN:
TODO
#+END:
\hrule
* =pe=
- type :: =:macro=
- arguments :: :
- postitional :: =expr=
- docu :: none
\hrule
* =when=
- 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=
- 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=
- type :: =:macro=
- arguments :: :
- postitional :: =times=, =action=
- docu ::
#+BEGIN:
Executes action times times.
#+END:
\hrule
* =let=
- type :: =:macro=
- arguments :: :
- postitional :: =bindings=:
- rest :: =body=
- docu :: none
\hrule
* =cond=
- type :: =:macro=
- arguments :: :
- rest :: =clauses=
- docu :: none
\hrule
* =case=
- type :: =:macro=
- arguments :: :
- postitional :: =var=:
- rest :: =clauses=
- docu :: none
\hrule
* =define-special=
- type :: =:macro=
- arguments :: :
- postitional :: =name-and-args=:
- rest :: =body=
- docu :: none
\hrule
* =construct-list=
- 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=
- 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=
- type :: =:macro=
- arguments :: :
- postitional :: =args=:
- rest :: =body=
- docu :: none
\hrule
* =define-module=
- 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))
(print (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))
(print (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)=
- 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