Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лабораторна робота 1_укр.docx
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
52.74 Кб
Скачать

Лабораторна робота 1.

Тема: Ознайомлення з середовищем Lisp. Базові функції Лиспа. Символи, властивості символів. Математичні й логічні функції

Мета: ознайомитися із середовищем Lisp. Вивчити базові функції Лиспа, символи і їхні властивості, математичні й логічні функції.

  1. Основні положення програмування на Лиспі.

  2. Завантаження системи, системний редактор.

  3. Функції списків.

  4. Символи, властивості символів.

  5. Математичні й логічні функції.

  6. Хід роботи.

  7. Контрольні питання.

Теоретичне введення.

  1. Основні положення програмування на Лиспі

  • Лисп орієнтований на обробку нечислових завдань. Він ґрунтується на алгебрі спискових структур, лямбда-численні й теорії рекурсій.

  • Мова має функціональну спрямованість, тобто будь-яке речення укладене в дужки, уведене поза редактором уважається функцією й виконується відразу після натискання «ENTER».

  • Щоб запобігти обчисленню значення виразу, потрібно перед цим виразом поставити апостроф «’». Апостроф перед виразом – скорочення функції Лиспа QUOTE.

  • У Лиспі форми подання програми й оброблюваних нею даних однакові. І те й інше представляється списковою структурою, що має однакову форму.

  • Типи даних не пов'язані з іменами об'єктів даних, а супроводжують самі об'єкти. Змінні можуть у різні моменти часу представляти різні об'єкти.

  • Основні типи даних мови – атоми й списки.

Атоми це символи й числа.

Список упорядкована послідовність, елементами якої є атоми або списки. Списки задаються у круглих дужках, елементи списку розділяються пробілами. Кілька пробілів між символами еквівалентні одному пробілу. Перший елемент списку називається «головою», а залишок, тобто список без першого елемента, називається «хвостом». Список, у якому немає жодного елемента, називається порожнім і позначається «( )» або NIL.

Символ – це ім'я, що складається з букв, цифр і спеціальних знаків, що позначає який-небудь предмет, об'єкт, дію. У Лиспі символи позначають числа, інші символи або більш складні структури, програми (функції) і інші об'єкти Лиспа. Символи можуть складатися як із прописних, так і з малих літер, хоча в більшості Лисп-систем прописні і малі літер ототожнюються й представляються прописними буквами.

  • Символи Т и NIL мають у Лиспі спеціальне призначення: Т – позначає логічне значення істина, a NIL – логічне значення неправда.

  • При генерації або зчитуванні Лиспом нового символу, за його величину приймається він сам. Таке посилання символу на себе називається автопосиланням.

  • Створення програми на Лиспі – написання деякої функції, можливо складної, при обчисленні функції, що використає інші, або рекурсивно саму себе. На практиці, написання програм здійснюється записом у файл визначень функцій, даних й інших об'єктів за допомогою наявного в програмному оточенні редактора.

  • Необов'язково робити відступи в рядках виразів, що входять у функції. Насправді, за бажанням, ви можете написати всю програму в один рядок. Однак відступи в рядках і порожні рядки роблять структуру програми зрозумілою й читабельною. Так само вирівнювання початкових і кінцевих дужок основних виразів допомагають переконатися в балансі дужок.

  • Визначення функцій можуть зберігатися у файлах і завантажуватися використовуючи функцію RDS

(RDS '<ім'я файлу>)

  • Ця функція зчитує файл виразів і виконує ці вирази. <Ім'я файлу> - це строкова константа, що являє собою ім'я файлу без розширення (мається на увазі розширення "lsp").

  • Ви можете згенерувати ваші власні вихідні файли з використанням або редактору LISP, або редактору зовнішніх текстів, що відповідає ОС вашої ЕОМ і генерує стандартні текстові файли ASCII.