Конспект лекций Рыбинск 2010





Скачать 450.1 Kb.
НазваниеКонспект лекций Рыбинск 2010
страница4/12
Дата публикации21.09.2013
Размер450.1 Kb.
ТипКонспект
100-bal.ru > Информатика > Конспект
1   2   3   4   5   6   7   8   9   ...   12

3Обзор существующих языков


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

  • Lisp,

  • Haskell,

  • ML,

  • Erlang.

Рассмотрим особенности каждого из этих языков:

  • Lisp. Получил название от английского LISt Processing – обработка списков. Lisp является одним из самых первых языков функционального программирования. Программы и данные в Lisp представляются системами линейных списков символов. Язык Lisp, наряду с языком Ada, прошел процесс фундаментальной стандартизации для использования в военном деле и промышленности, в результате чего появился стандарт Common Lisp. Его реализации существуют для большинства платформ. Первые области применения Лиспа были связаны с символьной обработкой данных и процессами принятия решений. Наиболее популярный сегодня диалект Common Lisp является универсальным языком программирования. Он широко используется в самых разных проектах: Интернет-серверы и службы, серверы приложений и клиенты, взаимодействующие с базами данных, научные расчёты и игровые программы.

  • Haskell. Является одним из самых распространённых ленивых языков программирования. Имеет очень развитую систему типизации. В последнее время расширяется набор прикладных библиотек, язык интегрируется в распространённые программные системы, что делает язык всё более и более привлекательным для профессиональных программистов. Основные особенности языка: возможность использования лямбда-абстракции; функции высшего порядка; частичное применение; недопустимость побочных эффектов (чистота языка); ленивые вычисления (lazy evaluation); сопоставление по образцу, функциональные образцы (pattern matching); параметрический полиморфизм и полиморфизм классов типов; статическая типизация; автоматическое выведение типов (основано на модели типизации Хиндли – Милнера); алгебраические типы данных; типы данных с параметрами; рекурсивные типы данных; абстрактные типы данных (инкапсуляция); списочные включения (list comprehensions); охраняющие выражения (guards); возможность писать программы с побочными эффектами без нарушения парадигмы функционального программирования с помощью монад; возможность интеграции с программами, реализованными на императивных языках программирования посредством открытых интерфейсов (стандартное расширение языка Foreign Function Interface).

  • ML (Meta Language) – семейство строгих языков функционального программирования с развитой полиморфной системой типов и параметризуемыми модулями. ML преподаётся во многих западных университетах. Сильно типизированный язык со статическим контролем типов и аппликативным выполнением программ. Основные достоинства ML – высокая верифицируемость программ, простота отладки, потенциал для высокой оптимизации, уникальная краткость записи. Основные недостатки – сложность синтаксиса, непривычность принятых соглашений и ограничений, практическая невозможность макротрансформаций.

  • Erlang – функциональный язык программирования, позволяющий писать программы для разного рода распределённых систем. Разработан и поддерживается компанией Ericsson. Язык включает в себя средства порождения параллельных процессов и их коммуникации с помощью посылки асинхронных сообщений. Программа транслируется в байт-код, исполняемый виртуальной машиной, что обеспечивает переносимость. Главное в Erlang – его модель легковесных процессов. Перефразируя для Erlang слоган «Everything is an object» («Всё является объектом»), можно сказать «Everything is a process» («Всё является процессом»). Процессы дёшевы, создание процесса занимает не больше ресурсов, чем вызов функции. Единственным способом взаимодействия процессов является асинхронный обмен сообщениями.

Из перечисленных языков Haskell является наиболее ярким представителем языков функционального программирования. Он обладает простым синтаксисом и всеми перечисленными выше свойствами функциональных языков.

1   2   3   4   5   6   7   8   9   ...   12

Похожие:

Конспект лекций Рыбинск 2010 iconМестного самоуправления городского округа город рыбинск
В соответствии с Федеральным законом от 02. 03. 2007 n 25-фз "О муниципальной службе в Российской Федерации", законодательством о...
Конспект лекций Рыбинск 2010 iconОтчет главы городского округа город Рыбинск
«Об общих принципах организации местного самоуправления в Российской Федерации» на основе информации структурных подразделений и...
Конспект лекций Рыбинск 2010 iconКонспект лекций по курсу сд. Ф корпоративные информационные системы
Д. В. Колесов, Р. Д. Маш, И. Н. Беляев «Биология. Человек», Изд-во «Дрофа», Москва, 2010
Конспект лекций Рыбинск 2010 iconС. П. Филин Концепции современного естествознания: конспект лекций
Конспект лекций соответствует требованиям Государственного образовательного стандарта высшего профессионального образования РФ и...
Конспект лекций Рыбинск 2010 iconКонспект лекций раскрывает содержание и структуру учебной дисциплины...
Налоговое право : конспект лекций / сост доцент Р. В. Бобринев; Кузбасский институт экономики и права. – Кемерово, 2011 – 144 с
Конспект лекций Рыбинск 2010 iconКонспект лекций по дисциплине: теория систем и системный анализ санкт-Петербург...
Выбор показателя эффективности, математическая постановка задачи
Конспект лекций Рыбинск 2010 iconКонспект лекций по философии Часть 1 Античная философия Новосибирск...
Савостьянов А. Н. Конспект лекций по философии / Новосиб гос ун-т. Новосибирск, 2007. Ч. Античная философия. 68 с
Конспект лекций Рыбинск 2010 iconКонспект лекций по курсу хозяйственного права тема Понятие хозяйственного права
Кафедра Истории, социологии и права Назаров Андрей Александрович конспект лекций по курсу хозяйственного права
Конспект лекций Рыбинск 2010 iconКонспект лекций по высшей математике. В 2 частях. Часть М.: Айрис-пресс,...
Баранова Е. С., Васильева Н. В., Федотов В. Л. Практическое пособие по высшей математике. Типовые расчеты. Учебное пособие. — Спб:...
Конспект лекций Рыбинск 2010 iconОпорный конспект лекций Основные понятия, термины, законы, схемы...
Л. Н. Блинов, Н. Н. Ролле. Экология: опорный конспект лекций. Основные понятия, термины, законы, схемы. Спб.: Изд. Спбгпу. 2005....
Конспект лекций Рыбинск 2010 iconКонспект лекций Владимира Климентьева по истории философии, отредактированный...
Рекомендовано Министерством общего и профессионального образования Российской федерации в качестве учебника для студентов высших...
Конспект лекций Рыбинск 2010 iconТеория организации Конспект лекций для студентов специальности «Менеджмент организации»
Макарова н. Н. Теория организации. Конспект лекций с практическими заданиями для студентов специальности "Менеджмент организации....
Конспект лекций Рыбинск 2010 iconПисьменный Д. Т. Конспект лекций по теории вероятностей, математической...
Письменный Д. Т. Конспект лекций по теории вероятностей, математической статистике и случайным процессам. 3-е изд. М.: Айрис-пресс,...
Конспект лекций Рыбинск 2010 iconКонспект лекций

Конспект лекций Рыбинск 2010 iconКонспект лекций по дисциплине правовое регулирование маркетинговой деятельности
Опорный конспект лекций по дисциплине правовое регулирование маркетинговой деятельности
Конспект лекций Рыбинск 2010 iconКонспект лекций по дисциплине методика самостоятельной работы студента...
Отсутствие таких навыков приводит к тому, что учащиеся чувствуют беспомощность и растерянность при необходимости самостоятельно подготовить...


Школьные материалы


При копировании материала укажите ссылку © 2013
контакты
100-bal.ru
Поиск