The OpenNET Project / Index page

[ новости/++ | форум | wiki | теги ]

10.03.2012 20:31  Новый открытый динамический язык программирования Julia, использующий наработки проекта LLVM

На предстоящей европейской конференции проекта LLVM в Лондоне будет официально представлен новый язык программирования Julia, использующий JIT-компилятор на базе наработок проекта LLVM. Julia является динамическим языком высокого уровня с открытым исходным кодом (лицензия MIT), нацеленный прежде всего на техническое программирование в статистико-математических областях, с областью применения аналогичной таким известным решениям, как Matlab, язык R и связка из Python и NumPy.

Julia мультипарадигменный язык, который может комбинировать разные стили программирования, такие как императивный, объектно-ориентированный и функциональный. Синтаксис Julia очень близок к синтаксису MATLAB. По мнению создателей этого языка, к его достоинствам также следует отнести множество заимствований из синтаксиса Ruby и Lisp, удобная работа со строками в стиле Perl, кроме того обеспечена очень гибкая встроенная поддержка Hadoop. Уже идет работа по реализации полиморфных функций, поддержки задействования GPU для ускорения вычислений, автовекторизации и прочего.

Отдельно следует подчеркнуть, что язык Julia изначально спроектирован с учетом поддержки параллельного программирования (например, реализованы так называемые Coroutines), поэтому эта среда очень хорошо подходит для таких актуальных сегодня областей, как виртуализация и облачные вычисления, практическая работа со стороны разработчиков языка по экспериментированию в этих областях уже начата.

Если же попытаться выделить основные новшества и отличия этого языка от ему подобных, то в качестве первого важного отличия Julia следует отметить его сильный акцент на производительности, больше сопоставимой по своим характеристикам с языком С, а также полная открытость технологии для сообщества.

Ещё одна важная особенность Julia - язык исповедует "бесшаблонную" философию: внешние функции могут вызываться из Julia напрямую без какого-либо "кода для сопряжения" параметров вызова и библиотеки, и это можно делать не только из скомпилированного кода программы на Julia, но даже из интерактивной командной строки. Единственное ограничение для такого подхода - библиотеки с вызываемыми функциями должны быть представлены в виде " "разделяемой библиотеки". Впрочем, большинство библиотек для C или Fortran'a распространяются как раз именно в таком виде. Машинные инструкции, которые генерирует JIT-компилятор Julia в этом вызове - полностью аналогичны тому коду, который сгенерировал бы C-компилятор, поэтому накладные расходы от вызова внешней функции из Julia здесь почти такие же, как и в C. В этой области возможно ещё множество оптимизаций, которые будут реализованы в этом языке в ближайшем будущем.

