Файл: Классификация языков программирования высокого уровня и их характеристика.pdf

ВУЗ: Не указан

Категория: Курсовая работа

Дисциплина: Не указана

Добавлен: 24.04.2023

Просмотров: 238

Скачиваний: 2

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.

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

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

Модификация языка Фортран, которая появилась в 1958 году, дали ему название Фортран II и содержала понятие подпрограммы и общих переменных для обеспечения связи между сегментами.

К 1962 году относится появление языка, которого известно под именем Фортран IV и ставшего наиболее употребительным в настоящее время. К этому же времени относится и начало деятельности комиссии при Американской Ассоциации Стандартов, которая выработала к 1966 году два стандарта – языки Фортран и базисный Фортран. Эти языки приблизительно соответствуют модификациям IV и II, однако этот базисный Фортран является подмножеством Фортрана, в то же время, как этот Фортран II таковым для Фортрана IV не является. Язык Фортран до сих пор продолжает развиваться и совершенствоваться, который оказывает влияние на создание и развитие других языков. Например, Фортран положен в основу Basic – диалогового языка, очень популярного для решения небольших задач, который превосходно подходит для обучения навыкам применения алгоритмических языков в практике программирования. Разработан этот язык – BASIC – группой специалистов Вычислительного центра Дартмутского колледжа, штат Нью-Хемпшир созданного в 1964г.

Бейсик

Как знаменитые гамбургеры, бейсбол и баскетбол, Бейсик — это создание Новой Англии, который был разработан в 1964г., как первоначальный язык обучения программированию. Бейсик является общепринятым акронимом от "Beginner's All-purpose Symbolic Insruction Code" (BASIC) - Многоцелевой Символический Обучающий Код для Начинающих".

Вскоре как обучаемые, так и авторы программ увидели, что Бейсик может делать практически все то, что делает скучный неумелый Фортран. А так как Бейсику было не трудно обучиться и легко с ним работать, которые программы на нем писались как всегда были быстрее, чем на Фортране. Бейсик был также доступен на персональных компьютерах, так как он обычно встроен в ПЗУ. Так Бейсик завоевал большую популярность. Интересно, что спустя 20 лет после изобретения Бейсика, он и сегодня самый легкий для освоения из десятков языков общецелевого программирования, которые имеются в распоряжении любителей программирования. Более того, он хорошо справляется с любой работой.


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

Несмотря на некоторые недостатки Бейсика, и никто не будет отрицать, то что Кемени и Куртс достигли основной цели: сделать программирование более доступнее для большего числа людей.

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

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

Рефал

Рефал, был разработанный у нас в России (СССР), в 1966г. ИПМ АН СССР. Этот язык прост и удобен для описания манипуляций над произвольными текстовыми объектами.

Рефал шире используется при разработке трансляторов с алгоритмических языков как универсальных и проблемно – ориентированных, так и автокодов. Кроме применения в задачах трансляции, в которых Рефал имеет такие важные сферы использования, как машинное исполнение громоздких аналитических выкладок в теоретической физике и прикладной математике; проектирование «умных» информационных систем, которые осуществляют нетривиальную логическую обработку информации; машинное доказательство теорем; моделирование целенаправленного поведения; разработка диалоговых обучающих систем; исследования в области искусственного интеллекта и т.п.

Программирование на Рефале имеет особенную, связанную, прежде всего, с тем, что Рефал является языком программирования функционального типа в отличие от обычных операторных языков типа Алгол, Фортран и т.д. Если программа на операторных языках – ни что иное, как объединение приказов-операторов, то программа на Рефале преподносит себя по существу описание связей и отношений между определенными понятиями.


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

Определенной спецификой обладают и переменные типа «выражения» – имеется в виду их способность удлиняться при отождествлении. Правильное применение переменных этого типа также позволяет очень значительно повысить эффективность Рефал – программы.

Пролог и Пролог ++

Пролог — это язык, который определен для поиска решений. Это декларативный язык, то есть формальная постановка задачи может быть использована для ее решения. Пролог показывает логические отношения в задаче, так как отличные от пошагового решения этой задачи.

