Languages Features Creators Calendar CSV Resources Blog About Pricing Add Language
GitHub icon

NewLisp

NewLisp - Programming language

< >

NewLisp is a programming language created in 1991 by Lutz Mueller.

#198on PLDB 32Years Old 453Users
0Books 0Papers 476Repos

Try now: TIO

newLISP is an open source scripting language in the Lisp family of programming languages developed by Lutz Mueller and released under the GNU General Public License.. Read more on Wikipedia...


Example from hello-world:
#!/usr/bin/newlisp (print "Hello World\n") (exit)
Example from Linguist:
#!/usr/bin/env newlisp (constant 'NUM 8) (define (intersects? q1 q2) (or (= (q1 0) (q2 0)) (= (q1 1) (q2 1)) (= (abs (- (q1 0) (q2 0))) (abs (- (q1 1) (q2 1)))))) (define (variant? alist) (set 'logic nil) (cond ((= (length alist) 1) true) ((> (length alist) 1) (while (> (length alist) 1) (set 'q (pop alist -1)) (dolist (el alist) (push (intersects? (list q (inc (length alist))) (list el (+ 1 $idx))) logic -1))) (not (apply or logic))))) (define (fork-by-line alist) (let (res '()) (dolist (i (sequence 1 NUM)) (set 'tmp alist) (push i tmp -1) (setf res (push tmp res -1))) res)) (define (find-variants num) (let (res '()) (cond ((< num 1) (begin (println "num < 1") (exit))) ((= num 1) (dolist (i (sequence 1 NUM)) (push (list i) res -1))) ((> num 1) (dolist (v (find-variants (dec num))) (set 'passed (filter variant? (fork-by-line v))) (if (not (empty? passed)) (extend res passed))))) res)) (set 'solutions (find-variants NUM)) (println (length solutions)) ;;(exit)

Language features

Feature Supported Token Example
Line Comments
Print() Debugging print
Comments
Semantic Indentation X
slim-lang.html · newlisp.html · nemerle.html

View source

- Build the next great programming language · Search · v2023 · Day 208 · Docs · Acknowledgements · Traffic · Traffic Today · Mirrors · GitHub · feedback@pldb.com