Другие интересные особенности этого нового динамического языка:

  • Ядро языка очень невелико, его стандартная библиотека включает минимальный набор примитивных операций, такие как например арифметические операции, т.е. гибкая масштабируемость языка;
  • Богатый язык типов для описания и конструирования объектов;
  • Возможность определять поведение функции при передаче разного количества аргументов через multiple dispatch;
  • Автоматическая генерация максимально эффективного кода для разных типов аргументов и переменных;
  • Полная поддержка Unicode;
  • Мощные shell-подобные функции для запуска и управления внешними программами и процессами.


  1. Главная ссылка к новости (http://permalink.gmane.org/gma...)
Автор новости: Igor Savchuk
Тип: К сведению
Ключевые слова: julia, llvm, matlab, lang, math
При перепечатке указание ссылки на opennet.ru обязательно
Обсуждение Линейный вид | Ajax | Показать все | RSS
 
  • 1.1, Аноним, 20:55, 10/03/2012 [ответить] [смотреть все]
  • +2 +/
    это эпидемия что-ли такая "новый язык программирования"??
     
     
  • 2.2, Аноним, 21:06, 10/03/2012 [^] [ответить] [смотреть все] [показать ветку]
  • +/
    Да я вот тоже не понимаю, вместо того чтобы взять существующии и расширить люди ... весь текст скрыт [показать] [показать ветку]
     
     
  • 3.7, Аноним, 21:25, 10/03/2012 [^] [ответить] [смотреть все]  
  • +5 +/
    ну куда еще расширять то взять те же плюсы не расширять надо а приводить в пор... весь текст скрыт [показать]
     
     
  • 4.18, Аноним, 22:08, 10/03/2012 [^] [ответить] [смотреть все]  
  • +3 +/
    Привели плюсы в порядок, получился D, красивый, простой и мощный Много им народ... весь текст скрыт [показать]
     
     
  • 5.26, тоже Аноним, 23:13, 10/03/2012 [^] [ответить] [смотреть все]  
  • +7 +/
    Для того, чтобы сейчас сколь угодно прекрасный и правильный язык вдруг стал популярнее плюсов, кто-то должен бесплатно потратить несколько сотен человеко-лет на написание к нему библиотек в объеме, хоть сколько-нибудь сравнимом с плюсовыми.
    Без критической массы существующего кода никакие теоретически великолепные языки никому нахрен не нужны.
     
     
  • 6.29, Аноним, 23:51, 10/03/2012 [^] [ответить] [смотреть все]  
  • –2 +/
    Фортран 8212 прекрасный и правильный язык, библиотек для которого на нескольк... весь текст скрыт [показать]
     
     
  • 7.30, жабабыдлокодер, 23:55, 10/03/2012 [^] [ответить] [смотреть все]  
  • +/
    В определенных кругах - там где управляют ракетами и прочими алгоритмоемкими вещ... весь текст скрыт [показать]
     
     
  • 8.33, Карбофос, 00:14, 11/03/2012 [^] [ответить] [смотреть все]  
  • +/
    не совсем его применяют в основном там, где считают, что фортран - быстрее оче... весь текст скрыт [показать]
     
     
  • 9.45, жабабыдлокодер, 08:20, 11/03/2012 [^] [ответить] [смотреть все]  
  • +/
    Не-а Фортран - это огромное количество библиотек с реализациями математических ... весь текст скрыт [показать]
     
     
  • 10.63, Карбофос, 16:30, 11/03/2012 [^] [ответить] [смотреть все]  
  • +/
    вы никогда не видели обработку матриц от спецов когда матрицы обрабатываются ... весь текст скрыт [показать]
     
  • 10.65, Аноним, 17:37, 11/03/2012 [^] [ответить] [смотреть все]  
  • +/
    Ну допустим, у фортрана обилие прекрасных библиотек Но он вроде бы вполне норма... весь текст скрыт [показать]
     
     
  • 11.83, vvvua, 01:17, 13/03/2012 [^] [ответить] [смотреть все]  
  • +/
    В Европе очень популярен язык Говорю про авиастроение Много мейнфреймов работ... весь текст скрыт [показать]
     
  • 8.41, фтщтньщгы мгдпфкшы, 03:39, 11/03/2012 [^] [ответить] [смотреть все]  
  • +1 +/
    The gtk-fortran project aims to offer scientists programming in Fortran a cross-... весь текст скрыт [показать]
     
  • 7.31, FractalizeR, 00:02, 11/03/2012 [^] [ответить] [смотреть все]  
  • +1 +/
    На несколько порядков - явное преувеличение ... весь текст скрыт [показать]
     
     
  • 8.60, Аноним, 14:55, 11/03/2012 [^] [ответить] [смотреть все]  
  • –1 +/
    Нет, явное преувеличение - больше На несколько порядков меньше - ближе к исти... весь текст скрыт [показать]
     
  • 2.3, жабабыдлокодер, 21:07, 10/03/2012 [^] [ответить] [смотреть все] [показать ветку]  
  • +1 +/
    Просто ни один из существующих языков не является абсолютно оптимальным у каждо... весь текст скрыт [показать] [показать ветку]
     
     
  • 3.4, Аноним, 21:12, 10/03/2012 [^] [ответить] [смотреть все]  
  • –3 +/
    Этих причин явно недостаточно, т к проблема в этом случае решалась бы простым р... весь текст скрыт [показать]
     
     
  • 4.8, жабабыдлокодер, 21:32, 10/03/2012 [^] [ответить] [смотреть все]  
  • +3 +/
    Чушь. Вы на ассемблере писали?
     
     
  • 5.38, Аноним, 01:44, 11/03/2012 [^] [ответить] [смотреть все]  
  • +/
    Не чушь Писал и если надо напишу Вдумайся что сказано было Про HiAsm слышал ... весь текст скрыт [показать]
     
     
  • 6.40, Аноним, 01:59, 11/03/2012 [^] [ответить] [смотреть все]  
  • +/
    Услышал. Увидел _ещё один_ графический яп.
     
  • 6.44, жабабыдлокодер, 07:30, 11/03/2012 [^] [ответить] [смотреть все]  
  • +/
    Чушь Скорость написания кода и, особенно, его отладки на ассемблере в десятки р... весь текст скрыт [показать]
     
     
  • 7.48, arisu, 09:27, 11/03/2012 [^] [ответить] [смотреть все]  
  • +2 +/
    фигня на самом деле на ассемблере достаточно написать Forth, на нём 8212 Sch... весь текст скрыт [показать]
     
     
  • 8.50, жабабыдлокодер, 10:01, 11/03/2012 [^] [ответить] [смотреть все]  
  • –1 +/
    Форт... Нас учили этому чудищу в университете. Было прикольно и страшно...
     
     
  • 9.51, arisu, 10:05, 11/03/2012 [^] [ответить] [смотреть все]  
  • +2 +/
    да ну, форт простой как обухом по черепу проще ассемблера даже, пожалуй ... весь текст скрыт [показать]
     
     
  • 10.54, жабабыдлокодер, 10:30, 11/03/2012 [^] [ответить] [смотреть все]  
  • +/
    Он очень прост, особенно если раньше программировал на калькуляторе Но от этого... весь текст скрыт [показать]
     
  • 8.52, FractalizeR, 10:17, 11/03/2012 [^] [ответить] [смотреть все]  
  • +3 +/
    А потом на Scheme написать Яву И дальше писать все, что надо уже на ней Это... весь текст скрыт [показать]
     
  • 6.53, FractalizeR, 10:22, 11/03/2012 [^] [ответить] [смотреть все]  
  • +/
    А причем тут HiASM Он к ассемблеру, как языку программирования, имеет весьма ус... весь текст скрыт [показать]
     
  • 4.11, Аноним, 21:41, 10/03/2012 [^] [ответить] [смотреть все]  
  • +2 +/
    Расширение приводит к каше, усложняет реализацию, понимание, специализированный ... весь текст скрыт [показать]
     
  • 3.12, Аноним, 21:47, 10/03/2012 [^] [ответить] [смотреть все]  
  • +3 +/
    При том как правило - фатальные, и называются NIH ... весь текст скрыт [показать]
     
  • 1.5, Опять, 21:12, 10/03/2012 [ответить] [смотреть все]  
  • +9 +/
    Зачем так много языков программирования?? Я один еле еле осилил, и тоне до конца! Каждый день новый язык программирования, сколько же можно елы-палы, это же какое-то помешательство!!!
     
     
  • 2.6, Anonimousss, 21:22, 10/03/2012 [^] [ответить] [смотреть все] [показать ветку]  
  • –3 +/
    Успокойтесь, любезный, и пилите дальше Ваш бейсик. :)
     
     
  • 3.9, develop7, 21:33, 10/03/2012 [^] [ответить] [смотреть все]  
  • +1 +/
    s/пилите/используйте/
     
  • 2.13, Адольф, 21:49, 10/03/2012 [^] [ответить] [смотреть все] [показать ветку]  
  • +/
    Это поиск идеала и заполнение ниш Думаю в ближайшее время будет много языков ко... весь текст скрыт [показать] [показать ветку]
     
     
  • 3.14, Адольф, 21:51, 10/03/2012 [^] [ответить] [смотреть все]  
  • +/
    чтобы избавиться от зависимости от Oracle и Microsoft ... весь текст скрыт [показать]
     
     
  • 4.16, Anonimousss, 21:59, 10/03/2012 [^] [ответить] [смотреть все]  
  • –1 +/
    Тут не языки а либы писать надо.
     
     
  • 5.75, sergey, 00:56, 12/03/2012 [^] [ответить] [смотреть все]  
  • –2 +/
    Для либ уже есть python
     
     
  • 6.77, vasek, 14:00, 12/03/2012 [^] [ответить] [смотреть все]  
  • +1 +/
    а также перл и руби
     
  • 4.61, Аноним, 14:57, 11/03/2012 [^] [ответить] [смотреть все]  
  • +/
    И от тормозной и жрущей память виртуальной машины ... весь текст скрыт [показать]
     
  • 3.22, жабабыдлокодер, 22:29, 10/03/2012 [^] [ответить] [смотреть все]  
  • +1 +/
    Языков то полно, а вот чтобы сразу писать - с гуями и вебмордами, с подключением... весь текст скрыт [показать]
     
     
  • 4.27, тоже Аноним, 23:17, 10/03/2012 [^] [ответить] [смотреть все]  
  • +/
    А если из оставшихся отбросить те, у которых пригодные к использованию библиотек... весь текст скрыт [показать]
     
     
  • 5.28, жабабыдлокодер, 23:25, 10/03/2012 [^] [ответить] [смотреть все]  
  • +2 +/
    А чем Вам не нравятся Qt и OpenJDK?
     
     
  • 6.36, Аноним, 00:37, 11/03/2012 [^] [ответить] [смотреть все]  
  • +1 +/
    Не достаточно элитны.
     
  • 6.55, тоже Аноним, 11:31, 11/03/2012 [^] [ответить] [смотреть все]  
  • +/
    Почему - не нравятся Просто существует нехилая вероятность, что некую программу... весь текст скрыт [показать]
     
     
  • 7.79, anonimous, 19:44, 12/03/2012 [^] [ответить] [смотреть все]  
  • +/
    Это вы о чем?
     
  • 1.10, myhand, 21:41, 10/03/2012 [ответить] [смотреть все]  
  • +3 +/
    > Синтаксис Julia очень близок к синтаксису MATLAB.

    Это пугает.

    > следует отметить его сильный акцент на производительности

    О...  Сравнение с Matlab/Octave действительно внушаитЪ.  Смотрим.  Ага!  Они радостно запилили фиббоначи с использованием рекурсии.  Двойка "тестерам" за знание матчасти.  Занавес.

    > полная открытость технологии для сообщества

    Закрытые Octave, R и NumPy - ну такие закрытые.  Бот что-ли новость писал?

     
     
  • 2.21, Аноним, 22:16, 10/03/2012 [^] [ответить] [смотреть все] [показать ветку]  
  • +2 +/
    Ну почему же Синтаксис матлаба не так плох Даже не смотря на использование кру... весь текст скрыт [показать] [показать ветку]
     
     
  • 3.66, Аноним, 17:41, 11/03/2012 [^] [ответить] [смотреть все]  
  • +/
    Синтаксис, по существу, один из наименее важных факторов, несмотря на притягател... весь текст скрыт [показать]
     
     
  • 4.71, arisu, 21:10, 11/03/2012 [^] [ответить] [смотреть все]  
  • +/
    потому что там дали инструменты для создания любого удобного синтаксиса притом ... весь текст скрыт [показать]
     
     
  • 5.73, Аноним, 23:45, 11/03/2012 [^] [ответить] [смотреть все]  
  • +/
    Это синтаксис более высокого уровня - конструкции, а базовый синтаксис типа ско... весь текст скрыт [показать]
     
     
  • 6.87, фтщтньщгы мгдпфкшы, 21:25, 13/03/2012 [^] [ответить] [смотреть все]  
  • +/
    ну тут ведь такое дело, любому изучавшему арифметику не ну я понимаю что програ... весь текст скрыт [показать]
     
  • 3.68, myhand, 17:55, 11/03/2012 [^] [ответить] [смотреть все]  
  • +1 +/
    Для 80-х - да А сегодня там не плохо - только все что связано с линейной алг... весь текст скрыт [показать]
     
  • 2.89, Michael Shigorin, 23:50, 14/03/2012 [^] [ответить] [смотреть все] [показать ветку]  
  • +/
    > фиббоначи
    > Двойка

    Ай-яй-яй-яй-яй.

     
  • 1.15, антоним, 21:52, 10/03/2012 [ответить] [смотреть все]  
  • +/
    Имеются огромные сомнения насчет того что и как они сравнивали с NumPy. В среднем на порядок быстрее говорите? И яваскрипт тоже также быстрее NumPy на порядок? То есть в разы быстрее чем С/С++. Ага, щас.
     
     
  • 2.17, антоним, 22:06, 10/03/2012 [^] [ответить] [смотреть все] [показать ветку]  
  • +1 +/
    https github com JuliaLang julia blob master test perf perf py я так и думал -... весь текст скрыт [показать] [показать ветку]
     
     
  • 3.19, антоним, 22:08, 10/03/2012 [^] [ответить] [смотреть все]  
  • +2 +/
    То есть сравнивали с python а не numpy. И не факт, что корректно.
     
  • 2.24, Deepwalker, 22:46, 10/03/2012 [^] [ответить] [смотреть все] [показать ветку]  
  • +/
    Да тесты булшит же откровенный. С этого момента весь интерес пропадает к языку.
     
  • 2.32, FractalizeR, 00:10, 11/03/2012 [^] [ответить] [смотреть все] [показать ветку]  
  • –1 +/
    Исходники же есть Возьмите и проверьте ... весь текст скрыт [показать] [показать ветку]
     
     
  • 3.37, антоним, 00:50, 11/03/2012 [^] [ответить] [смотреть все]  
  • +1 +/
    numpy вычисляет со скоростью близкой к предельной - для заданного алгоритма и же... весь текст скрыт [показать]
     
     
  • 4.42, фтщтньщгы мгдпфкшы, 03:47, 11/03/2012 [^] [ответить] [смотреть все]  
  • +/
    NumPy это вообще то не язык, а библиотека для Питона, о чем легко узнать загляну... весь текст скрыт [показать]
     
     
  • 5.43, антоним, 03:54, 11/03/2012 [^] [ответить] [смотреть все]  
  • +/
    в следующий раз, пожалуйста, используйте ник К.О.
     
     
  • 6.86, фтщтньщгы мгдпфкшы, 21:02, 13/03/2012 [^] [ответить] [смотреть все]  
  • +/
    А, то есть здесь всем кроме меня понятно как можно сравнивать язык программирова... весь текст скрыт [показать]
     
  • 4.56, Аноним, 11:48, 11/03/2012 [^] [ответить] [смотреть все]  
  • +/
    Угу Остается вопрос зачем пользоваться тормознутым питоном Наверное чтобы при ... весь текст скрыт [показать]
     
     
  • 5.76, sergey, 00:59, 12/03/2012 [^] [ответить] [смотреть все]  
  • +/
    Может потому что это удобно ... весь текст скрыт [показать]
     
  • 1.20, Аноним, 22:09, 10/03/2012 [ответить] [смотреть все]  
  • +/
    При чем тут coroutines к параллельному программированию Они же не могут выполня... весь текст скрыт [показать]
     
     
  • 2.34, FractalizeR, 00:14, 11/03/2012 [^] [ответить] [смотреть все] [показать ветку]  
  • +/
    http ru wikipedia org wiki Сопрограмма... весь текст скрыт [показать] [показать ветку]
     
     
  • 3.35, Аноним, 00:24, 11/03/2012 [^] [ответить] [смотреть все]  
  • +/
    По приведенной ссылке нет ничего, опровергающего мои утверждения Что сказать-то... весь текст скрыт [показать]
     
  • 2.39, Аноним, 01:57, 11/03/2012 [^] [ответить] [смотреть все] [показать ветку]  
  • +/
    я другой аноним Верно, не параллельность по отношению к кванту времени Сопрог... весь текст скрыт [показать] [показать ветку]
     
  • 1.23, зачем имя анониму, 22:41, 10/03/2012 [ответить] [смотреть все]  
  • +/
    > сильный акцент на производительности, больше сопоставимой по своим характеристикам с языком С

    А почему тогда в представленной таблице нет Си? Судя по ней, этот язык сопоставим по производительности с JS.

     
     
  • 2.25, антоним, 22:56, 10/03/2012 [^] [ответить] [смотреть все] [показать ветку]  
  • +/
    benchmark times relative to C smaller is better C compiled by GCC 4 2 1, ... весь текст скрыт [показать] [показать ветку]
     
     
  • 3.49, arisu, 09:30, 11/03/2012 [^] [ответить] [смотреть все]  
  • +/
    маководы или бсдоиды, что ли тут уже 4 7 на подходе, а у них всё пятилетней дав... весь текст скрыт [показать]
     
  • 2.57, Аноним, 11:48, 11/03/2012 [^] [ответить] [смотреть все] [показать ветку]  
  • +/
    Да, сопостовим Раза в три-четыре натянет - такая вот сопоставимость ... весь текст скрыт [показать] [показать ветку]
     
  • 1.46, arisu, 09:25, 11/03/2012 [ответить] [смотреть все]  
  • +/
    ребята увидели Dylan и сразу нашли в нём Фатальный Недостаток. даже два: второй в том, что до конца выучить ниасилили.
     
     
  • 2.67, Аноним, 17:45, 11/03/2012 [^] [ответить] [смотреть все] [показать ветку]  
  • +/
    Dylan, afaik, не поддерживается. Куда уж фатальней...
     
     
  • 3.69, arisu, 20:46, 11/03/2012 [^] [ответить] [смотреть все]  
  • +/
    да, вроде бы, развивается, но так, что со стороны это похоже на гальванизацию зо... весь текст скрыт [показать]
     
  • 1.58, Аноним, 12:02, 11/03/2012 [ответить] [смотреть все]  
  • +1 +/
    уважаемые, цены бы не было этой дискуссии, если бы пара-тройка сведущих просчита... весь текст скрыт [показать]
     
     
  • 2.59, myhand, 12:51, 11/03/2012 [^] [ответить] [смотреть все] [показать ветку]  
  • +/
    Если вам так нужен матлаб - ну и возьмите матлаб octave, scilab, еще что-то - о... весь текст скрыт [показать] [показать ветку]
     
  • 2.64, антоним, 16:32, 11/03/2012 [^] [ответить] [смотреть все] [показать ветку]  
  • +1 +/
    Прежде чем это можно будет реально использовать для мат расчетов на замену матла... весь текст скрыт [показать] [показать ветку]
     
     
  • 3.72, аноним тот же самый, 23:12, 11/03/2012 [^] [ответить] [смотреть все]  
  • +/
    спасибо за рекомендацию придерживаться python, sage конечно пробовал и даже испо... весь текст скрыт [показать]
     
     
  • 4.88, фтщтньщгы мгдпфкшы, 21:43, 13/03/2012 [^] [ответить] [смотреть все]  
  • +/
    > фантастические, но всегда есть навязчивая идея относительно повышения скорости

    ну вот к фримату в прошлом году без особого шума приделали jit компиляцию

    Latest News - 2011-11-28 - FreeMat 4.1 Released

    We are pleased to annouce the release of FreeMat 4.1. This version provides some significant performance improvements over FreeMat 4.0

    New Just In Time (JIT) compiler -- the new version uses C++ as a backend for code generation, which means a much more substantial set of FreeMat code can now be JIT compiled. FreeMat uses CLANG-LLVM to provide run time compilation of the generated C++ code.

     
  • 2.81, Аноним, 21:36, 12/03/2012 [^] [ответить] [смотреть все] [показать ветку]  
  • +/
    Тебя какие расчёты и в какой области математики интересуют В определённых облас... весь текст скрыт [показать] [показать ветку]
     
  • 1.62, EUGENE, 15:20, 11/03/2012 [ответить] [смотреть все]  
  • +/
    Ну вас всех послушаешь, зачем новый язык, зачем новый язык. А зачем хомячки тогда, ведь мыши есть. Природе наплевать на ваше мнение,она лучше знает что делать. Так что и новые языки будут и будут появляться - вполне закономерные процесс...
     
     
  • 2.70, arisu, 21:06, 11/03/2012 [^] [ответить] [смотреть все] [показать ветку]  
  • +/
    > Природе наплевать на ваше мнение,она лучше знает что делать.

    можно увидеть хотя бы один язык программирования, возникший не как результат умственной деятельности человека, а эволюционным путём — от стадии простейшего организма и далее?

     
     
  • 3.74, Аноним, 00:07, 12/03/2012 [^] [ответить] [смотреть все]  
  • +/
    Одно другому не мешает Любой относительно молодой и популярный язык python, ru... весь текст скрыт [показать]
     
     
  • 4.78, Аноним, 17:11, 12/03/2012 [^] [ответить] [смотреть все]  
  • +1 +/
    Python появился в 90-м году, а Java 95-м Учи матчасть ... весь текст скрыт [показать]
     
     
  • 5.82, Аноним, 21:37, 12/03/2012 [^] [ответить] [смотреть все]  
  • +/
    Не знал, что питону столько Я не поклонник его, но, имхо, это только на поль... весь текст скрыт [показать]
     
     
  • 6.84, kshetragia, 05:35, 13/03/2012 [^] [ответить] [смотреть все]  
  • –1 +/
    Только его почему-то зарулили и Java и Perl. :-D Да и сейчас он как-то не блещет.
     

     Добавить комментарий
    Имя:
    E-Mail:
    Заголовок:
    Текст:


      Закладки на сайте
      Проследить за страницей
    Created 1996-2017 by Maxim Chirkov  
    ДобавитьРекламаВебмастеруГИД  
    Hosting by Ihor TopList