Журнал «Компьютерра» - Цифровой журнал «Компьютерра» № 17 (170)

Тут можно читать онлайн Журнал «Компьютерра» - Цифровой журнал «Компьютерра» № 17 (170) - бесплатно полную версию книги (целиком) без сокращений. Жанр: Прочая околокомпьтерная литература. Здесь Вы можете читать полную версию (весь текст) онлайн без регистрации и SMS на сайте лучшей интернет библиотеки ЛибКинг или прочесть краткое содержание (суть), предисловие и аннотацию. Так же сможете купить и скачать торрент в электронном формате fb2, найти и слушать аудиокнигу на русском языке или узнать сколько частей в серии и всего страниц в публикации. Читателям доступно смотреть обложку, картинки, описание и отзывы (комментарии) о произведении.

Журнал «Компьютерра» - Цифровой журнал «Компьютерра» № 17 (170) краткое содержание

Цифровой журнал «Компьютерра» № 17 (170) - описание и краткое содержание, автор Журнал «Компьютерра», читайте бесплатно онлайн на сайте электронной библиотеки LibKing.Ru
Оглавление
Колонка IT-рынок Промзона Терралаб Технологии Инновации Гид
О технологиях выживания: кто подметает пыльные тропинки далёких планет Голубятня: Школа негодяев имени доктора Хауса Практический алгоритм миграции как ключ к успеху в современном софтостроении Голубятня: Такие мелкие и трудные шажки к совершенству Вернет ли MSFT кнопку ПУСК в Windows 8.1? Спасение утопающих — дело рук самих утопающих! SkyNet на Секретной Службе: Об одном невидимом, но крайне существенном рынке для ИТ-индустрии Красное на звёздно-полосатом: почему Huawei уходит из США? Девять стартапов новой волны, которая принесёт нам следующие Apple, Google и Facebook Возвращение к реальности: следующие Google и Facebook не будут заниматься интернетом AMD: приключения на краю погибели Взлом блогов известных СМИ как метод манипуляций на финансовых рынках Спецвыпуск журнала Forbes со встроенной Wi-Fi точкой доступа В Швейцарии открылось кафе для велосипедистов В Швейцарии появится беспроводной троллейбус Док-станция для телефона, превращающая его в будильник Гаджет, выключающий телефон, если его владелец над чем-то сосредоточенно работает или думает Выбираем моноблок для Windows 8 BitTorrent Sync: торренты в облаках Система STEPS: двадцать тысяч строк кода, которые изменят программирование, операционные системы и интернет Еnergy harvesting: энергия из ничего TOP-10 роликов на день рождения YouTube Социальный интерактив как лекарство от терроризма: как ловили организаторов бостонской трагедии «Обливион» Джозефа Косински: спецэффекты лучезарного постапокалипсиса Рынок брендинга запутался в терминах: как разобраться стартапу? Стратегия коммуникации с венчурным инвестором: общайся по-предпринимательски Стартапы в борьбе со стихийными бедствиями Почему стартаперам кажется, что российский венчур — клондайк, и почему на самом деле это не совсем так «Клонирование» успешных бизнес-моделей: найдётся ли выход? Станислав Лагун, Magru: вскоре в России перестанут «стесняться» платить за контент в интернете Десять лучших пакетов офисных программ Приложение Akatu не даст близким повода гадать, чем вы занимаетесь в ванной У популярного клиента Twitter Tweetbot появилась интересная новая возможность

Цифровой журнал «Компьютерра» № 17 (170) - читать онлайн бесплатно полную версию (весь текст целиком)

Цифровой журнал «Компьютерра» № 17 (170) - читать книгу онлайн бесплатно, автор Журнал «Компьютерра»
Тёмная тема
Сбросить

Интервал:

Закладка:

Сделать

Вот как выглядит «Франкенштейн» с точки зрения пользователя.

Что может делать пользователь Frank Всё то же что мы обычно делаем за - фото 96

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

Frank — это не операционная система, в которой работают приложения, а скорее, подобие Smalltalk или Squeak — большое приложение, которое можно расширять и дополнять, пока оно не станет делать всё, что нам нужно. Вместо приложений, в которых реализованы собственный интерфейс и функции, здесь присутствуют компоненты, имеющие сложные взаимосвязи.

Во Frank есть единое понятие «документ», в который могут быть включены и на месте изменены любые объекты, будь то изображения, таблицы или созданные пользователем скрипты. Презентация, например, — это документ, включающий в себя сценарий перехода вперёд и назад по страницам (или, если угодно, кадрам), а не файл, для открытия которого требуется специальная программа. Такая программа просто не нужна, потому что интерфейс для работы с изображениями и текстом идентичен тому, что используется для подготовки других документов.

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

Ещё одно ценное качество системы Кея — универсальная отмена. Здесь может быть отменено действительно любое действие, а не как в сегодняшних программах — лишь некоторые, да и то не всегда. Для этого используется механизм «миров»: каждый раз, когда мы что-то меняем, система может запомнить, чем нынешний «мир» отличается от предыдущего, и в случае надобности вернуть всё, как было.

