SWC LISP

From Star Wars Combine :: Game Guide
Revision as of 16:22, 8 September 2018 by Ruben Wan (talk | contribs) (Arithmetic Operators)
Jump to: navigation, search

Main page - trying to reorganise the LISP content

Operators

Arithmetic Operators

Function Name Required &Optional ("&") Parameters Description Example Text Example Evaluation Module
+ number1 number2 &numberN Adds numbers together (+ 5 2) 7
- number1 number2 &numberN Subtracts numbers (- 5 2) 3
* number1 number2 &numberN Multiplies numbers (* 5 2) 10
/ number1 number2 Divides numbers (/ 10 2) 5
abs number Returns the absolute value of number (abs -10) 10 (load "mathematics")
power number exponent Returns the value of numberexponent (power 2 3) 8 (load "mathematics")
minof list-of-numbers Returns the minimum value from a list of numbers (minof '(2 3 7 9 1 18)) 1 (load "mathematics")
maxof list-of-numbers Returns the maximum value from a list of numbers (maxof '(2 3 27 9 1 18)) 27 (load "mathematics")
neg? number Returns true if number is negative, nil if positive (neg? -1) #t (load "mathematics")
pos? number Returns true if number is positive, nil if negative (pos? 1) #t (load "mathematics")
zero? number Returns true if number is 0, nil if otherwise (zero? 0) #t (load "mathematics")
factorial number Returns !number (factorial 5) 120 (load "mathematics")

Comparison Operators

Function Name Required &Optional ("&") Parameters Description Example Text Example Evaluation Testing Status
ge? number1 number2 Is number1 equal to or greater than number2? (ge? 5 2) #t
le? number1 number2 Is number1 equal to or less than number2? (le? 5 2) #f
gt? number1 number2 Is number1 greater than number2? (gt? 5 2) #t
lt? number1 number2 Is number1 less than number2? (lt? 5 2) #f

Logic Operators

Function Name Required &Optional ("&") Parameters Description Example Text Example Evaluation Testing Status
and boolean-expression1 boolean-expression2 &boolean-expressionN TRUE if all exprs are TRUE (and? #t #f) #f
or boolean-expression1 boolean-expression2 &boolean-expressionN TRUE if one expr is TRUE (or #t #f) #t
not boolean-expression1 boolean-expression2 &boolean-expressionN TRUE if expr is not TRUE (not #t) #f