Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
здесь ВСЁ.doc
Скачиваний:
0
Добавлен:
01.03.2025
Размер:
317.44 Кб
Скачать

8. Понятие бестипового программирования.

Бестиповый язык предполагает, что переменные одновременно могут быть связаны с разными по типу объектами. Исторически первым языком был Лисп. Бестиповый язык программирования позволяет применять любые операции, определенные в нем, к любым данным, а все типы данных рассматриваются как последовательности битов различной длины. Примером бестиповых языков являются большинство языков ассемблера, а также несколько языков высокого уровня.

Бестиповые языки являются противоположностью типизированных языков. Бестиповые языки: Common Lisp, Erlang, Sheme и др.

9. Обзор функциональных языков программирования.

Критерии сравнения:

Практичность - использование языка программирования в реальных приложениях, наличие коммерческих компиляторов.

Академический - означает, что язык использовался только в научных приложениях, для обучения студентов, на нем нет реальных коммерческих разработок.

Типизация - статическая, динамическая. Строгая - тип переменной определяется до её использования. Динамическая - во время. Не строгая предполагает, что тип переменной определяется типом значения, которое заносится в неё. Безтиповая типизация.

Язык |Вычисления |наличие императивного включения |практичность |типизация|

Common Lisp|Энергичные |не чистый |практичен |без типов|

Sheme |Энергичные |не чистый |академичный |без типов|

Рефал |Ленивый |чистый |академичный |типизир. |

ML |Ленивый |не чистый |академичный |типизир. |

OCAL |Энергичные |чистый |академичный |типизир. |

Haskell |Ленивый |не чистый |академичный |типизир. |

F# |Ленивый |не чистый |академичный |типизир. |

Erlang |Энергичные |чистый |практичен |без типов|

C# |Энергичные |не чистый |практичен |типизир. |

10. Свойства функционального программирования в постановке а. П. Ершова.

Сущность функционального программирования определена А. П. Ершовым как «... способ составления программ, в которых единственным действием является вызов функции, единственным способом расчленения программы на части является введение имени для функции, а единственным правилом композиции — оператор суперпозиции функции. Никаких ячеек памяти, ни операторов присваивания, ни циклов, ни, тем более, блок-схем, ни передачи управления».

11. Структура символьного выражения в Лиспе.

(Символьные выражения) S-выр:

1.скалярные объекты (символы, числа, атомы). Примеры символов: Vmax, A753,S. Символ, который используется для представления константного объекта предметной области, называется атомом. Символы, которые используются для именования других объектов, называются переменными (числа - не переменные). Существуют 2 системно определенных атомов T & NIL, которые используются для обозначений логических значений "истина" и "ложь". Символ NIL используется для обозначения пустого списка.

2.структурные объекты (списки).

В лиспе принято единообразная префиксная нотация записи выражений. Все выражения записываются в круглых скобках. Одно и то же выражение, в зависимости от контекста, может выступать в разных ролях.

>(имя_функции аргумент1 аргумент2 ... аргументN)