mirror of
https://github.com/Aider-AI/aider.git
synced 2025-05-25 06:44:59 +00:00
25 lines
653 B
EmacsLisp
25 lines
653 B
EmacsLisp
(defvar *default-greeting* "Hello")
|
|
(defvar *max-name-length* 50)
|
|
|
|
(defstruct person
|
|
(name "Anonymous")
|
|
(age 0))
|
|
|
|
(defclass greeter ()
|
|
((prefix :initarg :prefix
|
|
:accessor greeter-prefix
|
|
:initform *default-greeting*)))
|
|
|
|
(defmethod greet ((g greeter) (p person))
|
|
(format nil "~A, ~A! You are ~D years old."
|
|
(greeter-prefix g)
|
|
(person-name p)
|
|
(person-age p)))
|
|
|
|
(defun create-formal-greeter ()
|
|
(make-instance 'greeter :prefix "Good day"))
|
|
|
|
(defun main ()
|
|
(let ((greeter (create-formal-greeter))
|
|
(person (make-person :name "World" :age 42)))
|
|
(message "%s" (greet greeter person))))
|