Галактеко, а вы знаете что есть такой вот проект:
The goal of this “Readable Lisp s-expressions” project is to develop, implement, and gain widespread adoption of more readable format(s) for the S-expressions of Lisp-based languages (such as Common Lisp, Scheme, Emacs Lisp, and Arc). We’ve done this by creating new abbreviations that can be added to existing readers. Curly-infix-expressions add infix expressions (in a Lispy way), neoteric-expressions also add more traditional function call notation, and sweet-expressions also add deducing parentheses from indentation.
Во что эти люди превратили Лисп? — спросите вы. Вот в это, например:
Awkward S-expression:
(define (factorial n)
  (if (<= n 1)
    1
    (* n (factorial (- n 1)))))
Improved Sweet-expression:
define factorial(n)
  if {n <= 1}
    1
    {n * factorial{n - 1}}
    (define (add-if-all-numbers lst)
      (call/cc
       (lambda (exit)
         (let loop ((lst lst) (sum 0))
           (if (null? lst) sum
             (if (not (number? (car lst))) (exit #f)
               (+ (car lst) (loop (cdr lst)))))))))
     define add-if-all-numbers(lst)
       call/cc $ lambda (exit)
         let loop (lst(lst) sum(0))
           if null?(lst)
             sum
             if not(number?(car(lst)))
               exit #f
               {car(lst) + loop(cdr(lst))}
В какой-то питон.
Дискас, что ли.










