рефераты конспекты курсовые дипломные лекции шпоры

Реферат Курсовая Конспект

В развитии языков программирования

В развитии языков программирования - раздел Информатика, Основы современной информатики   Под Языками Программирования Понимается Система Формал...

 

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

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

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

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

необходимость повышения эффективности труда программистов, уменьшение уровня абстрагирования – приближение методов программирования к приложениям;

развитие приложений – внедрение компьютеров в самые различные сферы человеческой деятельности;

значительное увеличение ресурсов компьютеров и их производительности;

нарастающее увеличение сложности и размерности задач, решаемых на компьютерах.

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

В 1945 г. немецкий математик Конрад Цузе изобрел систему записи, которую назвал «Планкалкюль» (что означает программное исчисление), но язык не был реализован, тем не менее, многие развитые в нем идеи нашли отражение в современных языках. История развития традиционных языков высокого уровня, т.е. языков, ориентированных не на коды компьютеров, а на алгоритм решения задачи, представлена на рис. 4.1.

В 1949 г. Дж. Мочли, одним из создателей первого универсального компьютера ЭНИАК, был разработан Short code – Ассемблер, реализованный на этой машине.

Несомненно, наибольшее влияние на все последующие языки программирования оказал Фортран (FORTRAN – FOR(mula) TRANS(lator)), разработанный Дж. Бэкусом и его коллегами из фирмы IBM в 1954 – 57 гг. и реализованный на компьютере IBM 704. В те годы язык был встречен скептически, однако разработка эффективного транслятора для самых популярных (по тем временам) в мире компьютеров позволило языку завоевать всеобщее признание у программистов, занимающихся научными расчетами. Приблизительно в то же самое время Грейс Мюррей Хоппер – офицер ВМФ США (из фирмы UNIVAC) разработала более простой язык коммерческих задач Флоу-Матик – прообраз Кобола. Очень важное место среди язы­ков занимает Алгол (ALGO(rythmic)L(anguage)), первая версия которого была разработана в Европе международным комитетом на основе идей, заложенных в Фортране и Планкалкюле. Алгол хотя и не приобрел такой популярности, как Фортран, но оказал очень большое влияние на дальнейшее развитие языков. В начале 60-х годов появился Лисп и была разработана нотация APL.

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

Частичный успех языка РL/1, разработанного фирмой IBM, показал, что всеобъемлющий язык должен быть труден в изучении и

Рис. 4.1. История развития языков программирования

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

Стремление подняться на новый более высокий уровень программирования и приблизиться к приложениям связано с так называемыми непроцедурными или описательными языками, которые можно назвать языками сверхвысокого уровня, и они приобретают все большее значение. Описательная программа констатирует, какой результат желателен, не указывая, как этого достичь. В программе скорее формулируются отношения, а не последовательность вычислений. Таким образом, программист освобождается от обязанности разрабатывать шаги алгоритма и определять их порядок. Одним из разновидностей таких языков является Пролог PRO(gramming) in LOG(ic), представляющий собой усовершенствование языка Лисп (LISP – L(ist) I(nformation) S(ymbol) P(rocessing)), а также Визикальк и Мультиплан, получившие распространение на персональных компьютерах.

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

Другая тенденция в развитии языков программирования – рост интереса к системам записи, называе­мым объектно-ориентирован­ными языками, например Симула 67 (SIMULA – SIMU(lation) LA(nguage)). Кроме этого, появление многопроцессорных систем привело к необходимости разработки языков параллельных вычислений. Примером таких языков могут служить Оккам, Компед (Computer Parallel) и др. Развитие языков тесно связано с развитием технических средств, с появлением новых информационных технологий, совершенствованием программных интерфейсов. Это относится к средствам программирования графических программных оболочек, программирования сетевых приложений, совершенствованию лингвистических возможностей операционных систем и т.п.

