Главная » Все файлы » Просмотр файлов из архивов » Документы » С.Бобровский, О Фортране и других языках программирования

С.Бобровский, О Фортране и других языках программирования, страница 6

2017-06-17СтудИзба

Описание файла

Документ из архива "С.Бобровский, О Фортране и других языках программирования", который расположен в категории "". Всё это находится в предмете "информатика" из 2 семестр, которые можно найти в файловом архиве МАИ. Не смотря на прямую связь этого архива с МАИ, его также можно найти и в других разделах. Архив можно найти в разделе "книги и методические указания", в предмете "информатика" в общих файлах.

Онлайн просмотр документа "С.Бобровский, О Фортране и других языках программирования"

Текст 6 страницы из документа "С.Бобровский, О Фортране и других языках программирования"

По мощности Perl значительно превосходит С. Кроме того, в язык в качестве стандартных введено много часто используемых функций работы со строками, массивами, всевозможные средства преобразова­ния данных, управления процессами, работы с системной информацией и других. Виртуальная PerZ-машина позволяет работать с произволь­ными по величине данными, а интерпретатор языка оптимизирован для быстрого сканирования текста. В него также встроена поддержка более безопасного выполнения программ в сравнении с С. Например, выход указателя за границы массива не приведет к порче памяти. Глу­бина рекурсии, без которой обрабатывать тексты и списки неудобно, не ограничена.

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

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

Скорее, этот язык подходит для создания всевозможных ути­лит и особенно Web-сценариев. Популярность этого языка резко пошла вверх, когда сеть Интернет стала все больше восприниматься как Все­мирная Паутина. Текстовый язык HTML идеально подходил для ана­лиза и генерации Wife-страниц с помощью сценариев Perl. Эти особен­ности языка в сочетании с поддержкой передачи данных в Сети через кокеты и возможностью обращения к функциям операционной системы сделали этот язык одним из самых популярных языков программиро­вания для Интернета. Сегодня на языке Perl написаны тысячи сцена­риев, которые активно используются во всем мире. В частности, все­возможные счетчики, формы запросов с произвольной структурой управляющих элементов или утилиты поиска на Web-узле страниц с заданными ключевыми словами занимают всего несколько сотен (до 500) строк кода. Поэтому многие провайдеры поддерживают Perl, правда, обычно требуя, чтобы пользователи предварительно отдавали свои сценарии ЖеЬ-мастеру на тестирование.

Имеются реализации Perl в виде языка сценариев, которые вставля­ются в исходном виде в код HTML наподобие сценариев JavaScript. Здесь надо отметить принципиальное отличие обычной Peri-программы, которая хоть и распространяется только в исходных текстах, но выпол­няется целиком на сервере, от сценария PerlScript, интерпретацию которого берет на себя клиентская машина.

Интересно, что многие PerZ-программисты считают язык Java, более раскрученный для программирования в Сети, бесперспективным. На изучение более мощного языка Perl требуется значительно меньше времени, чем на изучение Java. Если же необходимо написать большую программу для Сети, можно использовать более знакомый Си++. Конеч­но, язык Java имеет и ряд преимуществ, но он вовсе не конкурирует с языком Perl, занимая совершенно другую нишу. Программы на языке Java представляют собой интерпретируемый двоичный код. На этом языке можно написать, например, сетевую игрушку, но все государст­венные организации, особенно имеющие отношение к национальной безопасности, никогда не запустят на своей сети непроверенный дво­ичный Java-код, так как бреши есть в любой программной системе. А программы на Perl распространяются в исходных текстах — таково требование создателя языка — и профессиональным программистам не представляет труда протестировать их.

Победил Perl и другого конкурента. Для сложной обработки текстов долгое время использовался язык СНОБОЛ, созданный в начале 1960-х годов. Он обладает очень мощными средствами сопоставления с образцом, ориентированными на анализ текстовой информации. Но с появлением персональных компьютеров СНОБОЛ полностью отошел на второй план, так как был ориентирован на пакетную обработку дан­ных. В нем совершенно отсутствуют средства поддержки пользователь­ского интерфейса, а, кроме того, по синтаксису текст программы на СНОБОЛе напоминает текст на Фортране из-за обилия меток, которые определяют результат сопоставления (переход по успеху/неуспеху). Программа выглядит слишком запутанной по сравнению с элегантным кодом Perl.

