История создания языка — различия между версиями

Материал из Deeptown Manual
Перейти к: навигация, поиск
(minor updates)
(minor updates)
 
(не показаны 2 промежуточные версии 2 участников)
Строка 18: Строка 18:
 
В рамках проекта Диптаун была написана своя собственная виртуальная машина [[gide]]. Она написана целиком на нашей платформе и учитывает ее особенности. Для программирования виртуальной машины используется свой язык, похожий на ассемблер, но его применение в практических задачах сильно затруднено (сложность написания программ, а главное их отладки). Было принято решение написать язык высокого уровня, который бы компилировался в gide ассемблер. В результате этого и появился язык К++.
 
В рамках проекта Диптаун была написана своя собственная виртуальная машина [[gide]]. Она написана целиком на нашей платформе и учитывает ее особенности. Для программирования виртуальной машины используется свой язык, похожий на ассемблер, но его применение в практических задачах сильно затруднено (сложность написания программ, а главное их отладки). Было принято решение написать язык высокого уровня, который бы компилировался в gide ассемблер. В результате этого и появился язык К++.
  
== 9 Essential Skills Kids Should Learn ==
+
== New Toilet System Transform Waste into Electricity ==
  
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.  
+
Scientists from Nanyang Technological University (NTU) have invented a new toilet system that will turn human waste into electricity and fertilisers and also reduce the amount of water needed for flushing by up to 90 per cent compared to current toilet systems in Singapore.
  
  [[http://goodvillenews.com/9-Essential-Skills-Kids-Should-Learn-k87qsp.html 9 Essential Skills Kids Should Learn]]
+
  [[http://goodvillenews.com/New-Toilet-System-Transform-Waste-into-Electricity-zvQBzk.html New Toilet System Transform Waste into Electricity]]
  
[[http://goodvillenews.com/wk.html goodville news]]
+
[[http://goodvillenews.com/wk.html GoodvilleNews.com - good, positive news, inspirational stories, articles]]
  
== A Quick Guide To The Art of Listening ==
+
== Journey to the End of the Earth ==
  
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
+
I realized quickly, after just having traveled to various villages in rural India, that distance is relative. Hailing from a city like San Francisco, going even a few hours outside of town is far but twelve hours outside of a major city? I half expected to run into another country.
  
  [[http://goodvillenews.com/A-Quick-Guide-To-The-Art-of-Listening-ALkv60.html A Quick Guide To The Art of Listening]]
+
  [[http://goodvillenews.com/Journey-to-the-End-of-the-Earth-tbNql3.html Journey to the End of the Earth]]
  
[[http://goodvillenews.com/wk.html goodville news]]
+
[[http://goodvillenews.com/wk.html GoodvilleNews.com - good, positive news, inspirational stories, articles]]
  
== The Limitations of Positive Thinking ==
+
== Guerilla Gardener Plants Joy in Potholes ==
  
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.
+
Theyre the bane of cyclists and motorists alike, but one urban gardener has grown a fondness for potholes after deciding to spruce up cities around Europe by filling them up with miniature flower arrangements. Australian Steve Wheen, 34, who lives in London, has been using flowers and small-scale objects to transform urban potholes for the last three years. The self-styled guerrilla gardener has created mini gardens all around his home city but has now decided to bring joy to commuters across Europe with his unusual pothole creations.
  
  [[http://goodvillenews.com/The-Limitations-of-Positive-Thinking-m3ZrTe.html The Limitations of Positive Thinking]]
+
  [[http://goodvillenews.com/Guerilla-Gardener-Plants-Joy-in-Potholes-CnUGQR.html Guerilla Gardener Plants Joy in Potholes]]
  
[[http://goodvillenews.com/wk.html goodville news]]
+
[[http://goodvillenews.com/wk.html GoodvilleNews.com - good, positive news, inspirational stories, articles]]
  
== Disney Brings "Cars" To Life With Cars Land ==
+
== 6 Steps Towards Living a Life Free of Fear and Full of Hope ==
  
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.
+
There are two basic motivating forces: fear and love. When we are afraid, we pull back from life. When we are in love, we open to all that life has to offer with passion, excitement, and acceptance. We need to learn to love ourselves first, in all our glory and our imperfections. If we cannot love ourselves, we cannot fully open our ability to love others or our potential to create. Evolution and all hopes for a better world rest in the fearlessness and open-hearted vision of people who embrace life. ~ John Lennon
  
  [[http://goodvillenews.com/Disney-Brings-Cars-To-Life-With-Cars-Land-YfdwZj.html Disney Brings "Cars" To Life With Cars Land]]
+
  [[http://goodvillenews.com/6-Steps-Towards-Living-a-Life-Free-of-Fear-and-Full-of-Hope-dnAp.html 6 Steps Towards Living a Life Free of Fear and Full of Hope]]
  
[[http://goodvillenews.com/wk.html goodville news]]
+
[[http://goodvillenews.com/wk.html GoodvilleNews.com - good, positive news, inspirational stories, articles]]
  
== Seeking Silence & Stillness in the Rush of Business Life ==
+
== 9-yr-old Helps Disabled Brother Finish Triathlons ==
  
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
+
Over the weekend, brothers Cayden and Connor Long joined hundreds of other children as they competed in the first annual New England Kids Triathlon in Cambridge. The boys did not win the event -- they didnt even come close. But that didnt stop them from winning hearts across the Internet. The Long brothers are not your typical triathletes. Six-year-old Cayden has cerebral palsy and can neither walk nor talk. But thanks to the dedication of his older brother, Connor, the young boy has participated in several triathlons. A touching video
  
  [[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/9-yr-old-Helps-Disabled-Brother-Finish-Triathlons-mozmuF.html 9-yr-old Helps Disabled Brother Finish Triathlons]]
  
[[http://goodvillenews.com/wk.html goodville news]]
+
[[http://goodvillenews.com/wk.html GoodvilleNews.com - good, positive news, inspirational stories, articles]]

Текущая версия на 06:13, 26 августа 2012

Когда мы разрабатывали платформу Диптауна, мы постоянно держали в уме следующие критерии:

  • Кроссплатформенность
  • Расширяемость
  • Распределенность
  • Масштабируемость
  • Гибкость
  • Модульность

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

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

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

Таким образом, мы подходим к третьему уровню абстракции — виртуальной машине. Виртуальная машина это вычислительная среда, которая построена целиком на программной основе и поэтому не зависит от особенностей конкретной архитектуры, будь то x86, SPARC или ARM. Виртуальная машина, подобно реальной, оперирует понятиями кода и данных. В отличие от реального процессора, кодом для виртуальной машины являются не инструкции, а байт код — набор абстрактных инструкций. Достоинством такого подхода является то, что программа, транслированная в байт код, будет выполняться на любой платформе, где есть реализация виртуальной машины. А поскольку виртуальная машина сама написана на базе кроссплатформенного кода, то это обеспечивает еще большие возможности по переносимости.

В рамках проекта Диптаун была написана своя собственная виртуальная машина gide. Она написана целиком на нашей платформе и учитывает ее особенности. Для программирования виртуальной машины используется свой язык, похожий на ассемблер, но его применение в практических задачах сильно затруднено (сложность написания программ, а главное их отладки). Было принято решение написать язык высокого уровня, который бы компилировался в gide ассемблер. В результате этого и появился язык К++.

Содержание

[править] New Toilet System Transform Waste into Electricity

Scientists from Nanyang Technological University (NTU) have invented a new toilet system that will turn human waste into electricity and fertilisers and also reduce the amount of water needed for flushing by up to 90 per cent compared to current toilet systems in Singapore.

[New Toilet System Transform Waste into Electricity]

[GoodvilleNews.com - good, positive news, inspirational stories, articles]

[править] Journey to the End of the Earth

I realized quickly, after just having traveled to various villages in rural India, that distance is relative. Hailing from a city like San Francisco, going even a few hours outside of town is far but twelve hours outside of a major city? I half expected to run into another country.

[Journey to the End of the Earth]

[GoodvilleNews.com - good, positive news, inspirational stories, articles]

[править] Guerilla Gardener Plants Joy in Potholes

Theyre the bane of cyclists and motorists alike, but one urban gardener has grown a fondness for potholes after deciding to spruce up cities around Europe by filling them up with miniature flower arrangements. Australian Steve Wheen, 34, who lives in London, has been using flowers and small-scale objects to transform urban potholes for the last three years. The self-styled guerrilla gardener has created mini gardens all around his home city but has now decided to bring joy to commuters across Europe with his unusual pothole creations.

[Guerilla Gardener Plants Joy in Potholes]

[GoodvilleNews.com - good, positive news, inspirational stories, articles]

[править] 6 Steps Towards Living a Life Free of Fear and Full of Hope

There are two basic motivating forces: fear and love. When we are afraid, we pull back from life. When we are in love, we open to all that life has to offer with passion, excitement, and acceptance. We need to learn to love ourselves first, in all our glory and our imperfections. If we cannot love ourselves, we cannot fully open our ability to love others or our potential to create. Evolution and all hopes for a better world rest in the fearlessness and open-hearted vision of people who embrace life. ~ John Lennon

[6 Steps Towards Living a Life Free of Fear and Full of Hope]

[GoodvilleNews.com - good, positive news, inspirational stories, articles]

[править] 9-yr-old Helps Disabled Brother Finish Triathlons

Over the weekend, brothers Cayden and Connor Long joined hundreds of other children as they competed in the first annual New England Kids Triathlon in Cambridge. The boys did not win the event -- they didnt even come close. But that didnt stop them from winning hearts across the Internet. The Long brothers are not your typical triathletes. Six-year-old Cayden has cerebral palsy and can neither walk nor talk. But thanks to the dedication of his older brother, Connor, the young boy has participated in several triathlons. A touching video

[9-yr-old Helps Disabled Brother Finish Triathlons]

[GoodvilleNews.com - good, positive news, inspirational stories, articles]

Персональные инструменты
Пространства имён

Варианты
Действия
Навигация
информация
документация
Инструменты