РОССИЙСКАЯ ФЕДЕРАЦИЯ
МИНИСТЕРСТВО ОБРАЗОВАНИЯ
И НАУКИ
ТЮМЕНСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ
ФИЛИАЛ ФЕДЕРАЛЬНОГО ГОСУДАРСТВЕННОГО
БЮДЖЕТНОГО
ОБРАЗОВАТЕЛЬНОГО УЧРЕЖДЕНИЯ
ВЫСШЕГО ПРОФЕССИОНАЛЬНОГО
ОБРАЗОВАНИЯ
«ТЮМЕНСКИЙ ГОСУДАРСТВЕННЫЙ
УНИВЕРСИТЕТ»
В Г. ТОБОЛЬСКЕ
Кафедра информатики
и ТиМОИ
Реферат
«Развитие языков
программирования»
Реферат
студентки 2 курса
очной формы обучения
направлению подготовки
«Профессиональное обучение»
профиль «Экономика и управление»
Е. А. Пановой
Проверила:
Н. М. Косолапова
Тобольск, 2014
СОДЕРЖАНИЕ
Введение 3
Развитие
языков программирования 4
1. Ассемблер 4
2. Лисп 4
3. Фортран 5
4. Бейсик 7
5. Рефал 8
6. Пролог
и Пролог++ 9
7. Лекс 10
8.Си 11
8.1. Особенности
языка Си 12
8.2. Недостатки
языка Си 13
9. Си++ 14
Заключение 18
Библиография 19
ВВЕДЕНИЕ
На современном этапе развития компьютерных
технологий невозможно представить какого–либо
высококвалифицированного специалиста,
не владеющего информационными технологиями.
Поскольку деятельность любого субъекта
в значительной степени зависит от степени
владения информации, а также способности
эффективно ее использовать. Для свободной
ориентации в информационных потоках
современный специалист любого профиля
должен уметь получать, обрабатывать и
использовать информацию, прежде всего,
с помощью компьютеров, а также телекоммуникаций
и других новейших средств связи, в том
числе и уметь, обращаться с языками программирования.
Актуальность данной темы обусловлена
тем, что прогресс компьютерных технологий
определил процесс появления новых разнообразных
знаковых систем для записи алгоритмов
– языков программирования.
Объектом исследования послужили языки
программирования и история развития
языков программирования.
Целью реферата является изучение языков
программирования и их развития.
Задачи:
- Ознакомление с языками программирования.
- Рассмотрение истории развития языков
программирования.
- Обзор современных языков программирования.
РАЗВИТИЕ
ЯЗЫКОВ ПРОГРАММИРОВАНИЯ
Ассемблер
Язык Ассемблера
– это символическое представление машинного
языка. Он облегчает процесс программирования
по сравнению с программированием в машинных
кодах.
Программисту
не обязательно употреблять настоящие
адреса ячеек памяти с размещенными в
них данными, участвующими в операции,
и вычисляемые результаты, а также адреса
тех команд, к которым программа не обращается.
Некоторые
задачи, например, обмен с нестандартными
устройствами обработки данных сложных
структур невозможно решить с помощью
языков программирования высокого уровня.
Это под силу ассемблеру.
В принципе,
язык Ассемблер является машинным языком.
И программист, реализующий какую-либо
задачу на языках высокого уровня, с помощью
Ассемблера может определить осмыслено
ли решение данной задачи, с точки зрения
использования ЭВМ.
Умея разобраться
в распечатке языка ассемблера, дает возможность
облегчить поиск ошибок в программах,
т.к. некоторые языки являются компиляторами.
Лисп
Один из самых старых языков программирования
Фортран был создан в 50-х гг. нашего века.
Фортран и подобные ему языки программирования
(Алгол, ПЛ/1) предназначались для решения
вычислительных задач, возникающих в математике,
физике, инженерных расчетах, экономике
и т.п. Эти языки в основном работают с
числами.
Второй
старейший язык программирования Лисп
(List Information Symbol Processing), Дж. Маккарти в 1962
г. скорее для работы со строками символов,
нежели для работы с числами. Это особое
предназначение Лиспа открыло для программистов
новую область деятельности, известную
ныне, как «искусственный интеллект».
В настоящее время Лисп успешно применяется
в экспертных системах, системах аналитических
вычислений и т.п.
Обширность
области возможных приложений Лиспа вызвала
появление множества различных диалектов
Лиспа. Это легко объяснимо: применение
Лиспа для понимания естественного языка
требует определенного набора базисных
функций, отличных, например, от используемого
в задачах медицинской диагностики.
Существование
множества различных диалектов Лиспа
привело к созданию в начале 80-х гг. Common
LISP Комитета, который должен был выбрать
наиболее подходящий диалект Лиспа и предложить
его в качестве основного. Этот диалект,
выбранный Комитетом в 1985г., получил название
Common LISP . В дальнейшем он был принят в университетах
США, а также многими разработчиками систем
искусственного интеллекта, в качестве
основного диалекта языка Лисп.
Язык программирования
Лисп существенно отличается от других
языков программирования, таких, как Паскаль,
Си и т.п. Работа с символами и работа с
числами как с основными элементами требует
разных способов мышления.
Первоначально
Лисп был задуман как теоретическое средство
для рекурсивных построений, а сегодня
он превратился в мощное средство, обеспечивающее
программиста разнообразной поддержкой,
позволяющей ему быстро строить прототипы
весьма и весьма серьезных систем.
Профессор
Массачусетского технологического института
Дж. Самман заметил, что математическая
ясность и предельная четкость Лиспа –
это еще не все. Главное – Лисп позволяет
сформулировать и запомнить «идиомы»,
столь характерные для проектов по искусственному
интеллекту.
Фортран
Одним из
первых и наиболее удачных компиляторов
стал язык Фортран, разработанный фирмой
IBM. Профессор Дж. Букс и группа американских
специалистов в области программирования
в 1954 году опубликовало первое сообщение
о языке. Дословно, название языка FORmulae
TRANslation –преобразование формул.
Среди причин
долголетия Фортрана (а он один из самых
распространенных языков в мире), можно
отметить простую структуру, как самого
Фортрана, так и предназначенных для него
трансляторов. Программа на Фортране
записывается в последовательности предложений
или операторов (описание некоего преобразования
информации), и оформляется по определенным
стандартам. Эти стандарты накладывают
ограничения, в частности, на форму записи
и расположения частей оператора в строке
бланка для записи операторов. Программа,
записанная на Фортране, представляет
собой один или несколько сегментов (подпрограмм)
из операторов. Сегмент, управляющий работой
всей программы в целом, называется основной
программой.
Фортран
был задуман для использования в сфере
научных и инженерно-технических вычислений.
Однако на этом языке легко описываются
задачи с разветвленной логикой (моделирование
производственных процессов, решение
игровых ситуаций и т.д.), некоторые экономические
задачи и особенно задачи редактирования
(составление таблиц, сводок, ведомостей
и т.д.).
Модификация
языка Фортран, появившиеся в 1958 году,
получила название Фортран II и содержала
понятие подпрограммы и общих переменных
для обеспечения связи между сегментами.
К 1962 году
относится появление языка, известного
под именем Фортран IV и ставшего наиболее
употребительным в настоящее время. К
этому же времени относится и начало деятельности
комиссии при Американской Ассоциации
Стандартов (ASA), которая выработала к 1966
году два стандарта – языки Фортран и
базисный (основной) Фортран (Basic FORTRAN).
Эти языки приблизительно соответствуют
модификациям IV и II, однако базисный Фортран
является подмножеством Фортрана, в то
время, как Фортран II таковым для Фортрана
IV не является. Язык Фортран до сих пор
продолжает развиваться и совершенствоваться,
оказывая влияние на создание и развитие
других языков. Например, Фортран заложен
в основу Basic – диалогового языка, очень
популярного для решения небольших задач,
превосходного языка для обучения навыкам
использования алгоритмических языков
в практике программирования. Разработан
этот язык – Beginner’s All –purpose Symbolic Instruction
Code – группой сотрудников Вычислительного
центра Дартмутского колледжа, штат Нью-Хэмпшир.
Но это уже следующий язык.
Бейсик
Как знаменитые
гамбургеры, бейсбол и баскетбол, Бейсик
- это продукт Новой Англии. Бейсик является
общепринятым акронимом от"Beginner's All-purpose
Symbolic Insruction Code" (BASIC) - Многоцелевой Символический
Обучающий Код для Начинающих".
Вскоре
как обучаемые, так и авторы программ обнаружили,
что Бейсик может делать практически все
то, что делает скучный неуклюжий Фортран.
А так как Бейсику было легко обучиться
и легко с ним работать, программы на нем
писались обычно быстрее, чем на Фортране.
Бейсик был также доступен на персональных
компьютерах, обычно он встроен в ПЗУ.
Так Бейсик завоевал популярность. Интересно,
что спустя 20 лет после изобретения Бейсика,
он и сегодня самый простой для освоения
из десятков языков общецелевого программирования,
имеющихся в распоряжении любителей программирования.
Более того, он прекрасно справляется
с работой.
Несмотря
на высказывания снобов - сторонников
языков Си и Паскаля, Бейсик считается
деловым языком, снабженным мощными средствами
решения специфических задач, которые
обычно большинство пользователей решают
при помощи небольших компьютеров, а именно:
работая с файлами и выводя текстовое
и графическое изображение на экране дисплея.
Несмотря
на отдельные недостатки Бейсика, никто
не будет отрицать, что Кемени и Куртс
достигли основной цели: сделать программирование
доступнее для большего числа людей.
Исторически
Бейсик обычно реализовался как интерпретатор
(знакомым изомером является сам интерпретаторный
Бейсик). Причинами перехода от любительского
уровня к профессиональному являются
многочисленные расширения классической
версии языка: возможность отключения
нумерации строк, многостроковые структурированные
программные конструкции, структуры типа
"запись", поименованные подпрограммы
с параметрами и локальные переменные.
Более того,
с появлением транслятора QuickBasic фирмы Microsoft разработчики получили
возможность строить на Бейсике приложения
из раздельно откомпилированных модулей,
некоторые из которых могут быть написаны
на других языках. Теперь, как и в случае
других ведущих языков программирования,
разработчик имеет выбор из нескольких
промышленных библиотек подпрограмм,
которые содержат готовые решения для
распространенных задач программирования.
Рефал
Несомненно
надо рассказать и о некоторых языках
программирования созданных у нас на родине.
Один из таких языков является Рефал, разработанный
у нас в России (СССР), в 1966г. ИПМ АН СССР.
Этот язык прост и удобен для описания
манипуляций над произвольными текстовыми
объектами.
Рефал широко
применяется при разработке трансляторов
с алгоритмических языков как универсальных
и проблемно – ориентированных, так и
автокодов. Кроме использования в задачах
трансляции, Рефал имеет такие важные
сферы применения, как машинное выполнение
громоздких аналитических выкладок в
теоретической физике и прикладной математике;
проектирование «умных» информационных
систем, осуществляющих нетривиальную
логическую обработку информации; машинное
доказательство теорем; моделирование
целенаправленного поведения; разработка
диалоговых обучающих систем; исследования
в области искусственного интеллекта
и т.п.
Программирование
на Рефале имеет специфику, связанную,
прежде всего, с тем, что Рефал является
языком функционального типа в отличие
от обычных операторных языков типа Алгол,
Фортран и т.д.. Если программа на операторных
языках – ни что иное, как совокупность
приказов-операторов, то программа на
Рефале представляет собой по существу
описание связей и отношений между определенными
понятиями.
Вследствие
того, что в Рефале программист сам определяет
структуру обрабатываемой информации,
эффективность программы существенно
зависит от удачного или неудачного выбора
этой структуры. Для задания структур
в Рефале используются скобки, а специфика
всех реализаций языка такова, что использование
скобок резко повышает эффективность
выполнения программы. Это достигается
с помощью адресного соединения скобок.
Определенной
спецификой обладают и переменные типа
«выражения» – имеется в виду их способность
удлиняться при отождествлении. Правильное
использование переменных этого типа
также позволяет значительно повысить
эффективность Рефал – программы.
- Пролог и Пролог ++
Пролог - это язык, предназначенный
для поиска решений. Это декларативный
язык, то есть формальная постановка задачи
может быть использована для ее решения.
Пролог определяет логические отношения
в задаче, как отличные от пошагового решения
этой задачи.
Центральной частью Пролога
являются средства логического вывода,
которые решают запросы, используя заданное
множество фактов и правил, к которым обращаются
как к утверждениям. Пролог также не имеет
деления переменных на типы и может динамически
добавлять правила и факты к средствам
вывода. Таким образом, это гибкий язык,
и он более пригоден для объектно-ориентированного
расширения, чем язык со строго заданными
типами, например, Паскаль. Пролог ++ представляет
собой дополнение к стандартному Прологу.
Все свойства языка
по-прежнему доступны программистам.
Следовательно, Пролог ++ можно отнести
к группе гибридных языков, представителями
которой считаются Object Pascal и C++. Расширение
Пролог ++ поддерживает все свойства, присущие
обычно объектно-ориентированным языкам:
концепции объектов и классов, единичное
и многократное наследование, разбиение
на подклассы и передачу сообщений. Поддерживаются
также некоторые усовершенствованные
свойства, существующие в таких языках,
как C++ и Smalltalk, включая общие и частные
методы.