Распространялся и распространяется язык Perl только бесплатно — таково условие его создателя. Этот язык уже давно перерос рамки про­екта GNU (свободно распространяемое программное обеспечение для Unix/Linux), в рамках которого был создан первоначально. Поддержку пользователей, разработку новых версий интерпретаторов и компиля­торов для своего любимого языка PerZ-программисты осуществляют бесплатно. В конце 90-х годов вышла пятая версия Perl. Реализация языка была полностью пересмотрена автором. Изменился синтаксис Perl — добавились конструкции, упрощающие чтение исходного кода. Значительно информативнее стали предупреждения и сообщения об ошибках. Грамматика, описывающая Perl 5.x, сократилась в два раза. Почти на две трети уменьшилось количество ключевых слов. При этом сохраняется полная совместимость синтаксиса со старыми версиями языка. Кроме того, стало возможным создавать двоичные PerZ-модули с помощью компилятора, хотя такая особенность востребована в основ­ном в задачах, где на первый план выходит производительность работы системы.

В пятой версии Perl сделана попытка сориентировать язык на созда­ние достаточно крупных программ. Введено понятие пакета для поддер­жки модульной структуры. Пакеты могут трактоваться как классы с виртуальными методами — в языке реализованы основные понятия объектно-ориентированного программирования. Расширен список баз данных, к которым в языке Perl организован встроенный доступ. С по­мощью документированного PerZ-интерфейса можно части кода на этом языке встраивать в программы на C/C++ и, наоборот, подключать биб­лиотеки Си к PerZ-программам.

На момент написания книги (начало 2003 года) вышла версия языка Perl 5.8.O. Она характеризуется улучшенной поддержкой текста в фор­мате Unicode, оптимизированными режимами ввода/вывода, возмож­ностью эффективного выполнения нескольких процессов, повышенной точностью вычислений с плавающей запятой. РегГ-система без проблем работает под управлением Unix/Linux, Windows, VMS, OS/2,AmigaOS, на ряде 64-разрядных платформ.

Грядет и шестая версия Perl. Ларри Уолл решил, что она будет создана уже не им одним, а всем сообществом Регl-программистов. В результате должна появиться универсальная система, по идеологии напоминаю­щая систему Java. Сценарий на Perl 6 будет преобразован компилято­ром в переносимый байт-код. Самое главное, чтоРегl-технология позво­лит готовить программу на любых языках программирования. Такое решение, получившее название Parrot, доступно в виде альфа-версии 0.0.9 на сайте www.parrotcode.org. Пока оно объединяет три компилятора.

Получить подробную информацию о текущей, пятой версии Perl можно по адресу www.perl.org.

Так-тикль — язык системной интеграции

В университете Беркли (штат Калифорния) в конце 80-х годов работал уже упоминавшийся Джон Аустираут, в то время известный не более своих коллег. Сегодня же его знает большинство программистов всего мира, так как именно он придумал популярный скрипт-язык Tel и биб­лиотеку Tk. Впервые идея языка Tel (Tool Command Language, произ­носится «тикль») пришла в голову Аустирауту в 1987 году. В Tel он попытался воплотить свое видение идеального скрипт-языка, и в даль­нейшем всемирная популярность Tel подтвердила правильность его взглядов. Первая работающая версия языка появилась в 1989 году, библиотека Tk вышла в 1991 году. Реализация Tel чаще всего испол­няется в виде встраиваемой в приложения библиотеки на С, содержа­щей интерпретатор Tel.

Язык Tel синтаксически немного похож на Perl. Он ориентирован пре­имущественно на автоматизацию рутинных процессов операционной системы и крупных программных систем. Он содержит мощные ко­манды, предназначенные для работы с абстрактными нетипизирован­ными объектами. Принципиальные отличия языка Tel от командных языков операционной системы — его независимость от типа системы (не надо утруждать себя изучением нового командного языка) и, самое главное, возможность создавать программы с переносимым графиче­ским интерфейсом (GUI). Можно, например, написать утилиту просмо­тра всех каталогов и подкаталогов с уничтожением временных файлов, приделать к ней симпатичную оболочку с кнопочками, меню, картин­ками, диалогом ввода расширения уничтожаемых файлов, и эта ути­лита будет работать практически в любой операционной системе!

Язык Tel — расширяемый. В нем можно самостоятельно определять новые команды языка. Приведем классический пример определения команды Tel:

