Files
Snippets/Lisp.md
T
2026-09-14 14:00:27 +02:00

50 lines
878 B
Markdown

# Lisp
## Variablen
### Globale Variablen
#### defparameter
**`defparameter`**: Definiert eine globale Variable und weist ihr sofort einen Wert zu. Ein erneutes Laden überschreibt den Wert.
```lisp
(defparameter *Variable* Wert)
```
**Beispiel**
```lisp
(defparamter *a* 10)
defparameter *name* "Otto")
(+ *a* *b*)
```
#### defvar
**`defvar`**: Definiert eine globale Variable, setzt den Anfangswert aber nur, wenn sie noch keinen Wert hat. Überschreibt bestehende Werte beim Neuladen *nicht*.
```lisp
(defvar *Variable* Wert )
```
Beispiel
```lisp
(defvar *b* 101)
```
#### setq / setf
**`setq` / `setf`**: Ändert den Wert einer bereits existierenden Variablen oder erzeugt (in manchen Lisp-Dialekten) implizit eine globale Variable, was jedoch unsauber ist. `setf` ist der universelle Zuweisungsoperator.
(setf *mein-wert* 100)
### Lokale Variablen