Диссертация на степень магистра наук по направлению «Математика, компьютерные науки»





Скачать 354.13 Kb.
НазваниеДиссертация на степень магистра наук по направлению «Математика, компьютерные науки»
страница3/7
Дата публикации12.12.2014
Размер354.13 Kb.
ТипДиссертация
100-bal.ru > Информатика > Диссертация
1   2   3   4   5   6   7

.2. Языки системного программирования


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

Известно, что ключевыми языками системного программирования является пара: Си и Си++.

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

Си++ создавался как расширение Си. Была добавлена поддержка объектно-ориентированного программирования, шаблоны. Возможности осмысленно выбирались «неортогональные». Такая разнородность, почти полная обратная совместимость с предшественником и, кончено, высокая эффективность компилятора сделали новый язык очень популярным.

Остановимся на проблемах. Оба языка основываются на разработках 60-70-х годов и не учитывают наработок, связанных с виртуальными машинами. Отсутствие сопрограмм в Си, уникальность функций по имени в условиях современности осложняют программирование. Более мощный Си++ лучше адаптируется, но перегруженный разными техниками язык труднее освоить, а его компилятор – реализовать. Альтернативой является Objective-C, созданный примерно в то же время и реализующий объекты не процедурами, а пересылкой сообщений. Подход проще и однороднее, но, несмотря на все возможные оптимизации, такая абстракция медленнее Си++ в полтора раза по времени исполнения. В Приложении 1 приведены результаты тестов. Проблемы давно известны, но предложить что-то принципиально новое и, в то же время, не потерять сильные стороны сложно.

Диалекты C/C++


Обособленных от стандарта диалектов довольно много, но их легко разбить на группы, выделив примеры:

  • динамическая генерация кода Tick-C [7];

  • система типов с безопасными указателями Cyclone [8];

  • параллельное программирование OpenMP.

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

Особняком стоит разработка Clang [9], исправляющая недостатки прежних компиляторов, и новая версия стандарта C++0x [10]. Оба проекта развиваются с целью продлить срок широкого использования C/C++ еще как минимум на десять лет, но, как и диалекты, они не смогут в полной мере избавиться от концептуальных ограничений. Си будет только наращивать свои выразительные возможности, усложнять компилятор, при этом уровень абстракций языка будет оставаться примерно тем же.

Новые языки


Создатели языка D [11] в своём проекте сделали выводы из практики C++, часть механизмов переработали, что-то добавили из Java и Python. Но несмотря на большой объем проделанной работы с точки зрения системного программирования ничего не поменялось, просто всё что делается в C++ на уровне библиотек, здесь является механизмом языка.

По-другому спроектирован экспериментальный Go [12], на основе Си-подобного языка выстроена более мощная система типов с обобщенными интерфейсами, добавлена встроенная поддержка многопоточности и всё это с упором на очень быструю компиляцию. Язык получился современным и легким, но уже сейчас видно, что структура получается жёсткая, а, значит, дальнейшее развитие будет напоминать расширение Си.

Рассмотренные языки, так или иначе, исходили из сложившейся практики императивного системного программирования. Не так давно сочетание декларативной и императивной парадигм было эффективно реализовано в ATS [13, 5]. Мощнейшая система типов, позволяющая проводить огромное количество статических проверок, сборка мусора, сопоставление с образцом, шаблоны, исключения и отлаженный FFI3 с Си делают язык действительно перспективным. Но из-за отсутствия полной документации и нестандартной модели исполнения на основе автоматического доказательства теорем продвижение идёт медленно. На данный момент неакадемических примеров использования пока нет. Нестандартные модели вообще трудно усваиваются программистским сообществом, тому же Haskell’у потребовалось около 15 лет для этого.

1   2   3   4   5   6   7

Похожие:

