[03:26:05] <vаlexey> vlad2: http://indico.ihep.ac.cn/getFile.py/access?contribId=38&sessionId=3&resId=2&materialId=slides&confId=2813
[03:26:08] <vаlexey> :-P
[03:27:55] <vаlexey> "Google’s Go is a C-syntax clone of Oberon with minor (unnecessary) extensions."
[03:28:02] <vаlexey> /me facepalm
[06:37:37] <vlad3> Блин, опять этот дебильный график.
[06:41:43] <vlad3> Притом, что на O7 с этого графика  прикладному непрофессионалу вообще делать нечего.
[06:49:26] <vlad3> Блин, давно пора заменить все вхождения С++ на JavaScript...
[08:44:54] <geniepro> ткачёв живёт в своей собственной виртуальной реальности...
[14:18:56] <geniepro> раз уж зашла речь о черепах, то вот: http://ic.pics.livejournal.com/uborshizzza/12670586/1985775/1985775_original.jpg
[15:10:35] <geniepro> vlad3> Притом, что на O7 с этого графика  прикладному непрофессионалу вообще делать нечего.
блекбоксёры не считают О7 труЪ-обероном, для них это тоже уже новомодная поделка
[19:38:16] <vаlexey> geniepro: info21 считает
[19:51:36] <vlad2> http://www.cnn.com/2014/01/31/tech/innovation/beer-drone-faa/index.html?hpt=hp_t2
[19:53:33] <vlad2> Двойственное чувство - и пива попить охота и чтоб не жужжало над головой.
[19:54:08] <vаlexey> :-)
[19:54:09] <vlad2> (в нашей деревне удалось отстоять запрет на дронов)
[19:54:20] <vlad2> (коллега очень активно заниался этим вопросом)
[19:54:23] <vаlexey> тормозите прогресс!
[19:55:34] <vlad2> (до того активно, что женился познакомившись на идеологическом митинге)
[19:55:53] <vаlexey> вот у народа жизнь интересная!
[19:57:01] <vаlexey> все таки у info21 такая открытая ложь в презенташке... это что-то.
[19:58:02] <vlad2> Да там вроде все старые клеветы, не?
[19:58:22] <vаlexey> не
[19:58:29] <vаlexey> я ж приводил новое - про Go
[19:58:40] <vаlexey> типа это Оберон с Сишным синтаксисом :-D
[19:58:51] <vаlexey> а оно вообще ничего общего не имеет ни с сями ни с обероном по семантике
[19:59:31] <vlad2> /me серьезно думает над добавлением в еберон STRING вторым пунктом после методов. Потому что ну очень простая вещь (по сравнению с перегрузкой операторов и т.п.), а жизни упрощает кардинально. Особенно для прикладного программинга. И в жабаскрипт хорошо ложится.
[19:59:58] <vlad2> А. Это да.
[20:00:09] <vlad2> Он, наверное, и не смотрел на Го.
[20:00:19] <vаlexey> смотрел чисто на синтаксис скорее всего
[20:00:22] <vlad2> Так, отзывы почитал, нужное увидел.
[20:00:40] <vаlexey> увидел "методы" с синтаксисом похожим на Оберон-2, и увидел в паре месте := и всё - вердикт готов.
[20:01:30] <vlad2> Кстати, я понял почему в КП нельзя делать локальные методы по примеру процедур (в ебероне пока можно).
[20:01:38] <vаlexey> кстати о мейнстриме - matlab это прям таки мейнстримный мейнстрим он везде нужен. постоянно. придется туда таки окунуться по уши.
[20:01:55] <vаlexey> и в отличае от той же даже студии, или тем более свободного Gcc, матлаб стоит далеко не тыщу баксов.
[20:02:35] <vаlexey> и почему же?
[20:03:10] <vаlexey> (алсо про локальные процедуры - дико бесит что нельзя их передавать в Обероне в другие функции.
[20:04:52] <vаlexey> то есть понятно почему это так (замыканих то нету), но придумать как это победить таки можно. также как с передачей локальных же рекордов на стеке по ссылке.
[20:11:19] <vlad2> По той же причине - в случае локальных методов как раз "теряется" контроль над тем когда они могут быть вызваны. Т.е., можно вернуть из процедуры объект для которого определены лоально методы, которые ссылаются на локальные ппемеременные (если явно не запретить такие ссылки, что тоже усложнение).
[20:12:15] <vlad2> Кроме того, там еще интеречсный момент всплывает - в момент создания такого локального класса базовый еще может быть не определен до конца (имект абстрактные методы).
[20:12:53] <vlad2> Этовсе решаемые проблемы (в ебероне я сделал все, кроме контроля за ссылками на локальные переменные, но это тоже понятно как делается), но типа проблемы.
[20:13:11] <vlad2> Причем вместо их решения лучше что-то придумать с замыканиями.
[20:13:59] <vlad2> А. И еще в ебероне это все плохо ложится в жабаскрипт.
[20:14:03] <vаlexey> ну, с замыканиями же будет сразу сложно :-) модель памяти другая небось будет
[20:14:41] <vlad2> Т.е. там реально получается, что такой локальный класс создается в динамике, хотя семантика у него статическая. Т.е. работает, но неэффективно.
[20:15:01] <Jordan>
Об абстракциях

