Автор: Пользователь скрыл имя, 31 Марта 2013 в 18:38, реферат
Повышение производительности компьютеров и перемены в составе используемого ПО делают роль языков описания сценариев в создании приложении будущего все более и более важной. Эти языки отличаются от языков программирования системного уровня тем, что их основное назначение – связывать различные компоненты и приложения друг с другом.
Введение
……………………………………………………….
3
1
История развития языков программирования
……….
5
1.1
Языки программирования
……………………………..
7
1.2
Языки процедурного программирования
…………….
8
1.3
Языки искусственного интеллекта
…………………...
9
1.4
Современные языки объектно-ориентированного и
визуального программирования
………………………
10
1.5
Схема развития языков программирования
…………..
2
Описание языков программирования
………………..
2.1
ADA
……………………………………………………..
2.2
ALGOL 60
………………………………………………
2.3
ALGOL 68
………………………………………………
2.4
Basic
……………………………………………………..
2.5
C
…………………………………………………………..
2.6
C++
……………………………………………………….
2.7
Cobol
……………………………………………………
2.8
Forth
……………………………………………………..
2.9
Fortran
……………………………………………………
2.10
LISP
……………………………………………………..
2.11
Java
……………………………………………………….
2.12
Modula-2
………………………………………………...
2.13
Oberon
……………………………………………………
2.14
Oberon-2
……………………………………………......
2.15
Pascal
……………………………………………………
2.16
Perl
……………………………………………………….
2.17
PL/1
……………………………………………………..
2.18
Prolog
……………………………………………………
Заключение
……………………………………………………..
Список использованных источников
………………………….
12
МИНИСТЕРСТВО ОБРАЗОВАНИЯ РЕСПУБЛИКИ БЕЛАРУСЬ
Учреждение образования «Брестский государственный технический университет»
Кафедра Интеллектуальных информационных технологий»
РЕФЕРАТ
по дисциплине «Введение в специальность»
на тему:
«История развития языков программирования»
Выполнил студент 1 курса группы
Преподаватель - доцент кафедры ИИТ
Савицкий Ю.В.
Брест 2007
СОДЕРЖАНИЕ
Введение |
………………………………………………………. |
3 | ||||||||||||||
1 |
История развития языков программирования |
………. |
5 | |||||||||||||
1.1 |
Языки программирования |
…………………………….. |
7 | |||||||||||||
1.2 |
Языки процедурного программирования |
……………. |
8 | |||||||||||||
1.3 |
Языки искусственного интеллекта |
…………………... |
9 | |||||||||||||
1.4 |
Современные языки объектно- |
|||||||||||||||
визуального программирования |
……………………… |
10 | ||||||||||||||
1.5 |
Схема развития языков программирования |
………….. |
||||||||||||||
2 |
Описание языков программирования |
……………….. |
||||||||||||||
2.1 |
ADA |
…………………………………………………….. |
||||||||||||||
2.2 |
ALGOL 60 |
……………………………………………… |
||||||||||||||
2.3 |
ALGOL 68 |
……………………………………………… |
||||||||||||||
2.4 |
Basic |
…………………………………………………….. |
||||||||||||||
2.5 |
C |
………………………………………………………….. |
||||||||||||||
2.6 |
C++ |
………………………………………………………. |
||||||||||||||
2.7 |
Cobol |
…………………………………………………… |
||||||||||||||
2.8 |
Forth |
…………………………………………………….. |
||||||||||||||
2.9 |
Fortran |
…………………………………………………… |
||||||||||||||
2.10 |
LISP |
…………………………………………………….. |
||||||||||||||
2.11 |
Java |
………………………………………………………. |
||||||||||||||
2.12 |
Modula-2 |
………………………………………………... |
||||||||||||||
2.13 |
Oberon |
…………………………………………………… |
||||||||||||||
2.14 |
Oberon-2 |
……………………………………………...... |
||||||||||||||
2.15 |
Pascal |
…………………………………………………… |
||||||||||||||
2.16 |
Perl |
………………………………………………………. |
||||||||||||||
2.17 |
PL/1 |
…………………………………………………….. |
||||||||||||||
2.18 |
Prolog |
…………………………………………………… |
||||||||||||||
Заключение |
…………………………………………………….. |
|||||||||||||||
Список использованных источников |
…………………………. |
12 |
ВВЕДНЕНИЕ
Повышение производительности компьютеров и перемены в составе используемого ПО делают роль языков описания сценариев в создании приложении будущего все более и более важной. Эти языки отличаются от языков программирования системного уровня тем, что их основное назначение – связывать различные компоненты и приложения друг с другом. В них находят применение бестиповые подходы к описанию данных, что позволяет вывести программирование на более высокий уровень и ускорить процесс разработки по сравнению с языками системного уровня.
За прошедшие 15 лет
в методологии написания
Эти языки создавались для различных целей, что обусловило ряд фундаментальных различии между ним. Системные разрабатывались для построения структур данных и алгоритмов “с нуля”, начиная от таких примитивных элементов, как слово памяти компьютера, В отличие от этого, языки описания сценариев создавались для связывания готовых программ, Их применение подразумевает наличие достаточного ассортимента мощных компонентов, которые требуется только объединить друг с другом, Языки системного уровня используют строгий контроль типов, что помогает разработчикам приложении справляться со сложными задачами; языки же описания сценариев не используют понятие типа, что упрощает установление связей между компонентами и ускоряет разработку прикладных систем.
Языки этих двух типов является взаимодополняющими, и большинство компьютерных платформ еще с середины 60-х годов оснащаются как теми, так и другими. В компонентных инфраструктурах они применяются, как правило, совместно компоненты создаются на языках программирования системного уровня, а для их связи между собой используются языки описания сценариев, Однако ряд современных тенденции, включая появление более быстрых машин и более совершенных языков описания сценариев, повышение значимости графического интерфейса пользователя и компонентных архитектур, а также рост популярности Internet, чрезвычайно расширили сферу применимости языков описания сценариев,Развитие этих тенденции продолжиться и в следующем десятилетии, вследствие чего все больше приложении будет создаваться целиком и полностью на языках описания сценариев, а роль языков программирования системного уровня сведется почти исключительно к созданию компонентов.
ИСТОРИЯ СОЗДАНИЯ ЯЗЫКОВ ПРОГРАММИРОВАНИЯ
Языки программирования
Язык программирования - это специальный язык, на котором пишут команды для управления компьютером. Языки программирования созданы для того, чтобы людям было проще читать и писать для компьютера, но они затем должны транслироваться (транслятором или интерпретатором) в машинный код, который только и может исполняться компьютером. Языки программирования можно разделить на языки высокого уровня и языки низкого уровня.
Язык низкого уровня - это язык программирования предназначенный для определенного типа компьютера и отражающий его внутренний машинный код; языки низкого уровня часто называют машинно-ориентированными языками. Их сложно конвертировать для использования на компьютерах с разными центральными процессорами, а также довольно сложно изучать, поскольку для этого требуется хорошо знать принципы внутренней работы компьютера.
Язык высокого уровня - это язык программирования, предназначенный для удовлетворения требований программиста; он не зависит от внутренних машинных кодов компьютера любого типа. Языки высокого уровня используют для решения проблем и поэтому их часто называют проблемно-ориентированными языками. Каждая команда языка высокого уровня эквивалентна нескольким командам в машинных кодах, поэтому программы, написанные на языках высокого уровня, более компактны, чем аналогичные программы в машинных кодах.
Программы для первых ЭВМ программисты писали на языках машинных команд. Это очень трудоемкий и длительный процесс. Проходило значительное время между началом составления программы и началом ее использования. Решить эту проблему можно было лишь путем создания средств автоматизации программирования. Первыми "инструментами", которые экономили труд программистов, стали подпрограммы. В августе 1944 года для релейной машины "Марк-I" под руководством Грейс Хоппер (женщина-программист, морской офицер ВМФ США) была написана первая подпрограмма для вычисления sinx. Не одну Грейс Хоппер волновала проблема облегчения труда программистов. В 1949 году Джон Моучли (один из создателей ЭВМ ENIAC) разработал систему Short Code, которую можно считать предшественницей языков программирования высокого уровня. Программист записывал решаемую задачу в виде математических формул, преобразовывал формулы в двухбуквенные коды. В дальнейшем специальная программа переводила эти коды в двоичный машинный код. Таким образом, Дж. Моучли разработал один из первых примитивных интерпретаторов. А в 1951 году Г. Хоппер создала первый компилятор А-0. Ею же впервые был введен этот термин.
В 50-е годы прошлого века группа под руководством Г. Хоппер приступила к разработке нового языка и компилятора В-0. Новый язык позволил бы программировать на языке, близком к обычному английскому. Разработчики языка выбрали около 30 английских слов, для распознавания которых Г. Хоппер придумала способ, сохранившийся в операторах будущих языков программирования: каждое слово содержит неповторимую комбинацию из первой и третьей букв. Благодаря этому компилятор при создании машинного кода программы может игнорировать все остальные буквы в слове. Необходимость появления такой системы, язык которой приближен к разговорному, Г. Хоппер связывала с тем, что область применения ЭВМ будут расширяться, в связи с чем будет расти и круг пользователей. По словам Г. Хоппер, следует оставить попытки "превратить их всех в математиков". В 1958 году система В-0 получила название FLOW-MATIC и была ориентирована на обработку коммерческих данных. В 1959 году был разработан язык COBOL (Common Business Oriented Language) (Кобол)- машинно независимый язык программирования высокого уровня для решения задач бизнеса. Одна и та же программа, написанная на машинно независимом языке, может быть выполнена на ЭВМ разных типов, оснащенных соответствующим транслятором с этого языка. Консультантом при создании языка COBOL вновь выступила Г. Хоппер. В 1954 году публикуется сообщение о создании языка FORTRAN (FORmula TRANslation) (Фортран). Местом рождения языка стала штаб-квартира фирмы IBM в Нью-Йорке. Одним из главных разработчиков является Джон Бэкус. Он же стал автором НФБ (нормальная форма Бэкуса), которая используется для описания синтаксиса многих языков программирования, В тот же период в европейских странах и в СССР популярным становится язык ALGOL. Как и FORTRAN, он ориентировался на математические задачи. В нем была реализована передовая для того времени технология программирования - структурное программирование. Большое количество новых языков стало появляться в 60-е, 70-е годы прошлого столетия, но не все из них выдержали испытание временем. К языкам-долгожителям следует отнести язык BASIC, разработанный в Дартмутском университете в 1964 году под руководством Джона Кемени и Томаса Курца. По замыслу авторов, это простой язык, легко изучаемый, предназначенный для программирования несложных расчетных задач. Наибольшее распространение BASIC получил на микро-ЭВМ и персональных компьютерах. Однако первоначально этот язык был неструктурным и с этой точки зрения плохо подходил для обучения качественному программированию. В 1985 году была создана версия языка True BASIC, которая по мнению разработчиков была совершеннее, чем PASCAL. В 1991 году появилась первая версия языка VISUAL BASIC.
Языки процедурного программирования
Для первых языков программирования характерной чертой была предметная ориентация. Это значит, что каждый язык предназначался для решения какого-то определенного класса задач. COBOL был ориентирован на решение задач бизнеса, FORTRAN - на проведение инженерных и научных расчетов. В эпоху ЭВМ третьего поколения большое распространение получил язык PL/1 (Program Language/1), разработанный фирмой IBM. Это был первый язык, претендовавший на универсальность, т. е. на возможность решать любые задачи: вычислительные, обработки текстов, накопления и поиска информации. PL/1 оказался слишком сложным языком. Транслятор с него недостаточно оптимальный, содержащий ряд невыявленных ошибок. По этой причине этот язык не получил распространения. Однако линия на универсализацию языков была продолжена. Старые языки были модернизированы в универсальные варианты. Примером тому стал FORTRAN 77. Значительным событием в истории языков программирования стало создание в 1971 году языка PASCAL. Его автором является Никлаус Вирт, профессор из Швейцарии. Вирт назвал этот язык в честь французского математика и физика Блэза Паскаля, который в 1642 году сконструировал вычислительный механизм. Первоначально PASCAL создавался как язык для обучения. В нем ярко выражена структурная линия программирования. Широкое практическое применение язык получил с появлением персональных компьютеров в версии Turbo PASCAL. Язык программирования С ("Си") был задуман как инструментальный язык для разработки операционных систем. Он создавался одновременно с операционной системой UNIX. Авторами этого языка и ОС UNIX являются американские программисты Деннис Ричи и Кеннет Томпсон. Первоначально К. Томпсон начал писать ОС UNIX на языке FORTRAN. В дальнейшем был создан язык С, и в 1973 году ядро операционной системы вместе с программами-утилитами было переписано на С. Этот язык является структурным языком высокого уровня. В настоящее время он применяется для разработки не только операционных систем, но и трансляторов, системных и прикладных программ.
Языки искусственного интеллекта
В 90-х годах прошлого столетия планировалось появление компьютеров пятого поколения, называемых машинами "искусственного интеллекта". В качестве основных языков программирования в этом проекте предполагались языки искусственного интеллекта LISP и PROLOG. Создателем языка LISP (1956-1959 гг.) является Джон Маккарти, которого называют отцом искусственного интеллекта. Именно он первым ввел термин "искусственный интеллект". Основным в языке LISP является понятие рекурсивно определенных функций. Доказано, что любой алгоритм может быть описан с помощью некоторого набора рекурсивных функций. Основные идеи этого языка были позже использованы в языке программирования для детей LOGO, разработанном в 70-е годы в Массачусетском технологическом институте под руководством Сэймура Пейперта. Подмножество языка LOGO, включающее команды для Черепашки, применяется при раннем обучении программированию. Язык PROLOG разработан во Франции в 1972 году также для решения проблем искусственного интеллекта. PROLOG позволяет в формальном виде описывать различные утверждения, логику рассуждений, заставляет компьютер давать ответы на заданные вопросы.
Информация о работе История развития языков программирования