В чем разница между записью, печатью, печатью, принтом и prin1?

Я вхожу в некоторые Lisp, и я сталкивался с различными функциями, которые для меня, похоже, делают то же самое... А именно печать на консоль... Так в чем же разница между всеми эти разные функции?

Ответ 1

Ответ здесь: http://www.lispworks.com/documentation/HyperSpec/Body/f_wr_pr.htm

  • write - это общая точка входа в принтер Lisp.
  • prin1 производит вывод, подходящий для ввода для read.
  • princ похож на prin1 за исключением того, что в выводе нет escape-символов. princ предназначен для того, чтобы хорошо выглядеть людям, а вывод от prin1 должен быть приемлемым для функции read.
  • print аналогична prin1 за исключением того, что печатному представлению объекта предшествует prin1 новой строки, за которым следует пробел.
  • pprint производит симпатичный вывод.