Естественно, быстрее всего будет работать WriteConsole
Более того, это в некотором смысле "единственный" способ вывести строку в Windows!
Да-да!
Почему единственный?
А как же printf("Hello, world!") и cout<<"Hello, world!"
Как же они?
А это просто кроссплатформенные обёртки над той же WriteConsole
Смотри цепочку!
оператор cout<<"Hello, world!"; вызывает функцию streambuf::sputn("Hello, world!");
streambuf::sputn вызывает xsputn
xsputn вызывает basic_filebuf::overflow
basic_filebuf::overflow вызывает fputc

Обрати внимание! iostream по цепочке вызвал в конце концов сишную функцию fputc из stdio.h!!!

Дальше больше:
fputc вызывает _fputc_nolock
_fputc_nolock вызывает (это макрос, но в нём вызывается) _flswbuf
_flswbuf вызывает _write
_write вызывает _write_nolock
...
дальше я не осилил, но, очевидно, будет вызываться WinAPI функция WriteConsole
Вывод: iostream использует stdio использует winapi!
[20:15:19] <vlad2> Так что я пока это оставил (локальные методы), но скорее всего уберу (как в КП буду ругаться)
[20:16:14] <Jordan> Всё обероны ругаете? :-)  Всем добрый вечер.
[20:16:39] <vlad2> Да не, просто тут инфо21 переиздал свои клеветы :)
[20:16:55] <vаlexey> Jordan: было бы странно если бы не использовался WinAPI, Не используя API операционки в которой работаешь, ты вообще ничего не сделаешь.
[20:17:29] <Jordan> Где почитать клеветы? Алексей я знаю. просто до ваин апи, столько вызовов.
[20:17:59] <vlad2> Jordan: все эти вызовы все равно работает на много пороядков быстрее, чем сама WriteConsole.
[20:18:27] <vlad2> Так что даже не пытайся там оптимихить чего то за счет соокращения этой цепочки.
[20:18:31] <vаlexey> Jordan: а тебе еще умную вещь скажу - new и malloc тоже испольуют WinAPI
[20:18:37] <vаlexey> не на каждом вызове, но используют :-)
[20:18:53] <vаlexey> (иногда до WinAPI не нужно лезть, а иногда нужно - зависит от состояния кучи)
[20:20:12] <Jordan> Мне вин апи не нужен, просто нашёл коммент в интернете. Влад, ок. Я думал все эти вызовы могут тормозить.
[20:20:33] <Jordan> Так клеветами не поделитесь? Где почитать от Инфо.
[20:21:28] <Jordan> Влад, как тебе без подобия stl, на обероне прогается?
[20:21:43] <vlad2> http://indico.ihep.ac.cn/getFile.py/access?contribId=38&sessionId=3&resId=2&materialId=slides&confId=2813
[20:21:52] <vlad2> (клеветы)
[20:22:17] <vlad2> Ой. Фиг с ним STL. Хотя бы массивы были человеческие...
[20:22:18] <vаlexey> по идее компилятор то без stl вполне нормально писать
[20:22:56] <vlad2> Потому как у меня там сейчас используется нетипизированный JsArray. И это тяжко.
[20:23:10] <Jordan> Мне эта картинка с арифметикой синтаксиса, напоминает эту
[20:23:13] <Jordan> http://img1.joyreactor.cc/pics/post/%D0%BF%D0%B5%D1%81%D0%BE%D1%87%D0%BD%D0%B8%D1%86%D0%B0-%D0%B4%D0%B8%D0%B0%D0%B3%D1%80%D0%B0%D0%BC%D0%BC%D1%8B-%D1%8D%D0%B2%D0%BE%D0%BB%D1%8E%D1%86%D0%B8%D1%8F-%D0%A2%D1%80%D1%83%D1%81%D1%8B-80271.jpeg
[20:23:58] <vlad2> А еще я уже несколько раз заьывал -1 в FOR.
[20:24:41] <Jordan> FOR акстись, на сторону мэйнстрима переходишь, назад дороги нет. :-)
[20:24:57] <vlad2> Ну он же есть в O7.
[20:25:19] <Jordan> return по прежнему один?
[20:25:29] <vlad2> Впрочем теперь понятно, почему Вирт его не любит ;) Он просто нормальных FOR не видел :)
[20:25:45] <vlad2> Да, return один и это тоже тяжко
[20:29:08] <Jordan> О как
[20:29:10] <Jordan> One Oberon does what is usually achieved via a combination of
[20:29:56] <Jordan> Точнее
[20:29:59] <Jordan> One Oberon does what is usually achieved via a combination of
C++ & python
Mathematica & Fortran
etc.
[20:31:00] <vаlexey> это имеется ввиду что в ББ и в ОС Оберон оный КП и Оберон соответственно используется и как язык для скриптования и язык для написания ядра.
[20:31:03] <vаlexey> Как-то так
[20:31:36] <vаlexey> правда даже у С++ со скриптованием все более-менее хорошо. См. тот же ROOT
[20:32:59] <vаlexey> ну и опять таки - это не заслуга языка как такового
[20:33:26] <vаlexey> да и скриптовать на Обероне не шибко удобно. Для скриптования удобняшки особенно важны.
[20:33:44] <Jordan> Да, особенно встроенные строки
[20:33:56] <Jordan> Вроде bash в линуксе
[20:34:09] <vаlexey> вообще структурные литералы нужны
[20:34:17] <vаlexey> без них плохо-плохо
[20:38:55] <Jordan> Я вот подумал, в обероне есть расширяемые записи. Грубо говоря, в расширяемые записи можно обрабатывать одним алгоритмом, есть список, и этот список обрабатывает +100500 записей разных типов. Но в любом случае, так как тип разный и назначение структур разное, для ускорения или логики, данные структуры нужно сортировать, в том или ином порядке. Хоть и не нужно писать +100500 списков, нужно всё равно продублировать  действия, по доступу.
[20:39:29] <Jordan> В любом случае, есть дублирование на уровне программиста.
[20:39:56] <Jordan> Расширяемые записи не заменяют шаблоны, genericи.
[20:46:41] <Jordan> Та неуправляема сложность о которой говорят на оберкоре, та же сложность которая есть в компиляторе. Не каждый сможет написать компилятор, за программиста уже написан код который он не сможет осилить. Те же среды и фреймворки.
[20:48:50] <vаlexey> тот же ББ :-) не каждый сможет его написать :-)
[20:49:56] <vlad2> И не каждый сможет его дописать :)
[20:51:41] <vаlexey> :-D
[20:54:53] <Jordan> Вот. И как написание каждый раз, своей сортировки, очереди, стэка, снижает сложность? Как? Слова, красивые в той ссылке, но они описывают лишь вершину айзберга.
[20:57:24] <Jordan> *айсберг
[20:58:52] <Jordan> Массивы в 07, теперь вместо реалок x, нужно строить список массивов, повышение сложности. Разруливать доступ, если массив нужно отобразить в виде индекса и т.д
[21:01:49] <Jordan> Возможно, так называемое подавление сложности, не заморачиваться писать сложный компилятор.
[21:02:03] <Jordan> Астапа несёт, пойду чай попью. :-)
[21:07:11] <Jordan> Я бы тот документ назвал не Fyodor Tkachov “Less is more. Why Oberon beats mainstream ...”, а Fyodor Tkachov "Fairy tale of oberon in mainstream." :-)
[21:13:28] <Jordan> C++ is best proof of natural origin of human intellect.
The choice of C++ is best proof of irrational forces within
scientific community: combinatorial intellect rules.
[21:18:29] <Jordan> 92 in the log window means, the compiled code for this module is 92 bytes -
- not kilobytes, just bytes.
[21:18:47] <Jordan> Ага + ОС + Среда ББ и того.
[21:20:33] <vlad2> Да, нормальная презенташка для Виртовского юбилея :)
[21:21:09] <vlad2> Только С++ уже неактуален. Впрочем, это тоже не важно. Ибо Вирт вряд ли в курче победоносного хождения жабаскрипта по планете :)
[21:23:23] <geniepro> ну вот, у тебя есть отличный шанс потеснить яваскрипт обероном )))
[21:23:38] <geniepro> обязательно свою фотку ткачову скинь ))))
[21:24:03] <Jordan> Интересно, даже не упомянул о онлайн компиляторе в JS
[21:24:18] <geniepro> а оно ему надо? ))
[21:24:27] <Jordan> (classical | ETH) Oberon (1986)
— Oberon-2 (1992; XDS)
— Component Pascal (1997; BlackBox, .NET)
— Oberon-07 (2007; Astrobe)