button.b-text Hello!-font {Times 16}~command {puts hello}

Команда button предназначена для создания кнопки (. b) с надписью Hello! (можно указать картинку), которая пишется шрифтом Times размером 16 пунктов. При нажатии на кнопку в стандартное устройство вывода посылается строка hello (puts hello). Набором таких команд можно очень компактно и наглядно описать графический интерфейс пользователя с полным функциональным наполнением. Эти команды можно вызы­вать из других языков или на их основе писать программное обеспече­ние полностью на Tel. В последнем случае приложение рассматривается как Pure Tell 00%.

Система Tcl/Tk разрабатывалась одновременно как язык и библиотека. Эта идея была позже реализована в Java, языке фирмы Sun, в которой Аустираут трудился с середины 90-х годов. В 1998 году он основал соб­ственную компанию Scriptics, переименованную впоследствии в Ajuba Solutions. Наконец, логическим завершением очередной фазы разви­тия языка стало создание группы, объединившей 14 ведущих разра­ботчиков Tcl/Tk (www.tcltk.com), & Ajuba Solutions была приобретена в 2000 году компанией ActiveState (tcl.activestate.com).

Библиотека Tk содержит стандартизованный набор команд поддержки графической оболочки в стиле Motif. Управляющие элементы, храня­щиеся в библиотеке Tk, называются виджетами (widgets). Большое количество нетиповых виджетов можно найти в Сети. На основе биб­лиотеки Tk создаются переносимые приложения, например, на С, с графическим интерфейсом.

На языке Tel написано много мобильных приложений с графическим интерфейсом, которые используются в самых разных областях: для управления операционной системой, администрирования сетей, обслужи­вания Web-серверов и других целей. В библиотеке Tk имеются команды для работы с сокетами, с помощью которых можно создавать прило­жения для Сети. Для браузеров разработаны подключаемые модули, позволяющие вставлять Tci-скрипты («тиклеты») в страницы HTML (см. www.neuron.com). Известно использование Tcl/Tk в масштабных рос­сийских проектах, в частности, в кодогенераторах фирмы DataX/ Florin для поддержки платформно-независимого пользовательского интерфейса.

Язык Tcl/Tk распространяется в исходных текстах бесплатно (см. напри­мер purl.org/tcl/home). Он может легко интегрироваться с C++, Ада, Про­лог, Модула-3, Perl и многими другими языками. Язык Tel реализован для MS-DOS, Windows (на сайте www.scriptics.com), Macintosh, AIX 3.x, VMS, для практически всех Unix-платформ (SunOS, SCO Unix, HP-UX, ESDI, Linux, QNX), а также для суперкомпьютеров Cray и NEC. На Pure Tel 100% написана оболочка Visual Tel, которая позволяет разра­батывать кросс-платформное программное обеспечение для Unix /Linux, Windows и Macintosh. Имеется расширение языка incrTcl/incrTk, ори­ентированное на создание больших приложений.

С начала 90-х годов проект Tel начала поддерживать фирма Sun. Была создана рабочая группа SunScript (название языка осталось прежним). В середине 90-х годов в этой группе поработал и Джон Аустираут. Группа SunScript создает коммерческие версии библиотеки Tk, в частности, для Windows и Macintosh. Некоторое время назад эта группа присту­пила к интеграции Tel и Java. Разработана версия Tel, написанная на Java Jacl (JAva Command Language). Расширение языка Tel Blend позволяет работать с виртуальной машиной Java и интегрировать сце­нарии Tel с Java-кодом.

В конце августа 1997 года вышла новая, восьмая версия Tcl/Tk (сегодняшняя модификация — 8.3.2). Интерпретация заменена ком­пиляцией в байт-код «налету» (по аналогии с Java). Полностью переде­лана обработка строк. Работа с двоичными объектами и большими тек­стовыми массивами по сравнению с версией 7.x ускорилась в 2—20 раз. Добавлены новые команды быстрой сортировки, ввода/вывода двоич­ных данных с поддержкой различных типов периферийных устройств, поддерживается протокол HTTP, реализованы новые средства обеспе­чения безопасности. Увеличена точность при работе с числами с плава­ющей запятой до 12 цифр вместо 6. Подробно документирован интер­фейс взаимодействия с С. Полностью переписана библиотека Tk. Работа