В настоящее время насчитывается несколько тысяч языков и, тем не менее, продолжается разработка новых. Это, по-видимому, связано с тем, что нет хорошего способа для определения качества языка. При всем многообразии языков широко используются лишь некоторые. От возникновения языка до его «успешной стандартизации» (стандартизация языков программирования проводится организацией ASNI – American Standard National Institute) проходит примерно 10 лет, поэтому программисты предпочитают старые языки, несмотря на постоянную критику со стороны энтузиастов-разработчиков новых языков. Это связано с тем большим заделом программного обеспечения, который существует у традиционных языков, а также новыми их версиями, в которых продолжается дальнейшее совершенствование с учетом критических замечаний (не всегда объективных). Поэтому характерной тенденцией последнего времени в развитии традиционных языков высокого уровня является не столько создание новых языков, сколько включение новых функциональных возможностей в традиционные языки – использование элементов машинной графики, объектная ориентация, создание графических программных интерфейсов средства распараллеливания и т.п. Проблемы параллельного программирования, использования виртуальной памяти в значительной степени решаются не только на уровне прикладного программирования, но также средствами системных программ (операционных систем, трансляторов и т.п.).

Среди очень большого количества языков, разработанных к настоящему времени, очень важное значение имеют языки, которые хотя и не получили широкой применительной практики, но оказали сильное влияние на все дальнейшее развитие лингвистического обеспечения информатики. К таким языкам можно отнести: ALGOL (международный комитет), Симула 67 (Кристен Нигаард, Оле Йохан Дал), Small Talk (Ален Кэй), Modula, Pascal (Object Pascal), Oberton (Никлаус Вирт).

В целом, сравнение языков очень сложная задача, поскольку существует 2570 различных возможностей или свойств для сравнения, к которым добавляются 12 характеристик трансляторов. Следовательно, не существует самого лучшего языка программирования, так же как не существует самого лучшего естественного языка. Выбор языка определяется целями применения и индивидуальностью программиста. Как сказал король Карл V [17]: «Я разговариваю по-испански с богом, по-итальянски с женщинами, по-французски с мужчинами и по-немецки со своей лошадью».

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

 

– Конец работы –

Эта тема принадлежит разделу:

Основы современной информатики

Московский инженерно физический институт... государственный университет...

Если Вам нужно дополнительный материал на эту тему, или Вы не нашли то, что искали, рекомендуем воспользоваться поиском по нашей базе работ: В развитии языков программирования

Что будем делать с полученным материалом:

Если этот материал оказался полезным ля Вас, Вы можете сохранить его на свою страничку в социальных сетях:

Все темы данного раздела:

МЕДИЦИНСКИЕ ТЕЛЕКОММУНИКАЦИОННЫЕ СИСТЕМЫ
    Часть 1. Основы современной информатики     Москва 2008 УДК 004(075) ББК 32.97я7 А19 &n

ОСНОВНЫЕ СОКРАЩЕНИЯ
  АКД – аппаратура канала данных АЛУ – арифметико-логическое устройство АСНИ – автоматизированные системы научных исследований АСУ – автоматизированная сист

Структура современных систем обработки данных
  За сравнительно небольшой период развития электронных вычислительных систем появилось довольно много технических средств обработки данных (СОД). На рис. 1.1 представлена пр

И краткая характеристика его составных частей
  Более чем за 50 лет развития современной вычислительной техники прогресс в аппаратной реализации компьютеров и их технических характеристиках превзошел все мыслимые прогнозы, и пока

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

Суперкомпьютеров, мейнфреймов и мини-компьютеров
  Хотя современные персональные компьютеры (ПК) обладают впечатляющими возможностями, которые существенно расширились в связи с появлением 64-разрядных микропроцессоров, не следует по

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

Функциональные возможности, номенклатура
  Персональный компьютер (ПК) – небольшой компьютер, основой которого служит МП, т.е. микрокомпьютер. Однако не все микрокомпьютеры являются персональными компьютерами. Микроко

Периферийных устройств
  Архитектура ПК определятся системой шин, с помощью которых ЦП связан с ОП и периферийными устройствами. Современная архитектура ПК является результатом довольно длительного

Рабочие станции, серверы и суперсерверы
  Создание RISC-процессоров и микросхем памяти с большой емкостью привело к окончательному оформлению настольных систем высокой производительности, которые сегодня известны как рабочи

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

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

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

Современное состояние и ближайшие перспективы
  Глобальные или всемирные сети (GAN – Global Area Network) предназначены для связи абонентов, расположенных в различных географических регионах, и включают в себя множество сетей раз