[21:24:42] <Jordan> Другие упомянул
[21:25:04] <geniepro> ну, если так подумать, то JSOиукщт ещё не вышел в релиз, я бы тоже постеснялся упоминать )))
[21:25:09] <Jordan> Для справедливости, тут люди пишут компилер, общего нразначения, свободный.
[21:25:28] <geniepro> JSOberon*
[21:26:10] <geniepro> он и POW! не упомянул, и кучу других компилеров... зачем?
[21:26:50] <Jordan> Главное, задать тон, мол такие штуки уже разрабатываются, написать что Влад, бывший сишник, познакомившись с обероном, нашёл истину, уволился с работы, живёт в лесу и пишет JSOberon :-) отличная статья бы получилась.
[21:27:00] <geniepro> кстати, я не понял, причём день рождения Вирта и Пекин?
[21:27:43] <vаlexey> другие - сурьезные и кошерные. а этот - нет :-)
[21:27:51] <vаlexey> и вообще идеалогически не кошерный :-D
[21:28:25] <geniepro> компилятор оберона, написаный на яваскрипте -- неправильный! )))
[21:28:41] <vаlexey> geniepro: не при чем. этот пекин был в 2013. думаю этот доклад Ткачев и на день варенья притащит
[21:29:05] <geniepro> а чо там в пекине было-то? есть ссылки?
[21:29:56] <vаlexey> ну, ссылка как бэ намекает своим урлом :-)
[21:30:17] <vlad2> Да, автор идеологически ненадежен :) Если и упомянут, то последним :)
[21:31:07] <vlad2> Вон, даже зорко не признает :)
[21:32:09] <Jordan> То есть из оберона в си, нормально в js уже моветон?
[21:32:31] <vаlexey> ога
[21:32:42] <vаlexey> ведь js в z80 не запихнуть :-)
[21:32:49] <Jordan> Как тогда пускть оберон под вебом, js самый легкий способ, его туда всунуть.
[21:32:49] <geniepro> http://acat2013.ihep.ac.cn/
[21:33:45] <Jordan> А ну да, к него на этот счёт пунктик.
[21:33:52] <Jordan> * у него
[21:34:24] <Jordan> То, что нельзя запустить на zx, мэйнстрим и сверх сложность.
[21:35:32] <geniepro> ну, я тоже к микроконтроллерам 51-й серии питаю нежные чуйства))
[21:36:33] <Jordan> На нём хаскель заведётся?
[21:37:01] <geniepro> сомневаюсь )
[21:37:27] <geniepro> хотя если выкинуть GC и ограничиться стандартом на язык -- то может и заведётся )))
[21:39:21] <vаlexey> geniepro: ну может hello world и заведется :-)
[21:39:33] <vаlexey> какой там минимальный бинарь ghc умеет сделать?
[21:39:43] <vаlexey> в 10 Кб поместится? :-)
[21:40:03] <geniepro> про GHC придётся забыть
[21:40:19] <geniepro> как классы типов реализовать на мелкоконтроллере -- ума не приложу ))
[21:40:35] <vаlexey> а какие проблемы? они что, в рантайме есть?
[21:40:46] <vаlexey> ибо если они чисто в compile time, то проблем никаких
[21:41:02] <geniepro> если делать компактно -- тормозить жутко будет, а если делать что бы быстро работали -- в памяти не поместятся же )))
[21:41:24] <geniepro> в каком-нить 8052 dctuj 8 r<n GPE
[21:41:35] <geniepro> всего 8 кБт ПЗУ*
[21:42:05] <vаlexey> эээ... Z80 - хоть винт прикручивай
[21:42:10] <vаlexey> вот ОЗУ - да, ограничено
[21:42:34] <geniepro> ну, на спектрумах делали же ОЗУ в мегабайт
[21:43:02] <vаlexey> ну, считаем что у нас дефолтные 48К
[21:43:26] <vаlexey> так что, типы классов в рантайме есть? а нафига?
[21:43:46] <vаlexey> вон, в плюсах их нет в рантайме (то есть они в компиленом бинаре никак не присутствуют)
[21:43:47] <geniepro> блин, и ведь я в эти 8кБт делал управляющую программу для газоанализаторов, стрелковых тренажёров -- на сях, с плавающей арифметикой ))) лол, щас даже трудно представить как это работало ))
[21:44:12] <vаlexey> да норм работало. это та задача где много мозга от машины не требуется
[21:44:43] <geniepro> классы типов по разному можно сделать -- как в плюсах через таблицы виртуальных методов или прямо проинлайнить, но тогда екзешник многие мегабайты займёт ))
[21:45:10] <vаlexey> ну это уже зависит от размера кода написанного
[21:45:14] <vаlexey> hello world не займет
[21:45:45] <geniepro> ну в хелло ворде и нет нужды в тайпклассах. а вот фибоначии считать начнёшь -- уже надо ))
[21:46:05] <vаlexey> нужны. чтобы целые числа выводить например
[21:46:07] <vаlexey> сколь я помню
[21:46:17] <vаlexey> претти-принтеры всякие
[21:46:36] <geniepro> это чтоза хелловорлд такой? о_О ))
[21:52:05] <geniepro> ping
[21:52:06] <Жаба> geniepro, Pong from you:  0.155987 s
[21:54:00] <geniepro> начало этого года радует новинками аниме...
Sekai Seifuku Bouryaku no Zvezda
Space Dandy
Tonari no Seki-kun
Zetsumetsu Kigu Shoujo Amazing Twins
[22:04:45] <vаlexey> http://forum.oberoncore.ru/viewtopic.php?f=23&t=3980&p=85746#p85746
[22:29:58] <Jordan> http://www.gamedev.ru/flame/forum/?id=157484
[22:30:05] <Jordan> Там и об обероне есть
[22:34:28] <медленныекони> привёт, ётуны
[22:35:34] <медленныекони> rusnet irc #science

