Nil

NIL, nil — символьный атом в языке Лисп, обозначаюший ложь при интерпретации его в качестве элемента булева выражения и пустой список при обработке списков. В таком же качестве nil используется в большом числе других функциональных языков программирования[1].

В стандартных реализациях Лисп NIL активно используется при низкоуровневых манипуляциях внутренней структурой списков (переадресации указателей). Так, например, функция SPLIT заменяет на NIL центральный элемент списка[2].

Постольку, поскольку Лисп обеспечивает автоматическую сборку мусора[3], обращение к nil в этом языке, в отличие от обращения к неинициализированным указателям в ряде других языков программирования, само по себе безопасно для дальнейшего выполнения программы.

В других языках программирования

NIL или nil используется в качестве обозначения пустого указателя в таких языках программирования как Pascal, Компонентный Паскаль и Ruby. В этих языках он имеет иную семантику (не представляет собой булево значение) и применяется в иных целях, чем в Лисп.

Примечания

  1. Е.И.Большакова, Н. В.Груздева. Основы программирования на языке Лисп. — Москва: Издательский отдел факультета ВМК МГУиме ни М.В.Ломоносова; МАКС Пресс, 2010, 2010.
  2. Михаил Владимирович Швецкий. Язык программирования LISP. Кафедра программного обеспечения автоматизированных систем Курганского государственного университета. Дата обращения: 8 августа 2020.
  3. Введение в Common Lisp для профессионалов Delphi/SQL. rosinmn.ru. Дата обращения: 8 августа 2020.
This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.