LINUX.ORG.RU

Сообщения OBOLLlu

 

вопрос про макросы в лиспе

Вот решил я изучить Common Lisp путём написания небольших прог,
и взялся за написание интерпретатора бейсика. 
По ходу написания заметил в функции, разбирающей строку на оператор
и параметры, закономерность:

(cond 
      ((integerp operator) (setf (gethash operator *program*) argument))
      ((eql operator 'rem) (basic-rem argument))
      ((eql operator 'let) (basic-let argument))
      ((eql operator 'list) (basic-list argument))
      ((eql operator 'run) (basic-run argument))
      ((eql operator 'quit) (basic-quit argument))
      (t (syntax-error "Не знаю такого оператора")))

чем дальше я буду писать, тем больше будет становится этот кусок.
можно ли заменить этот кусок макросом? и как тогда из параметра
сделать функцию "basic-параметр"?

>>>

OBOLLlu
()

RSS подписка на новые темы