Главной частью Пролога являются средства логического вывода, которые решают запросы, применяя заданное множество фактов и правил, обращающие как к утверждениям. Пролог также не имеет деления переменных на типы и может динамически добавлять правила и факты к средствам вывода. Таким образом, это гибкий язык, и он более пригоден для объектно-ориентированного расширения, чем язык со строго заданными типами, например, Паскаль. Пролог ++ представляет собой дополнение к стандартному Прологу.

Все свойства языка по-прежнему доступны программистам. Следовательно, этот Пролог ++ можно отнести к группе гибридных языков, представителями которой считаются Object Pascal и C++. Расширение Пролог ++ поддерживает все параметры, которые присущие обычно объектно-ориентированным языкам: концепции объектов и классов, единичное и многократное наследование, имеют разбиение на подклассы и передачу сообщений. Поддерживаются также некоторые усовершенствованные параметры, которые существуют в таких языках, как C++ и Smalltalk, могут включать общие и частные методы.

Хорошим параметром является поддержка в языке программирования с управлением данными. Эта техника, может еще названа программированием, "управляемым событиями", которую применяют в большинстве языков объектно-ориентированного программирования, особенно в тех, которые разработаны для машин с интерфейсом, которые управляются "мышью".

Объектно-ориентированная программа реагирует на события, которые определяют поток управления. В Прологе ++ программирование с управлением данными достигается с помощью концепции демонов. Демон представляет собой объект, методы которого вызываются в случае определенных событий и могут таким образом использованы для поддержки программирования с управлением данными.


Сам язык создан на концепции передачи сообщений. Программа на Прологе ++ разрабатывается вокруг множества объектов Пролога ++, которые обмениваются сообщениями. В этом смысле Пролог ++ рядом к чистому объектно-ориентированному языку, такому, как Smalltalk, чем C++ или Object Pascal. Определения объектов строятся исходя из вызовов.

Open_Object [имя_объекта] и Close_Object [имя_объекта], а методы распределяются практически так же, как в других объектно-ориентированных языках программирования. Для создания наследования можно явным образом показать, какой метод какого объекта должен наследоваться, это является необходимым для многочисленного наследования.

Лекс

Лекс – источник программ лексического анализа. Лексический анализ – это определение лексем во входящем потоке символов. Представим, что задано некоторое конечное множество слов (лексем) в некотором языке и некоторое входное слово. Необходимо указать, то какой элемент множества совпадает с данным входным словом. Обычно лексический анализ исполняется так называемым лексическим анализатором. Лексический анализатор – это программа. Лексический анализ применяется в большинстве случаях, например, для составления пакетного редактора или в качестве распознавателя директив в диалоговой программе и т.д. Скорее всего, более важное применение лексического анализатора – это применение его в компиляторе. Тут лексический анализатор выполняет функцию программы ввода данных.

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

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

Лексический анализатор должен не только показать лексему, но и выполнить некоторые преобразования. Например, если лексема – число, то его необходимо преобразовать во внутреннюю (двоичную) форму записи как число с плавающей или фиксированной запятой. А если лексема – идентификатор, то его необходимо поместить в таблице, для того чтобы в дальнейшем обращаться к нему не по имени, а по адресу в таблице.

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


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

Си – это превосходный язык программирования, и, хотя некоторым он не нравится, но все же большинство программистов его любят. На Си вы можете создавать программы, исполняющие все, что вы пожелаете. Нет иного такого языка, который бы так же стимулировал к программированию. Дает впечатление, того что остальные языки программирования воздвигают искусственные препятствия для творчества, а Си – нет. Использование этого языка дает возможность уменьшить затраты времени на создание работающих программ. Си дает возможность программировать быстро, эффективно и предсказуемо. Еще одно преимущество Си заключается в том, что он дает использовать все возможности вашей ЭВМ. Этот язык создан программистом для использования другими программистами, чего о других языках программирования сказать нельзя.

Особенности языка Си

Язык Си имеет свои некоторые особенности, которые давайте перечислим из них:

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

Си поддерживает указатели на переменные и функции. Указатель на объект программы подобен машинному адресу этого объекта. Посредством разумного применения указателей можно создавать эффективно-выполняемые программы, так как указатели дают возможность ссылаться на объекты тем же самым путем, как это делает машина. Си поддерживает арифметику указателей, и тем самым позволяет предоставить доступ и манипуляции с адресами памяти.

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