Size: a a a

2021 March 12

A

Aragaer in Lisp Forever
(defun draw-triangle (size)
 (let ((tri (and (> size 0)
                 (cons
                  (loop for x from 2 to (* size 2) collect "*")
                  (mapcar #'(lambda (x) (cons " " x)) (triangle-inner (- size 1)))))))
   (and tri
        (format t "~{~{~a~^ ~}~%~}" (reverse tri)))))
источник

A

Aragaer in Lisp Forever
может не минимальное, но работает
источник

A

Aragaer in Lisp Forever
а, не, стоп, так не работает, я "заинлайнил" криво
источник

A

Aragaer in Lisp Forever
(defun triangle-inner (size)
 (and (> size 0)
      (cons
       (loop for x from 2 to (* size 2) collect "*")
       (mapcar #'(lambda (x) (cons " " x)) (triangle-inner (- size 1))))))

(defun draw-triangle (size)
 (let ((tri (triangle-inner size)))
   (and tri
        (format t "~{~{~a~^ ~}~%~}" (reverse tri)))))
источник

A

Aragaer in Lisp Forever
если поменять имена переменных, то до 281 символа уменьшается
источник

a

akater in Lisp Forever
Варианты с предзаготовкой списков, конечно, самые напрашивающиеся.  У меня получилось решение с созданием одной единственной cons'ы (и она будет общая для всех треугольников).
источник

a

akater in Lisp Forever
Чтобы спойлерить минимально, напишу определение в прямоугольнике 20x7 букв и в rot13:

(qrsha qenj-gevnatyr
(u)(qbgvzrf (a (* 2
u))(sbezng g
"~i:@<~i{~2n~}~>~%"
(* 2 (1- (* 2 u)))
(vaps a)'#1=(* .
#1#))))

Выравнивание это нативная фича format.
источник
2021 March 13

O

O in Lisp Forever
akater
Наткнулся на человека, который пишет (свою первую лисповскую предназначенную для публичного использования, что ли) утилиту командной строки, unix-style.  Я сформулировал такю мысль:

I think use of Lisp for command line tools should in general be discouraged.  It is (1) mostly a misuse of language (not the fault of a language; it's Unix's flaw but nevertheless); (2) a certain way to generate bad reviews, if any, and thus gain yet more bad publicity for Lisp; (3) only useful for a minority inside a minority; (4) is hence a waste of time, imposing opportunity costs at contributors who could otherwise advance Lisp more efficiently.

Elisp is a successful “scripting language” and yet it's never run with #!/usr/bin/emacs or packaged into standalone narrow-purpose emacs builds.  This is true for all good reasons.  Lisp code is meant to be run in long-lived sessions, and it shines most at that.

При этом листая веб в поисках статей по лиспу можно легко наткнуться на пост Fare о том, что With ASDF3, Lisp is now an acceptable scripting language или что-то такое, и этот пост довольно детально раскрывает свой заголовочный тезис — настолько детально, что я не дочитал и мало что понял.  Этот пост, наверное, побуждает многих новичков думать будто быть acceptable scripting language это для Лиспа хорошо и это какое-то важное достижение в инфраструктуре, которое делает Лисп привлекательнее для широкой аудитории.  Если так, то это прям плохо.
buildapp от автора quicklisp. И годный продукт pgloader говорят о умесном использовании
источник

RR

Rigidus Rigidus in Lisp Forever
Wild_Wind
Хз.
Все в твоих руках.
Но, емнип, /lib/ld*.so - часть libc.
И как его заменить без пол литры я хз.
надо провести эксперимент
источник

n

nconc in Lisp Forever
(defun p^(n)(dotimes(a n)(format t"~vd~%"(*(+ n a)2)(format()"~v@{~a~:*~}"(1+(* a 2))"* "))))
CL-USER> (p^ 1)
*
NIL
CL-USER> (p^ 2)
 *
* * *
NIL
CL-USER> (p^ 3)
   *
 * * *
* * * * *
NIL
CL-USER> (p^ 4)
     *
   * * *
 * * * * *
* * * * * * *
NIL
CL-USER> (p^ 5)
       *
     * * *
   * * * * *
 * * * * * * *
* * * * * * * * *
NIL
источник

RR

Rigidus Rigidus in Lisp Forever
nconc
(defun p^(n)(dotimes(a n)(format t"~vd~%"(*(+ n a)2)(format()"~v@{~a~:*~}"(1+(* a 2))"* "))))
CL-USER> (p^ 1)
*
NIL
CL-USER> (p^ 2)
 *
* * *
NIL
CL-USER> (p^ 3)
   *
 * * *
* * * * *
NIL
CL-USER> (p^ 4)
     *
   * * *
 * * * * *
* * * * * * *
NIL
CL-USER> (p^ 5)
       *
     * * *
   * * * * *
 * * * * * * *
* * * * * * * * *
NIL
шайтан однако белый человек!
источник

YK

Yaroslav Khnygin in Lisp Forever
источник

T

TGG in Lisp Forever
Неплохо. Что за клавиатуры?
источник

YK

Yaroslav Khnygin in Lisp Forever
TGG
Неплохо. Что за клавиатуры?
две клавиатуры лисп-машины и новая клавиатура https://keymacs.com/
источник

T

TGG in Lisp Forever
Yaroslav Khnygin
две клавиатуры лисп-машины и новая клавиатура https://keymacs.com/
Выглядят неплохо.
Но они стоят как сраный автомобиль.
источник

YK

Yaroslav Khnygin in Lisp Forever
да :(
источник

T

TGG in Lisp Forever
источник
2021 March 14

YK

Yaroslav Khnygin in Lisp Forever
источник

РБ

Рубикон Безумный... in Lisp Forever
https://gamelisp.rs

я тут случайно выгуглил..
источник

n

nconc in Lisp Forever
(defun p^(n)(dotimes(a n)(format t"~vd~v@{~a~:*~}~%"(*(- n a 1)2)""(1+(* a 2))"* ")))
> (p^ 4)
     *
   * * *
 * * * * *
* * * * * * *
NIL
источник