Диссертация на степень магистра наук по направлению «Математика, компьютерные науки» iconРеферат: Коваленко А. Е. Разработка системы научной визуализации....
Коваленко А. Е. Разработка системы научной визуализации. Квалификационная работа на степень магистра наук по направлению «Математика....
Диссертация на степень магистра наук по направлению «Математика, компьютерные науки» iconРеферат: Шайдуров А. Г. Исследование и разработка некоторых графических...
Шайдуров А. Г. Исследование и разработка некоторых графических алгоритмов. Квалификационная работа на степень магистра наук по направлению...
Диссертация на степень магистра наук по направлению «Математика, компьютерные науки» iconРеферат Флягина Т. А. Проблемы разработки многооконных интерфейсов,...
Флягина Т. А. Проблемы разработки многооконных интерфейсов, квалификационная работа на степень бакалавра наук
Диссертация на степень магистра наук по направлению «Математика, компьютерные науки» iconРабочая программа составлена в соответствии с требованиями фгос впо...
Математика и компьютерные науки по профилю подготовки: «Вычислительные, программные, информационные системы и компьютерные технологии»...
Диссертация на степень магистра наук по направлению «Математика, компьютерные науки» iconРабочая программа для студентов очной формы обучения, направление...
Иванов Д. И. Криптография и криптоанализ. Учебно-методический комплекс. Рабочая программа для студентов очной формы обучения, направления...
Диссертация на степень магистра наук по направлению «Математика, компьютерные науки» iconРабочая программа для студентов очной формы обучения, направление...
Иванов Д. И. Дополнительные главы дискретной математики. Учебно-методический комплекс. Рабочая программа для студентов очной формы...
Диссертация на степень магистра наук по направлению «Математика, компьютерные науки» iconЛитература Погрешности вычислений
Программа предназначена для подготовки к вступительным испытаниям в аспирантуру по направлению 02. 06. 01 «Компьютерные и информационные...
Диссертация на степень магистра наук по направлению «Математика, компьютерные науки» iconУчебно-методический комплекс Программа для студентов направления...
Рассмотрено на заседании умк института математики и компьютерных наук, протокол №2013 г
Диссертация на степень магистра наук по направлению «Математика, компьютерные науки» iconРабочая программа дисциплины (модуля) опубликована на сайте ТюмГУ
«Математика и компьютерные науки» по профилю подготовки «Вычислительные, программные, информационные системы и компьютерные технологии...
Диссертация на степень магистра наук по направлению «Математика, компьютерные науки» iconГ. Л. Воронин Н. В ларшина социология учебно-методическое пособие
Программа предназначена для бакалавров очной формы обучения механико-математического факультета математика 010100, математика и компьютерные...
Диссертация на степень магистра наук по направлению «Математика, компьютерные науки» iconУчебно-методический комплекс учебной дисциплины «Философские образы...
Аспирантура – самостоятельный уровень высшего образования, нацеленный на подготовку специалистов высшей квалификации. К поступлению...
Диссертация на степень магистра наук по направлению «Математика, компьютерные науки» iconРабочая программа для студентов направления 010200. 62 Математика...
Девятков А. П. Банаховы алгебры и гармонический анализ. Учебно-методический комплекс. Рабочая программа для студентов направления...
Диссертация на степень магистра наук по направлению «Математика, компьютерные науки» iconУчебно-методический комплекс для студентов не психологических специальностей...
Гидрология 010100. 62 Математика 010101. 65 Математика 010101. 65 Математика 010101. 65 Математика 010300. 62 Математика. Компьютерные...
Диссертация на степень магистра наук по направлению «Математика, компьютерные науки» iconРабочая программа и методические указания для студентов очной формы...
Рабочая программа и методические указания для студентов очной формы обучения направлений 010300. 62 «Математика. Компьютерные науки»...
Диссертация на степень магистра наук по направлению «Математика, компьютерные науки» iconДиссертация На соискание степени Магистра по направлению 030100 Философия...
Едеральное государственное бюджетное образовательное учреждение высшего профессионального образования
Диссертация на степень магистра наук по направлению «Математика, компьютерные науки» iconРабочая программа составлена в соответствии с требованиями фгос впо...
Дёгтев А. Н. Теория алгоритмов. Учебно-методический комплекс. Рабочая программа для студентов направления 010200. 62 – математика...


Школьные материалы


При копировании материала укажите ссылку © 2013
контакты
100-bal.ru
Поиск