Add tasks for all the new languages
This commit is contained in:
parent
9dc3c2bb62
commit
bba7bfd280
13208 changed files with 134745 additions and 0 deletions
11
Task/Classes/EchoLisp/classes-1.echolisp
Normal file
11
Task/Classes/EchoLisp/classes-1.echolisp
Normal file
|
|
@ -0,0 +1,11 @@
|
|||
(lib 'gloops) ; load oo library
|
||||
|
||||
(define-class Person null (name (age :initform 66)))
|
||||
(define-method tostring (Person) (lambda (p) ( format "🚶 %a " p.name)))
|
||||
(define-method mailto (Person Person) (lambda( p o) (printf "From %a to️ %a : ..." p o)))
|
||||
|
||||
;; define a sub-class of Person with same methods
|
||||
(define-class Writer (Person) (books))
|
||||
(define-method tostring (Writer) (lambda (w)( format "🎩 %a" w.name)))
|
||||
(define-method mailto (Person Writer)
|
||||
(lambda (p w) (printf " From %a (age %d). Dear writer of %a ..." p p.age w.books )))
|
||||
Loading…
Add table
Add a link
Reference in a new issue