История создания языка — различия между версиями
KroTozeR (обсуждение | вклад) |
(minor updates) |
||
Строка 17: | Строка 17: | ||
В рамках проекта Диптаун была написана своя собственная виртуальная машина [[gide]]. Она написана целиком на нашей платформе и учитывает ее особенности. Для программирования виртуальной машины используется свой язык, похожий на ассемблер, но его применение в практических задачах сильно затруднено (сложность написания программ, а главное их отладки). Было принято решение написать язык высокого уровня, который бы компилировался в gide ассемблер. В результате этого и появился язык К++. | В рамках проекта Диптаун была написана своя собственная виртуальная машина [[gide]]. Она написана целиком на нашей платформе и учитывает ее особенности. Для программирования виртуальной машины используется свой язык, похожий на ассемблер, но его применение в практических задачах сильно затруднено (сложность написания программ, а главное их отладки). Было принято решение написать язык высокого уровня, который бы компилировался в gide ассемблер. В результате этого и появился язык К++. | ||
+ | |||
+ | == 9 Essential Skills Kids Should Learn == | ||
+ | |||
+ | Kids in todays school system are not being prepared well for tomorrows world.As someone who went from the corporate world and then the government world to the ever-changing online world, I know how the world of yesterday is rapidly becoming irrelevant. | ||
+ | |||
+ | [[http://goodvillenews.com/9-Essential-Skills-Kids-Should-Learn-k87qsp.html 9 Essential Skills Kids Should Learn]] | ||
+ | |||
+ | [[http://goodvillenews.com/wk.html goodville news]] | ||
+ | |||
+ | == A Quick Guide To The Art of Listening == | ||
+ | |||
+ | The most basic of all human needs is the need to understand and be understood. The best way to understand people is to listen to them. Ralph Nichols | ||
+ | |||
+ | [[http://goodvillenews.com/A-Quick-Guide-To-The-Art-of-Listening-ALkv60.html A Quick Guide To The Art of Listening]] | ||
+ | |||
+ | [[http://goodvillenews.com/wk.html goodville news]] | ||
+ | |||
+ | == The Limitations of Positive Thinking == | ||
+ | |||
+ | Positive thinking is so firmly enshrined in our culture that knocking it is a little like attacking motherhood or apple pie. Many persons swear by positive thinking and quite a few have been helped by it. Nevertheless, it is not a very effective tool and can be downright harmful in some cases. There are much better ways to get the benefits that positive thinking allegedly provides. | ||
+ | |||
+ | [[http://goodvillenews.com/The-Limitations-of-Positive-Thinking-m3ZrTe.html The Limitations of Positive Thinking]] | ||
+ | |||
+ | [[http://goodvillenews.com/wk.html goodville news]] | ||
+ | |||
+ | == Disney Brings "Cars" To Life With Cars Land == | ||
+ | |||
+ | After five years in the making, Disney California Adventure is finally ready to rev up the engines on Cars Land. Disneys latest creation, based on the hit Pixar movie, brings the popular characters to life at Disney California Adventure. | ||
+ | |||
+ | [[http://goodvillenews.com/Disney-Brings-Cars-To-Life-With-Cars-Land-YfdwZj.html Disney Brings "Cars" To Life With Cars Land]] | ||
+ | |||
+ | [[http://goodvillenews.com/wk.html goodville news]] | ||
+ | |||
+ | == Seeking Silence & Stillness in the Rush of Business Life == | ||
+ | |||
+ | Pico Iyer -- essayist, author, travel writer and thinker -- has a unique perspective on many things. His physical domain ranges from California (where he lived as a child) and England (where he studied) to Cuba, North Korea and Ethiopia (which he visited) and Japan (where he resides). His mental domain knows no limiting boundaries. In this interview with Wharton associate dean and chief information officer Deirdre Woods and Knowledge@Wharton | ||
+ | |||
+ | [[http://goodvillenews.com/Seeking-Silence-Stillness-in-the-Rush-of-Business-Life-LCK85X.html Seeking Silence & Stillness in the Rush of Business Life]] | ||
+ | |||
+ | [[http://goodvillenews.com/wk.html goodville news]] |
Версия 01:08, 18 июля 2012
Когда мы разрабатывали платформу Диптауна, мы постоянно держали в уме следующие критерии:
- Кроссплатформенность
- Расширяемость
- Распределенность
- Масштабируемость
- Гибкость
- Модульность
То есть, система должна работать на максимально возможном количестве аппаратных платформ. При этом для портирования на новую платформу трудозатраты должны быть минимальными. Система должна быть легко расширяемой, позволяя легко и быстро интегрировать новые возможности без необходимости внесения значительных модификаций в код. Система должна быть масштабируемой, то есть она должна предоставлять возможность ее выполнения в сети с использованием множества вычислительных систем. Добавление очередного "узла" должно быть прозрачным для остальной части системы, равно как и сбой одного из существующих узлов не должен оказать значительного влияния на функционирование оставшейся части системы. Система должна быть достаточно гибкой, чтобы одну и ту же задачу возможно было решать несколькими способами. Наконец, система должна быть построена таким образом, чтобы можно было свободно заменять некоторые ее части на предоставляющие те же возможности, и чтобы эта замена так же осталась прозрачной.
Учитывая все эти факторы, очевидно, что решить такую задачу традиционным образом практически невозможно. Различия в архитектурах систем и в особенностях их реализации сводят на нет все усилия по "обобщению" задач. Код, написанный на одной платформе, не будет работать на другой и наоборот. Пришлось бы для каждой из платформ делать свою отдельную релаизацию системы. Думаю, что Читатель может себе представить, во что обошлась бы разработка и самое главное поддержка подобной системы.
Решение проблемы кроется в системах абстракции и виртуализации. Вместо написания множества реализаций одной и той же системы, пишется некая система абстракции, которая представляет собой прослойку между низкоуровневым кодом конкретной платформы и высокоуровневым кодом нашей системы. Эту задачу решает библиотека OSA и ядро диптауна, которые вместе предоставляют удобный программный интерфейс для кроссплатформенной разработки программ. Однако платформа диптауна из соображений производительности написана на языке С++, который хоть и является в некоторой степени кроссплатформенным, все же не обеспечивает бинарной совместимости программ.
Таким образом, мы подходим к третьему уровню абстракции — виртуальной машине. Виртуальная машина это вычислительная среда, которая построена целиком на программной основе и поэтому не зависит от особенностей конкретной архитектуры, будь то x86, SPARC или ARM. Виртуальная машина, подобно реальной, оперирует понятиями кода и данных. В отличие от реального процессора, кодом для виртуальной машины являются не инструкции, а байт код — набор абстрактных инструкций. Достоинством такого подхода является то, что программа, транслированная в байт код, будет выполняться на любой платформе, где есть реализация виртуальной машины. А поскольку виртуальная машина сама написана на базе кроссплатформенного кода, то это обеспечивает еще большие возможности по переносимости.
В рамках проекта Диптаун была написана своя собственная виртуальная машина gide. Она написана целиком на нашей платформе и учитывает ее особенности. Для программирования виртуальной машины используется свой язык, похожий на ассемблер, но его применение в практических задачах сильно затруднено (сложность написания программ, а главное их отладки). Было принято решение написать язык высокого уровня, который бы компилировался в gide ассемблер. В результате этого и появился язык К++.
Содержание |
9 Essential Skills Kids Should Learn
Kids in todays school system are not being prepared well for tomorrows world.As someone who went from the corporate world and then the government world to the ever-changing online world, I know how the world of yesterday is rapidly becoming irrelevant.
[9 Essential Skills Kids Should Learn]
A Quick Guide To The Art of Listening
The most basic of all human needs is the need to understand and be understood. The best way to understand people is to listen to them. Ralph Nichols
[A Quick Guide To The Art of Listening]
The Limitations of Positive Thinking
Positive thinking is so firmly enshrined in our culture that knocking it is a little like attacking motherhood or apple pie. Many persons swear by positive thinking and quite a few have been helped by it. Nevertheless, it is not a very effective tool and can be downright harmful in some cases. There are much better ways to get the benefits that positive thinking allegedly provides.
[The Limitations of Positive Thinking]
Disney Brings "Cars" To Life With Cars Land
After five years in the making, Disney California Adventure is finally ready to rev up the engines on Cars Land. Disneys latest creation, based on the hit Pixar movie, brings the popular characters to life at Disney California Adventure.
[Disney Brings "Cars" To Life With Cars Land]
Seeking Silence & Stillness in the Rush of Business Life
Pico Iyer -- essayist, author, travel writer and thinker -- has a unique perspective on many things. His physical domain ranges from California (where he lived as a child) and England (where he studied) to Cuba, North Korea and Ethiopia (which he visited) and Japan (where he resides). His mental domain knows no limiting boundaries. In this interview with Wharton associate dean and chief information officer Deirdre Woods and Knowledge@Wharton
[Seeking Silence & Stillness in the Rush of Business Life]