<x> пивет егф
* Теперь вы известны как АнгарецЪ
<АнгарецЪ> x, хайль голографический
<x> голография не то слово, которым стоит так разбрасываться :Р
<АнгарецЪ> Беседовали об этом щас втроём, все трое исключены из ФМШ %165 Нск
<mimolet> втроем с кем? исключены откуда?
<АнгарецЪ> 3 йотунов =)
<АнгарецЪ> 3 йотунов из Мидгарда исключены из ФМШ #165 Новосибирск, физматшкола для олимпиадников
<y> какие-то неправильные ётуны
<АнгарецЪ> ётуны все неправильные. Правильные сидят в Асгарде
<y> а в Ётунхейме тогда кто? :)
<АнгарецЪ> неправильные
<АнгарецЪ> мутанты всякие
* Теперь вы известны как ЛукоморецЁтун
<y> По легендам был сотворён асами к востоку от Мидгарда для Бергельмира и его потомков. От Асгарда Ётунхейм отделяет река Ивинг.
<y> ога
<ЛукоморецЁтун> по русски говорят Йотунхейм=дурдом
<y> http://hitech.newsru.com/article/30jan2014/playroom
<bot> Title:  Русская пара устроила 20-минутную секс-оргию в видеочате PlayStation
<ЛукоморецЁтун> существа, желающие странного
<y> а Асгард и Мидгард тогда ...?
<bot> [Яндекс.Новости: Наука] Космический грузовой корабль «Прогресс М-20М» отстыковался от МКС - http://news.yandex.ru/yandsearch?cl4url=rusnovosti.ru%2Fnews%2F302310%2F
<ЛукоморецЁтун> It's a SONY
<ЛукоморецЁтун> Фсгард — Боги, Мидгард - люди
<ЛукоморецЁтун> Асгард --- Боги, Мидгард --- люди.
<ЛукоморецЁтун> Йотунхейм --- "другие боги" или мутанты.
<y> ясно-понятно.
<ЛукоморецЁтун> Ну, это моя субъективная метафора, я не настаиваю на академизме. На религиоведа пока не поступал даже
[22:35:50] <медленныекони> короче оберонкоре = Асгард
[22:35:57] <медленныекони> Оберспейс = йотунхейм
[22:46:38] <ЛукоморецЁтун> "Disclaimer: I am an active participant in the Ethereum project and part of the organization along with Vitalik Buterin and Mihai Alisie.

