LISP код на сайте

Посмотрим как справляется плагин WP-Syntax с исходниками на LISP.

(defun rsubs (old new form)
	(cond
		((atom form) (if (equal form old) new form))
		((equal form old) new)
		(t (loop for el in form collect (rsubs old new el)))
	)
)

(defun rrem (what form)
	(cond
		((atom form) (if (equal what form) nil form))
		(t (loop for el in form 
			if (not (equal what el))
			collect (if (listp el) (rrem what el) el)
		))
	)
)

(defun rins (where what form &key before)
	(cond 
		((atom form) form)
		(t (loop for el in form append 
			(if (equal el where) 
				(if before (list what el) (list el what))
				(if (listp el) 
					(list (rins where what el :before before))
					(list el)
				)
			)
		))
	)
)

3
Оставить комментарий

Пожалуйста, авторизуйтесь чтобы добавить комментарий.
1 Цепочка комментария
0 Ответы по цепочке
0 Последователи
 
Популярнейший комментарий
Цепочка актуального комментария
1 Авторы комментариев
Tirinox Авторы недавних комментариев
  Подписаться  
новее старее большинство голосов
Уведомление о