с объектами управления стала более удобной, усовершенствована ра­бота с меню и шрифтами, добавлены новые команды работы с графи­ческими файлами и др. Наконец, приложения на Tcl/Tk могут сопро­вождаться логотипом Tel Powered (по лицензии Sun). Появилась, правда, небольшая несовместимость с программами, написанными на старых версиях Tel. Теперь даты, выраженные двумя цифрами года, трактуются как даты следующего столетия. Например, 17 г. означает не 1917 год, а 2017 год. В версии Tel 8.1 была реализована поддержка Unicode.

Учитывая, что язык Tcl/Tk одно время активно поддерживался компа­нией Sun, можно предсказать ему хорошее будущее. А история создания Tcl/Tk является классическим примером на тему «как стать знаме­нитым» . Хотите им стать? Разработайте свой скрипт-язык для исполь­зования в какой-нибудь быстро развивающейся области информаци­онных технологий, положите исходные тексты интерпретатора на свою страничку, напишите в конференцию по программированию, и ждите, когда вас пригласят в Sun или Microsoft.

VRML: трехмерный язык Интернета

Свежие статьи
Популярно сейчас
А знаете ли Вы, что из года в год задания практически не меняются? Математика, преподаваемая в учебных заведениях, никак не менялась минимум 30 лет. Найдите нужный учебный материал на СтудИзбе!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Да! На равне с готовыми студенческими работами у нас продаются услуги. Цены на услуги видны сразу, то есть Вам нужно только указать параметры и сразу можно оплачивать.
Отзывы студентов
Ставлю 10/10
Все нравится, очень удобный сайт, помогает в учебе. Кроме этого, можно заработать самому, выставляя готовые учебные материалы на продажу здесь. Рейтинги и отзывы на преподавателей очень помогают сориентироваться в начале нового семестра. Спасибо за такую функцию. Ставлю максимальную оценку.
Лучшая платформа для успешной сдачи сессии
Познакомился со СтудИзбой благодаря своему другу, очень нравится интерфейс, количество доступных файлов, цена, в общем, все прекрасно. Даже сам продаю какие-то свои работы.
Студизба ван лав ❤
Очень офигенный сайт для студентов. Много полезных учебных материалов. Пользуюсь студизбой с октября 2021 года. Серьёзных нареканий нет. Хотелось бы, что бы ввели подписочную модель и сделали материалы дешевле 300 рублей в рамках подписки бесплатными.
Отличный сайт
Лично меня всё устраивает - и покупка, и продажа; и цены, и возможность предпросмотра куска файла, и обилие бесплатных файлов (в подборках по авторам, читай, ВУЗам и факультетам). Есть определённые баги, но всё решаемо, да и администраторы реагируют в течение суток.
Маленький отзыв о большом помощнике!
Студизба спасает в те моменты, когда сроки горят, а работ накопилось достаточно. Довольно удобный сайт с простой навигацией и огромным количеством материалов.
Студ. Изба как крупнейший сборник работ для студентов
Тут дофига бывает всего полезного. Печально, что бывают предметы по которым даже одного бесплатного решения нет, но это скорее вопрос к студентам. В остальном всё здорово.
Спасательный островок
Если уже не успеваешь разобраться или застрял на каком-то задание поможет тебе быстро и недорого решить твою проблему.
Всё и так отлично
Всё очень удобно. Особенно круто, что есть система бонусов и можно выводить остатки денег. Очень много качественных бесплатных файлов.
Отзыв о системе "Студизба"
Отличная платформа для распространения работ, востребованных студентами. Хорошо налаженная и качественная работа сайта, огромная база заданий и аудитория.
Отличный помощник
Отличный сайт с кучей полезных файлов, позволяющий найти много методичек / учебников / отзывов о вузах и преподователях.
Отлично помогает студентам в любой момент для решения трудных и незамедлительных задач
Хотелось бы больше конкретной информации о преподавателях. А так в принципе хороший сайт, всегда им пользуюсь и ни разу не было желания прекратить. Хороший сайт для помощи студентам, удобный и приятный интерфейс. Из недостатков можно выделить только отсутствия небольшого количества файлов.
Спасибо за шикарный сайт
Великолепный сайт на котором студент за не большие деньги может найти помощь с дз, проектами курсовыми, лабораторными, а также узнать отзывы на преподавателей и бесплатно скачать пособия.
Популярные преподаватели
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
5224
Авторов
на СтудИзбе
428
Средний доход
с одного платного файла
Обучение Подробнее