MyBooks.club
Все категории

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

На сайте mybooks.club вы можете бесплатно читать книги онлайн без регистрации, включая Журнал «Компьютерра» - Цифровой журнал «Компьютерра» № 17 (170). Жанр: Периодические издания издательство неизвестно,. Доступна полная версия книги с кратким содержанием для предварительного ознакомления, аннотацией (предисловием), рецензиями от других читателей и их экспертным мнением.
Кроме того, на сайте mybooks.club вы найдете множество новинок, которые стоит прочитать.

Название:
Цифровой журнал «Компьютерра» № 17 (170)
Издательство:
неизвестно
ISBN:
нет данных
Год:
неизвестен
Дата добавления:
10 сентябрь 2019
Количество просмотров:
168
Читать онлайн
Журнал «Компьютерра» - Цифровой журнал «Компьютерра» № 17 (170)

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

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

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

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

Главный вопрос: возможно ли такое в принципе? За пять лет работы команда Кея доказала, что ответ на этот вопрос может быть положительным. Систему методов, которые позволят это сделать, авторы называют STEPS. Это рекурсивный акроним, расшифровывающийся как STEPS Toward Expressive Programming Systems — «Шаги к выразительным системам программирования».

Руководствуясь принципами STEPS, в институте Кея создали прототип системы. Он называется Frank, а если полностью — «Франкенштейн». Такое имя выбрано не зря: система составлена из кусочков, каждый из которых ещё может быть заменён или переписан заново.

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


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

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

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

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

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

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


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

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


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

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

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

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

Если посмотреть отчёты Viewpoints за разные годы, то заметно, что здесь снова и снова изобретают языки программирования, делают их всё более самодостаточными (пока что кое-где ещё остаётся код на Си, но от него постепенно избавляются) и ставят смелые эксперименты.

Время от времени команда Кея пробует пробрасывать мостики в реальный мир, создавая, к примеру, виртуальную машину Squeak для Google Native Client или делая метаязык Tamacola на основе Tamarin VM, входящей во Flash. Эти методы могут позволить всей системе не просто работать в браузере, но исполняться быстрее, чем при трансляции в JavaScript.


Скорость, впрочем, не является целью Кея: по его оценке, в нынешнем виде Frank работает примерно на 30 процентов медленнее, чем если бы был написан традиционными методами. Оптимизацией исследователи занимаются лишь тогда, когда это не вредит компактности кода.

Понятно, что Frank не станет конкурентом современных ОС и вряд ли вообще будет доделан до необходимого для этого уровня. Тем не менее те методы, которые разрабатывает Алан Кей, могут повлиять на подход к программированию не меньше, чем в своё время повлиял Smalltalk.


К оглавлению

Еnergy harvesting: энергия из ничего

Олег Нечай

Опубликовано 24 апреля 2013

Мы все с интересом обсуждаем одежду со встроенными датчиками и пультами управления, кроссовки с шагомером, GPS и прочую носимую электронику. Однако стоит задаться вопросом: а от чего, собственно, должны питаться все эти полезные гаджеты? От сменных батареек? Тогда вся эта вшитая электроника становится ничем не лучше обычных «умных» коробочек, которые можно просто сунуть в карман. Это как если бы мы вместе с мобильным телефоном носили большой тяжёлый чемодан с аккумуляторами или заправляли автомобиль вязанкой дров.


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

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


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

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

Прокомментировать
Подтвердите что вы не робот:*
Подтвердите что вы не робот:*
Все материалы на сайте размещаются его пользователями.
Администратор сайта не несёт ответственности за действия пользователей сайта..
Вы можете направить вашу жалобу на почту librarybook.ru@gmail.com или заполнить форму обратной связи.