Технические средства, используемые ЛВС
  Локальные вычислительные сети (ЛВС) начали использоваться с середины 70-х годов в результате падения цен на электронные компоненты, расширения возможностей терминальных устройств, п

Современных языков программирования
  Все языки программирования можно сгруппировать по некоторым признакам в ряд подгрупп (с определенной степенью условности). На рис. 4.2 представлен один из вариантов такого разбиения

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

Обеспечения и краткая характеристика отдельных частей
  До 70-х годов изготовители ЭВМ, как правило, продавали лишь изделие одного вида – аппаратуру (Hard ware). Операционные системы (ОС), вспомогательные служебные программы, пакеты прик

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

Сетевые операционные системы
  Большое разнообразие и различие функциональных возможностей ОС больших и малых ЭВМ 70-х – 80-х годов объясняется различием в уровне технических средств этих машин. Значительное увел

Общая структура программного обеспечения
  Все компоненты программного обеспечения, описанные в гл. 5, присутствуют и в структуре ПО ПК. Однако система программного обеспечения этого вида ЭВМ имеет ряд специфических особенно

Краткая характеристика ОС, применяемых в ПК
  До последнего времени для ПК IBM-клона применяются три типа локальных ОС: однопользовательская однозадачная DOS; однопользовательские многозадачные OS/2, Windows 9

Инструментальное программное обеспечение ПК
  На ПК, совместимых с IBM PC, реализованы практически все широко распространенные языки программирования, а многие из них имеют несколько независимых реализаций. Следует отметить ряд

Пакеты прикладных программ
  Разработка ППП является одним из основных направлений развития ПО ПК. Именно благодаря этому виду прикладного программного обеспечения ПК приобрели всеобщую популярность и стали нео

Проблемы информационной безопасности
  Проблема информационной безопасности возникла достаточно давно и имеет глубокие исторические корни. До сравнительно недавнего времени методы защиты информации были в исключительной

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

О некоторых понятиях компьютерной безопасности
  Термины «информационная безопасность» (information security) и «безопасность сети» (network security) в широком смысле относятся к секретности, т.е. гарантии того, что информация и

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

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

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

Бизнес в Интернете
  В конце 1999 г. сразу два автомобильных гиганта Ford и General Motors объявили о своем намерении перевести большую часть своих коммерческих операций во Всемирную паутину и объединит

Правовое обеспечение информационной безопасности
  К правовым мерам обеспечения информационной безопасности относится: разработка норм, устанавливающих ответственность за компьютерные преступления; защита авторских прав программисто

Беспроводные среды
  По мере того как электронные информационные системы затрагивают все большие аспекты деятельности человека, необходимость привязываться к этим системам проводами в ряде случаев значи

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

Спутниковая система связи
23 апреля 1965 г. был запущен на высокую эллиптическую орбиту спутник связи «Молния 1», который ознаменовал становление в нашей стране спутниковой радиосвязи. Почти одновременно в США был запущен н

Системы подвижной радиосвязи
  В настоящее время доминирующее положение на рынке подвижной радиосвязи занимают: профессиональные (частные) системы подвижной радиосвязи (PMR – Professional Mobil Radio, PA

Беспроводное подключение узлов в локальных сетях.
Беспроводная (wireless) связь в локальных сетях осуществляется в инфракрасном и радиочастотном диапазоне электромагнитных волн. Для организации беспроводного подключения узлов к сети требуется два

СПИСОК ТЕРМИНОВ И ОПРЕДЕЛЕНИЙ
  Алгоритм шифрования – различные способы преобразования текста. Аналоговые данные – физическая величина, которая может изменяться в непрерывном диапазоне значе

ТЕЛЕКОММУНИКАЦИОННЫЕ СИСТЕМЫ
  Учебное пособие   Редактор     Подписано в печать 15.10.2007. Формат 60х84 1/16 Уч.-изд.л. 20,0. Печ.л. 20,0. Ти

Хотите получать на электронную почту самые свежие новости?
Education Insider Sample
Подпишитесь на Нашу рассылку
Наша политика приватности обеспечивает 100% безопасность и анонимность Ваших E-Mail
Реклама
Соответствующий теме материал
  • Похожее
  • Популярное
  • Облако тегов
  • Здесь
  • Временно
  • Пусто
Теги