Интереснее всего то, как Кей предлагает переделать веб. Во Frank нет браузера, зато есть поддержка протокола TCP/IP (его код занимает 160 строк, и это, по словам Кея, не предел краткости). Вместо веб-страниц предлагается использовать те же самые документы, добавив в них объект нового типа — гиперссылку.

Большие круги на этой схеме компьютеры связанные сетью красные - фото 97
Большие круги на этой схеме — компьютеры, связанные сетью, красные шестиугольники — объекты. Их связи не меняются в зависимости от того, локальные они или удалённые

Поскольку код, содержащийся в документах, по сути, работает в виртуальной машине, это делает их загрузку извне не менее безопасной, чем исполнение JavaScript браузером. Получается, что объекты-страницы просто подгружаются через Сеть по мере необходимости. Кстати, делать такие «сайты» намного проще, чем обычные: можно пользоваться уже имеющимися в системе средствами — теми же самыми, при помощи которых редактируются текстовые документы, презентации и всё остальное.

Сила мысли и никакого мошенничества

Внешняя сторона Frank интересна уже хотя бы в качестве примера унифицированной среды, в которой нет ни разделения на приложения, ни традиционной файловой системы. Но настоящая чёрная программисткая магия скрыта внутри.

Сколько занимают разные части STEPS?

Как Frank уместился в двадцать тысяч строк кода? Ответ кроется за двумя терминами: метапрограммирование и предметно-ориентированные языки (DSL). Главная идея заключается в том, чтобы создавать языки под конкретные задачи и, хитроумно комбинируя их, писать элегантные и короткие программы. Эта идея не нова: на ней основан язык Forth, и она используется в написании программ на языке Lisp, которым Кей в своё время вдохновлялся при создании Smalltalk. Более современный пример — фреймворк Ruby on Rails, применяемый в качестве DSL для разработки бэкэндов веб-приложений. Но STEPS — это нечто куда большее, чем один язык, — это набор методов и языков, при помощи которых можно создавать сложные системы, используя минимум кода.

Один из самых интересных компонентов STEPS — это объектно-ориентированный язык OMeta ( pdf). Он предназначен для описания синтаксиса других языков. К примеру, на OMeta можнов несколько строк описать синтаксис калькулятора, а потом при помощи наследования расширить его и сделать научный калькулятор. Синтаксис OMeta при этом описан на самом OMeta.

Второй важный язык — это Nile (названный в честь реки Нил). Авторы STEPS называют его «языком исполняемой математики». Nile позволяет компактно описывать математические выражения и сделан таким образом, чтобы максимально облегчить параллельные вычисления. На нём написана графическая подсистема Frank, называемая Gezira. Gezira умещается в несколько сотен строк на Nile и умеет выводить растровую и векторную графику, поддерживает сглаживание и различные фильтры.

Самый низкий уровень во всей этой сложной системе язык Nothing переводится с - фото 98

Самый низкий уровень во всей этой сложной системе — язык Nothing (переводится с английского как «Ничто»), «высокоуровневый язык с низкоуровневой семантикой». Nothing — это промежуточное звено между всеми языками в STEPS и машинными кодами. На Nothing не предполагается писать вручную, и нужен он лишь для возможности смотреть, что получается на выходе. Nothing, по словам исследователей, вдохновлён BCPL, использовавшимся в шестидесятые годы и вдохновившим авторов Си. На данный момент код на Nothing можно транслировать в Си для дальнейшего перевода в машинные коды или в JavaScript — чтобы система исполнялась в браузере. Предполагается, что в будущем из Nothing можно будет получать машинные коды напрямую.

Одна из смысловых цепей на которых держится STEPS В данном случае показан - фото 99
Одна из смысловых цепей, на которых держится STEPS. В данном случае показан путь от Nile к машинным кодам

В качестве промежуточного слоя, на котором написан пользовательский интерфейс, одно время использовался NotSqueak — упрощённый диалект Squeak. Но в последнем отчёте упоминаний о NotSqueak уже нет, зато появился новый объектно-ориентированный язык — Maru. Как и OMeta, он написан сам на себе и может использоваться как для описания высокоуровневого представления, так и для связи с низкоуровневыми функциями. На Maru может быть реализован парсер грамматики, и в 2011 году команда Кея была занята переносом Nile на Maru.

Бесконечный эксперимент

К сожалению, отчёты Кея и его команды ( pdf) — это не пособие для программистов-суперменов и не справочник. Оно и понятно — STEPS пока что не готов, и каждый год во Viewpoints ставят разнообразные эксперименты, цель которых — не столько в создании законченной системы, сколько в том, чтобы отточить методы. «Франкенштейн» как цельная система здесь нужен лишь в качестве подопытного тела.

Читать дальше
Тёмная тема
Сбросить

Интервал:

Закладка:

Сделать


Журнал «Компьютерра» читать все книги автора по порядку

Журнал «Компьютерра» - все книги автора в одном месте читать по порядку полные версии на сайте онлайн библиотеки LibKing.




Цифровой журнал «Компьютерра» № 17 (170) отзывы


Отзывы читателей о книге Цифровой журнал «Компьютерра» № 17 (170), автор: Журнал «Компьютерра». Читайте комментарии и мнения людей о произведении.


Понравилась книга? Поделитесь впечатлениями - оставьте Ваш отзыв или расскажите друзьям

Напишите свой комментарий
x