If you aren’t yet hip to Ethereum, let me tell you just how excited I am for this project! I’ve never believed in the social value of altcoins, but Ethereum is something special, just like Bitcoin was special compared to eCash. In essence, Ethereum takes the blockchain/consensus technology and wraps a new system around it, such that Bitcoin is just a currency. And what is currency but some digital asset? Except digital assets can represent something more than a specific sequence of bits–they can represent an idea. What if that idea is a legal contract? If the network participants agree on the contract status via blockchain consensus, it’s easy to see how one could extend this idea to work for a multitude of needs including escrow, voting, betting, futures contracts, or really any mathematical expression described by a Turing-complete machine language. And it will all automatically run in “the cloud”. Welcome to the new world of Distributed apps–or Dapps." http://bitcoinmagazine.com/9867/ethereum-dapps-rise-new-internet/?utm_source=feedburner&utm_medium=feed&utm_campaign=Feed%3A+BitcoinMagazine+%28Bitcoin+Magazine%29
[22:49:08] <ЛукоморецЁтун> Ethereum: A Next-Generation Cryptocurrency and Decentralized Application Platform
by VITALIK BUTERIN on JANUARY 23, 2014
http://bitcoinmagazine.com/9671/ethereum-next-generation-cryptocurrency-decentralized-application-platform/?utm_source=feedburner&utm_medium=feed&utm_campaign=Feed%3A+BitcoinMagazine+%28Bitcoin+Magazine%29
[23:30:37] <vаlexey> ЛукоморецЁтун: http://www.opennet.ru/opennews/art.shtml?num=38996
[23:30:40] <vаlexey> :-D
[23:32:04] <ЛукоморецЁтун> прекращена поддержка Internet Explorer 6/7 [КРУТО!!! —Лукоморейй] и режима отладки WT [WTF??? —Луком.] Development Mode [БЛЯЯЯ. АХУИТЕЛЬНАЯ ВЕСЧЬ Была -Луком.]
[23:32:19] <ЛукоморецЁтун> гугла колбасит чёрнопёстро
[23:33:16] <ЛукоморецЁтун> вот это круто очень про GWT http://www.opennet.ru/opennews/art.shtml?num=27998
[23:33:37] <ЛукоморецЁтун> 2010
[23:33:50] <ЛукоморецЁтун> но мало кто об этих 4 знает