Size: a a a

2020 June 25

AE

Alexey Egorov in Lisp Forever
Неймспейсов не хватает.
источник

VM

Vyacheslav Mikushev in Lisp Forever
А можешь кусок кода привести? Я пока не сильно въезжаю чего ты хочешь.:)
источник

AE

Alexey Egorov in Lisp Forever
(defgeneric set-uniform-matrix (shader name mat :key (mat-size nil))) ; вот такой дженерик, который буду потом импементить

; хочется при этом ещё иметь автоматическое выковыривание размера матрицы, чтобы не делать это в каждой имплементации:
(defmacro set-uniform-matrix* (shader name mat)
 (set-uniform-matrix shader name mat :mat-size (math:mat-size mat)))
источник

AE

Alexey Egorov in Lisp Forever
Вот такое слабоумие.
источник

VM

Vyacheslav Mikushev in Lisp Forever
Для всех матриц одинаковое вытаскивание размера?
источник

AE

Alexey Egorov in Lisp Forever
Да.
источник

AP

Alex Peresmeshnik in Lisp Forever
Andrew Kravchuk
Так это же отдельный диалект, зачем он нужен?
Не нужен, могли бы модулем сделать. Но по идее в него без проблем можно перенести схемный код. И его код в схему дернув его макрос. Получится такое с кожурой? :)
источник

AE

Alexey Egorov in Lisp Forever
О, я кажется придумал.
источник

AE

Alexey Egorov in Lisp Forever
&aux (mat-size (m:mat-size mat))
источник

LL

Lämppi Lütti in Lisp Forever
Alex Peresmeshnik
Не нужен, могли бы модулем сделать. Но по идее в него без проблем можно перенести схемный код. И его код в схему дернув его макрос. Получится такое с кожурой? :)
Можно
источник

VM

Vyacheslav Mikushev in Lisp Forever
Alexey Egorov
О, я кажется придумал.
Может быть, вот так:
(defgeneric foo1 (x y &optional z))
(defmethod foo1 :around (x y &optional z)
 (call-next-method x y (or z (+ y 7))))
(defmethod foo1 ((x (eql 0)) y &optional z)
 (print (list x y z)))
источник

VM

Vyacheslav Mikushev in Lisp Forever
Где z - это mat-size.
источник

VM

Vyacheslav Mikushev in Lisp Forever
Alexey Egorov
&aux (mat-size (m:mat-size mat))
Хотя, это выглядит лучше.:)
источник

AE

Alexey Egorov in Lisp Forever
Vyacheslav Mikushev
Может быть, вот так:
(defgeneric foo1 (x y &optional z))
(defmethod foo1 :around (x y &optional z)
 (call-next-method x y (or z (+ y 7))))
(defmethod foo1 ((x (eql 0)) y &optional z)
 (print (list x y z)))
Да, можно и так.
источник

AK

Andrew Kravchuk in Lisp Forever
Alex Peresmeshnik
Не нужен, могли бы модулем сделать. Но по идее в него без проблем можно перенести схемный код. И его код в схему дернув его макрос. Получится такое с кожурой? :)
Нет, без проблем этого не получится, Scheme - настолько минималистичный стандарт, что абсолютно во всех реализациях есть свои ни с чем не совместимые расширения, которые делают портирование между разными схемами невозможным.
Ещё раз, твоя критика наличия диалектов лиспа - она не от большого ума
источник

y

yosk in Lisp Forever
Отдельного чата по stumpwm нет, так что спрошу здесь
Как сделать так, чтобы stumpwm использовал notify-send для сообщений (вроде того, что выпадает по C-t a при дефолтном конфиге)
источник

y

yosk in Lisp Forever
Вообще можно заменить функции message, error и т.д., но могут выплыть разные проблемы
источник

y

yosk in Lisp Forever
Сейчас попробовал
В целом неплохо, но большие сообщения разъезжаются
И цвета не поддерживаются
источник

y

yosk in Lisp Forever
Думаю можно будет закостылить
источник

y

yosk in Lisp Forever
Если что я просто сделал

(defun message (fmt &rest args) (run-shell-command (format nil "notify-send '~a'"  (apply 'format nil fmt args))))

Я не гуру лиспа, если что подправьте
источник