Io
Класс языка: | |
---|---|
Появился в: |
2002 |
Автор: |
Стив Декорте |
Расширение файлов: |
.io |
Система типов: | |
Основные реализации: |
Io, Io.Net |
Испытал влияние: | |
Повлиял на: | |
Сайт: |
[iolanguage.org/ age.org] |
Io (первая буква — заглавная «i») — скриптовый, чисто объектно-ориентированный язык программирования с динамической типизацией. Язык был разработан Стивом Декортом (англ. Steve Dekorte) в 2002 году[1]. Реализация является кросплатформенной, открытой (лицензия BSD) и рассчитана на лёгкость встраивания в качестве скриптового языка.
Содержание
Особенности
- минималистический синтаксис;
- абсолютно каждая сущность является объектом;
- всё основано на передаче сообщений (даже арифметические операции и присваивание — это передача сообщения объекту);
- параллелизм, основанный на модели акторов.
В отличие от Perl, PHP, Python и Ruby, в Io не существует такого понятия, как класс объекта. Вместо этого применены прототипы, как в Self, Lua и JavaScript.
Таким образом, для экземпляров объектов, классов и пространств имён в Io используются прототипы. Для операторов, вызовов методов, присваивания и доступа к переменным используются сообщения.
Примеры
Следующий код печатает в консоли «Hello world!» посредством передачи строке сообщения println:
"Hello world!" println
Реализация шаблона проектирования «одиночка»:
Singleton := Object clone //Объекты создаются (":=") клонированием существующих объектов
Singleton clone = Singleton //Значение слота clone заменяется ("=") ссылкой на сам объект
Напишите отзыв о статье "Io"
Примечания
- ↑ [www.ibm.com/developerworks/ru/library/l-io_01/ Io — компактный объектно-ориентированный язык программирования] (www.ibm.com)
Литература
- Bruce Tate. Io // [books.google.com/books?id=zCP9RAAACAAJ Seven Languages in Seven Weeks: A Pragmatic Guide to Learning Programming Languages]. — Pragmatic Bookshelf, mar 2010. — P. 60-96. — 336 p. — ISBN 9781934356593.
- [jackmyers.info/docs/ObjectOrientedImplementationApproaches.pdf Object-Oriented Implementation Approaches of Pure Object-Oriented Languages: A Comparison among Smalltalk, Eiffel, Ruby and Io], Christopher Bowen, Kevin Desmond, Jesse Kurtz, Jack Myers
Ссылки
- [www.iolanguage.com/ iolanguage.com] (англ.) — официальный сайт языка
- [www.dekorte.com/ dekorte.com] (англ.) — блог автора
- [synrc.com/research/io/doc/overview.htm Язык программирования Io]. synrc research center. Проверено 9 июля 2012. [www.webcitation.org/69gnAykqa Архивировано из первоисточника 5 августа 2012].
Это заготовка статьи о компьютерных языках. Вы можете помочь проекту, дополнив её. |
<imagemap>: неверное или отсутствующее изображение |
Для улучшения этой статьи желательно?:
|
|
Отрывок, характеризующий Io
Пржебышевский с почтительной, но достойной учтивостью пригнул рукой ухо к Вейротеру, имея вид человека, поглощенного вниманием. Маленький ростом Дохтуров сидел прямо против Вейротера с старательным и скромным видом и, нагнувшись над разложенною картой, добросовестно изучал диспозиции и неизвестную ему местность. Он несколько раз просил Вейротера повторять нехорошо расслышанные им слова и трудные наименования деревень. Вейротер исполнял его желание, и Дохтуров записывал.Когда чтение, продолжавшееся более часу, было кончено, Ланжерон, опять остановив табакерку и не глядя на Вейротера и ни на кого особенно, начал говорить о том, как трудно было исполнить такую диспозицию, где положение неприятеля предполагается известным, тогда как положение это может быть нам неизвестно, так как неприятель находится в движении. Возражения Ланжерона были основательны, но было очевидно, что цель этих возражений состояла преимущественно в желании дать почувствовать генералу Вейротеру, столь самоуверенно, как школьникам ученикам, читавшему свою диспозицию, что он имел дело не с одними дураками, а с людьми, которые могли и его поучить в военном деле. Когда замолк однообразный звук голоса Вейротера, Кутузов открыл глава, как мельник, который просыпается при перерыве усыпительного звука мельничных колес, прислушался к тому, что говорил Ланжерон, и, как будто говоря: «а вы всё еще про эти глупости!» поспешно закрыл глаза и еще ниже опустил голову.
Стараясь как можно язвительнее оскорбить Вейротера в его авторском военном самолюбии, Ланжерон доказывал, что Бонапарте легко может атаковать, вместо того, чтобы быть атакованным, и вследствие того сделать всю эту диспозицию совершенно бесполезною. Вейротер на все возражения отвечал твердой презрительной улыбкой, очевидно вперед приготовленной для всякого возражения, независимо от того, что бы ему ни говорили.
– Ежели бы он мог атаковать нас, то он нынче бы это сделал, – сказал он.
– Вы, стало быть, думаете, что он бессилен, – сказал Ланжерон.
– Много, если у него 40 тысяч войска, – отвечал Вейротер с улыбкой доктора, которому лекарка хочет указать средство лечения.
– В таком случае он идет на свою погибель, ожидая нашей атаки, – с тонкой иронической улыбкой сказал Ланжерон, за подтверждением оглядываясь опять на ближайшего Милорадовича.
Но Милорадович, очевидно, в эту минуту думал менее всего о том, о чем спорили генералы.
– Ma foi, [Ей Богу,] – сказал он, – завтра всё увидим на поле сражения.
Вейротер усмехнулся опять тою улыбкой, которая говорила, что ему смешно и странно встречать возражения от русских генералов и доказывать то, в чем не только он сам слишком хорошо был уверен, но в чем уверены были им государи императоры.
– Неприятель потушил огни, и слышен непрерывный шум в его лагере, – сказал он. – Что это значит? – Или он удаляется, чего одного мы должны бояться, или он переменяет позицию (он усмехнулся). Но даже ежели бы он и занял позицию в Тюрасе, он только избавляет нас от больших хлопот, и распоряжения все, до малейших подробностей, остаются те же.
– Каким же образом?.. – сказал князь Андрей, уже давно выжидавший случая выразить свои сомнения.