[00:09:37] <vlad2> !@#$ dll hell такой hell
[00:10:16] <vаlexey> гы. если читать мозилловские доки, то выходит что лучше FF браузера нет :-)
[00:10:24] <vаlexey> в плане поддержки фичек да стандартов
[00:10:56] <vlad2> Как загрузить долбанный активИкс, если он зависит от dll?
[00:11:38] <vаlexey> эээ.. подложить ему эту dll рядом с его dll?
[00:22:53] <vаlexey> Оу! Многоокошечность в Far'e!
[00:23:03] <vаlexey> Все, мне больше для счастья ничего не нужно!
[00:43:50] <vаlexey> гы. а по спекам то удобней биндинг писать, чем по js-API
[00:44:01] <vаlexey> ибо спеки (в IDL) строго статически типизированы
[00:44:16] <vаlexey> http://www.w3.org/TR/DOM-Level-2-HTML/html.html#ID-26809268
[00:44:20] <vаlexey> например так
[00:44:41] <vаlexey> есть шанс в говнах не утонуть :-)
[00:52:25] <vlad2> В том то и дело, что "рядом" не работает.
[00:53:12] <vаlexey> пичаль
[00:53:34] <vаlexey> так. а как же константы именовать? УЖЕЛЬ_КАПСОМ?
[00:53:45] <vаlexey> Хотя, нет. Капсом не выйдет - у нас подчеркивания нет :-)
[00:54:02] <vаlexey> Остается CamelCase или даже camelCase
[01:15:02] <vаlexey> дас, а с обработкой исключений надо что-то думать. какую-то стратегию вырабатывать.
[01:52:54] <vlad2> Вообще я просто думал сделать непосредственную поддержку - TRY/CATCH/FINALLY. Когда надоест JS.do писать.
[01:53:04] <vlad2> Там чего-то новое/лучшее уже не придумать.
[01:57:04] <vаlexey> посмотрим :-)
[01:57:34] <vаlexey> я пока слишком мало на Обероне этом написал чтобы пробовать что-то предлагать :-)
[01:59:57] <vаlexey> ы-ы. давно СТОЛЬКО тупого кода не писал
[02:00:05] <vаlexey> ощущаю себя кодогенератором
[02:21:06] <vаlexey> vlad2: я багу нашел.
[02:21:12] <vаlexey> причем похоже даже не у тебя, а у Вирта.
[02:21:15] <vаlexey> MODULE A;
TYPE
Foo* = RECORD END;
END A.

MODULE B;
IMPORT A;
TYPE
Boo = A.Foo;
END B.
[02:21:22] <vаlexey> Такое вот не работает.
[02:21:33] <vаlexey> На уровне синтаксиса.
[02:22:36] <vаlexey> Хотя, быть может, это такая задумка великая?
[02:31:53] <vаlexey> http://oberspace.dyndns.org/index.php/topic,558.0.html
[02:31:54] <vаlexey> во
[02:42:22] <vlad2> Да, Вирт выпилил же ш тайпдефы :)
[02:42:33] <vlad2> Программер должен страдать!
[02:42:49] <vlad2> И всегда писать Module.Type
[02:43:18] <vаlexey> Да ладно бы тайпдефы. Оно могло бы новый тип там создавать
[02:43:32] <vаlexey> Ну и только структурные типы же
[02:43:34] <vаlexey> Ан хрен
[02:44:16] <vаlexey> Я так удивился, что было аж полез багу на компилер заводить
[02:44:21] <vаlexey> Но догадался глянуть в репорт
[02:44:26] <vаlexey> А там кукиш имени Вирта.
[03:09:13] <vаlexey> бли-ин. как же все запущено в этих вебах!
[03:09:23] <vаlexey> "Though the specification requires namespaceURI to be defined on the Node interface, Gecko-based browsers implement it on the Element interface."
[03:09:39] <vаlexey> и это в официальной доке на developer.mozilla.org!
[03:10:07] <vаlexey> причем это там заявлено гордно - у них раньше было по спеке, а теперь пофиксили.
[03:20:14] <vаlexey> *гордо заявлено
[03:54:54] <vаlexey> Пока так: https://github.com/valexey/Dom4Oberon
[03:55:13] <vаlexey> Собственно пока только биндинг к Node и NodeList
[03:55:22] <vаlexey> (см. Dom.ob)
[03:59:19] <vаlexey> vlad2: закапывают форум: http://forum.blackboxframework.org/viewtopic.php?f=10&t=54&start=20#p372
[05:53:37] <vlad3> Круто
[05:53:45] <vlad3> Когда страничка будет тестовая? :)
[09:09:01] <vlad3> Переписал Stream.js на оберон.
[09:09:40] <vlad3> (используя твою технологию работы с жабаскриптовыми строками)
[09:10:11] <vlad3> Теперь надо этот переписанный модуль заиспользовать :)
[11:39:54] <vаlexey> vlad2: ты только учти, что надо такие opaque делать не через OpaqueType = RECORD END; а через OpaqueType = POINTER TO RECORD END;
[11:40:57] <vаlexey> на счет тестовой странички - я сейчас пытаюсь обозреть масштаб бедствия :-) составить план того, что нужно минимально реализовать (все DOM-элементы я хочу сразу реализовывать полностью, но ограничиться их минимально возможным подмножеством)
[13:38:01] <alexey.veselovsky> Ыыы!
[13:38:07] <alexey.veselovsky> “Usenet for me is something strange from the past, like console interface for Doug “
[13:38:12] <alexey.veselovsky> Иван :-)
[14:51:42] <Kemet> !
[14:55:16] <alexey.veselovsky> !!
[15:04:11] <alexey.veselovsky> Kemet: а как у A2 с домом?
[15:28:02] <Kemet> alexey.veselovsky: там своя реализация хмл, без дома, но есть заныканая с полной реализацией
[15:28:17] <alexey.veselovsky> а html?
[15:28:29] <Kemet> но простым смертным недоступна
[15:28:46] <Kemet> ну там жеж браузер есть
[15:28:54] <Kemet> в4
[15:28:57] <alexey.veselovsky> ну мало ли как он там сделан...
[15:29:19] <Kemet> эээ, ну там хмл применяется, да
[15:30:16] <alexey.veselovsky> а почему простым смертным не доступна?
[15:32:17] <Kemet> ну там много чего недоступно, типа студ проекты, и тп
[15:47:43] <alexey.veselovsky> Kemet: А! Дык Петр же как раз и взял за основу AOS’овскую реализацию ДОМа
[15:49:13] <Kemet> alexey.veselovsky: НУ ХЗ, Я ХМЛ НЕ УВЛЕЧЕН, ПОДРОБНО НЕ СМОТРЕЛ, ПРОСТО ВРОДЕ НА САЙТЕ ЕТХ БЫЛО ЧТО ЕСТЬ ТМПА ДОМ, ПИШИТЕ, КОМУ ИНТЕРЕСНО
[15:49:51] <alexey.veselovsky> ну, я тут, как понимаешь, немного с html ковыряюсь. xml то мне как раз пока без надобности :-)
[15:51:55] <Kemet> ну я в этом нуб, не имел близко дела
[15:53:24] <Kemet> мне что DOM, что Дом-2 - один фиг нинужке
[15:53:40] <alexey.veselovsky> а чем же гуй рисовать? Ж-)
[15:53:54] <Kemet> где
[15:54:01] <alexey.veselovsky> в IDE :-D
[15:54:28] <Kemet> ну так смотря в какой и смотря где
[15:55:30] <Kemet> ежели в браузере, то да, нужен
[15:55:48] <alexey.veselovsky> не, ну и в браузере конечно все на canvas можно рисовать :-)
[15:55:56] <alexey.veselovsky> но это как-то через жопу слегка ;-D
[15:58:53] <Kemet> чето какое то затишье в оберонмассах, не к буре ли это
[15:59:25] <alexey.veselovsky> чо это затишье? у нас вроде довольно активненько что-то там обсуждается на форуме
[16:00:06] <Kemet> вяло как то, нефонтан
[16:00:24] <alexey.veselovsky> ну все истощились эмоционально от недавних бурь :-)
[16:00:55] <Kemet> или они перенеслись на импортный сайтец
[16:01:10] <alexey.veselovsky> да не, там тоже все довольно спокойно
[16:01:55] <Kemet> не читал давно, че они там, новый бб не запилили?
[16:32:15] <Kemet> ага, satan перевел компилер из Plugin Oberon на обжектпаскал
[16:32:34] <alexey.veselovsky> o_O
[16:32:38] <alexey.veselovsky> зачем?
[16:39:44] <Kemet> ну у него иде на дельфилазарусе, типа тесная интеграция
[16:40:08] <alexey.veselovsky> гм.  а что он там пилит? где прочесть можно?
[16:40:22] <Kemet> на zx
[16:40:29] <Kemet> веда
[16:41:24] <Kemet> http://www.freepascal.ru/forum/viewtopic.php?t=9458&view=unread#unread
[16:41:47] <alexey.veselovsky> прикольно
[16:43:58] <alexey.veselovsky> “Привет, я его на zx.oberon2.ru <http://zx.oberon2.ru> выложил, он на делфях, вот ща весь в сомнениях, какой накатать компилер на FP 07, Active или с BB сдуть?”
[16:44:06] <alexey.veselovsky> не понял - он еще и компилятор написать хочет?
[16:44:13] <alexey.veselovsky> и выбирает для какого языка компилятор писать ?
[16:44:59] <Kemet> переписать на обжектпаскаль
[16:45:21] <Kemet> как с плугина
[16:45:24] <alexey.veselovsky> ну, компилятора Оберон-07/11 в открытом доступе нет
[16:45:31] <alexey.veselovsky> если акорновый не считать
[16:45:48] <alexey.veselovsky> (не не с жабаскрипта же он будет переписывать? :-)
[16:45:58] <alexey.veselovsky> а что за плугин?
[16:46:22] <Kemet> вообще 07 есть, но как я поняд, тоже для ихбранных
[16:46:36] <alexey.veselovsky> угу. по прямому запросу только
[16:46:52] <alexey.veselovsky> причем в Astrobe как раз вариант его используется
[16:46:59] <alexey.veselovsky> правда они его на C#  переписали
[16:47:14] <alexey.veselovsky> переписали и не забыли обфусцировать :-)
[16:50:25] <alexey.veselovsky> но вообще, я не шибко понимаю направленность этих телодвижений
[16:50:31] <alexey.veselovsky> ну, то есть кому оно будет надо
[17:22:51] <Kemet> ну тем, кому нужен обероноподобный язык с вменяемой иде
[17:23:17] <Kemet> такие люди точно есть
[17:23:34] <Kemet> не всем же фореймворки подавай
[17:23:45] <alexey.veselovsky> обычно IDE вторична таки. ну то есть важны либы и возможность написания биндингов хотя бы. рантайм важен
[17:26:01] <Kemet> ну компилятор оберонов без рантайма вряд ли возможен
[17:26:35] <alexey.veselovsky> ну почему же? возможен. ведь не каждый репорт требует наличия сборщика мусора :-)
[17:26:50] <alexey.veselovsky> ну и качество рантаймов бывает так себе
[17:27:11] <Kemet> так сборщик мусора это только одна часть - есть динамическая типизация, например
[17:27:39] <alexey.veselovsky> ну, это сложно рантаймом назвать. это же кусок кодогенерации по сути
[17:27:41] <Kemet> тоже часть рантайма
[17:29:12] <alexey.veselovsky> О! http://www.opennet.ru/opennews/art.shtml?num=38245
[17:29:19] <alexey.veselovsky> Компания Google занесла официальный сайт PHP в список ресурсов, распространяющих вредоносное ПО
[17:29:24] <alexey.veselovsky> :-D
[17:30:58] <Kemet> так их
[17:31:13] <alexey.veselovsky> реально же вредоносное ПО распространяют!
[17:31:19] <alexey.veselovsky> :-D
[17:34:40] <Kemet> дайош  вместо пыхыпы активный оберон!
[17:34:55] <alexey.veselovsky> Дайошь вместо него пассивный Оберон!
[17:34:58] <alexey.veselovsky> :-)
[17:35:28] <Kemet> на пассивном кот не пишется и гдлавное, не выпоняется ( он всегда idle
[17:36:17] <alexey.veselovsky> ну, шутки-шутками, а думаю если дело будет продвигаться такими же темпами, то не за горами hello world http server на Обероне :-)
[17:36:33] <alexey.veselovsky> это пока не приоритет, но тем не менее
[17:39:20] <Kemet> ljgblbfg. yjdsq ueq lkz F2
[17:39:55] <Kemet> еуые
[17:40:25] <Kemet> допиливаю новый гуй для А2
[17:40:45] <alexey.veselovsky> чем от старого отличается? полностью своя разработка?
[17:44:14] <Kemet> ну там отрисовка переработанная, с еффктами, для привлечения блондинок, визуальные компоненты переработаны и дополнены, ну т.е. оно выглядит как нормальный десктоп, и также работает
[17:44:52] <alexey.veselovsky> КАРТИНОК!
[17:44:55] <alexey.veselovsky> :-)
[17:47:10] <Kemet> ну оно будет доступно или как сборка или как форк
[17:47:35] <alexey.veselovsky> все равно скриншотов хочется потребить! :-)
[17:47:43] <alexey.veselovsky> общество медийного потребления!
[17:47:57] <Kemet> я ишшо ббшных не наделал
[17:48:12] <alexey.veselovsky> ну, до ББ вроде бы ехать тебе куда-то надо далеко
[17:48:23] <alexey.veselovsky> а активно-гуевое у тебя небось под рукой где-то :-)
[17:48:36] <Kemet> дык скриншоты не то, я их никогда особо не смгтрю (
[17:49:19] <alexey.veselovsky> ну, это ты. :-) не, я отлично понимаю что на скриншоте и половины не видно. но хочется же беглый взгляд бросить
[17:49:25] <Kemet> ну не так чтобы далеко, но километров 400-500
[17:51:08] <Kemet> как таскбар допилю, наскриню
[17:51:14] <alexey.veselovsky> ок
[17:52:06] <Kemet> она, с ефектами вполне норм тянет на фреймбуфере, хотя и с ссе
[17:53:18] <Kemet> а сюзя на том же железе  тормозит с отрисовкой (
[17:53:34] <alexey.veselovsky> ну не рассчитана она уже на такое
[17:53:42] <alexey.veselovsky> особенно если там иксы пускать
[17:53:53] <alexey.veselovsky> особенно если на этих иксах пускать что-то  gtk’шное или qt’шное
[17:54:09] <Kemet> угу, 11 еще летала, а 12-я тормозит
[17:54:55] <Kemet> ну в 11-й ядро 2-ка , а тут уже 3-ка и както всё сильно заморочнеснное
[17:55:15] <alexey.veselovsky> 2.6 от тройки мало отличается на самом деле
[17:55:21] <alexey.veselovsky> ну и вообще, тормоза там явно не в ядре
[17:55:35] <alexey.veselovsky> а скорее всего в gtk/qt или через что там гуи рисуются у вас
[17:55:49] <Kemet> не знаю, но оно и грузится жутко долго
[17:56:07] <alexey.veselovsky> а, ну может пересобрать с правильными опциями нужно
[17:56:22] <alexey.veselovsky> вообще мы всегда пересобирали ядро линуха с нужными нам опциями для всякого железа
[17:56:38] <Kemet> ууу, это на 2 дня поди
[17:56:45] <alexey.veselovsky> все ненужное выкидывалось + отключалась динамическая загрузка модулей.
[17:56:59] <Kemet> а, это да
[17:57:01] <alexey.veselovsky> то есть ядро становилось монолитным и только с тем что нужно
[17:57:11] <alexey.veselovsky> не, оно шустро собиралось даже в 2007 году
[17:57:17] <alexey.veselovsky> за полчаса или час точно
[17:57:22] <alexey.veselovsky> или еще быстрее
[18:00:06] <Kemet> , но это таки означает, чтотпроцесс генерации системы в линухе дубоватый
[18:01:40] <alexey.veselovsky> ну, сузя, как и все общеупотребимые десктопные линуксы, при конфигурировании ориентируется на современный десктоп, чтобы оно оптимально работало (шустро и максимально много устройств работало искаропки) на тех десктопах что стоят у людей дома/в офисе прямо вот сейчас. То есть на компы не старше 2 лет.
[18:02:07] <alexey.veselovsky> Но линух славен тем, что допилить его (банально с другими опциями собрать) можно почти под что угодно
[18:02:28] <alexey.veselovsky> Если им пользоваться для спец. применений как виндой, то есть без допила, то профита не будет
[18:03:13] <Kemet> угу
[19:13:12] <alexey.veselovsky> Дедлай - волшебное слово для программиста
24 часа дедлайн - программист спит
12 чаксов дедлайн - программист отдыхает
6 часов дедлайн - программист садится за работу
1 час дедлайн - вот теперь программист потребовался топовый процессор в компе, поскольку не топовый за программистом не успевает
[19:15:51] <vlad2> Основное впечатление от переписывания stream.js - тяжеловесный синтаксис. Особенно заметно для функций в 1-2 строки. И вот требование дописывать в конце функции ее имя выглядит особенно нинужным. Как ни вспомнить про синтаксически йоверхед.
[19:16:30] <alexey.veselovsky> C другой стороны это ж биндинг. Тут нет живого кода по сути
[19:16:48] <alexey.veselovsky> Вообще, биндинг можно было бы и автоматом как-то генерить :-) Не человеческое это дело
[19:17:53] <vlad2> Ну конкретно вот возвратить текущую позицию в стриме:
[19:18:02] <alexey.veselovsky> Ну и учти, что ощущения от языка когда пишешь на обычном текстовом редакторе, и на том где есть автокомплит и удобняшки - сильно отличается
[19:18:13] <vlad2> PROCEDURE pos*(self: Type): INTEGER;
[19:18:19] <vlad2> RETURN self.pos
[19:18:21] <vlad2> END pos;
[19:18:49] <alexey.veselovsky> То есть если нет удобняшек с автокомплитом (и автокапсом для ключевых слов) - то боль и страдания. То есть даже в жабе (когда приходится идентификатор длиной в 20 символов набирать, а потом материццо из за опечатки).
[19:18:59] <vlad2> Срави с:
def pos(self):
   return self.pos
[19:19:07] <vlad2> Понятно, что тут типов нет, но все равно.
[19:19:29] <alexey.veselovsky> ну одна строка экономии :-)
[19:19:42] <vlad2> Да дело даже не в количество строк.
[19:19:48] <alexey.veselovsky> вообще, вот такие геттеры можно вообще в одну строчку вытягивать
[19:19:54] <vlad2> Букав сильнот больше. Нинужных букаф.
[19:20:28] <alexey.veselovsky> ну из лишних букв тут только PROCEDURE и END разве что
[19:20:30] <vlad2> Не, в одну строчку еще хуже будет.
[19:21:10] <alexey.veselovsky> это смотря как оформить :-) если геттеров таких много (и они довольно однотипны) то получится табличка
[19:21:19] <vlad2> А требование одного RETURN заставляет заводить переменные в отдельной секции VAR. Вобщем страдания на ровном месте.
[19:22:24] <vlad2> В итоге получается, что сгененрированный js меньше по размеру чем исходник на обероне. При том, что туда вставлятся комменты с типами.
[19:23:16] <vlad2> И при том, что в сгененрированном js тоже мусора хватает типа:
var v = 0;
v = pos;
[19:24:40] <vlad2> Да блин. Даже int vs INTEGER начинает играть значение. Пока пишешь на плюсах не замечаешь и кажется, что пофиг как именовать целый тип. А вот попишешь на обероне и начинаешь ценить короткий int :)
[19:25:57] <alexey.veselovsky> :-)
[19:26:10] <alexey.veselovsky> с другой стороны, множество геттеров тоже можно и на Обероне оформить культурно
[19:26:14] <alexey.veselovsky> щща
[19:26:37] <alexey.veselovsky> При этом дублирование имени функции идет во благо
[19:27:23] <alexey.veselovsky> https://gist.github.com/valexey/7139263
[19:27:24] <vlad2> Не знаю. У меня такое ыувство, что Вирт люит писать мясо на >10 строк, поэтому ему это дублирование имени реально помогает.
[19:28:01] <vlad2> Не, все равно не нравится мне оно.
[19:28:20] <alexey.veselovsky> ну, да. на одиночных геттерах и особенно на биндинг-процедурах (где 2-3 строчки кода в теле и в одну строчку уже не вытянуть) оно не смотрится
[19:29:08] <alexey.veselovsky> на боевом коде с алгоритмами, ну то есть которые не просто пересовывает это вот сюда, оно должно смотреться лучше
[19:29:18] <vlad2> В биндингах, кстати, хочется уметь делать RETURN JS.do. Иначе приходится VAR секцию городить.
[19:29:34] <alexey.veselovsky> угу. хочется.
[19:30:36] <vlad2> В идеалет это вообще что-то типа такого должно быть: RETURN JS.do<INTEGER>("...") ;)
[19:30:48] <alexey.veselovsky> А еще в Обероне таки (но не только в нем - это общий бич языков современных) очень печально пытаться выцепить глазами что же, блин, из модуля экспортируется
[19:30:57] <alexey.veselovsky> Ну или не экспортируется, а что там вообще есть
[19:31:08] <alexey.veselovsky> Не продираясь через код реализации
[19:31:39] <vlad2> Да. Я тоже мучаюсь с там, что можно придумать в палне связанных методов. Хочется иметь тип с декларациями процедур. А все мясо потом.
[19:32:37] <alexey.veselovsky> Ну, с этой то бедой я знаю как справиться. То есть с мясом этим. Без изменения компилятора :-)
[19:32:45] <vlad2> Но придется в синтаксис это тащить.
[19:32:56] <vlad2> Круто ;)
[19:32:57] <alexey.veselovsky> Будет просто в редакторе живая выжимка из модуля.
[19:33:17] <vlad2> Ну например.
[19:33:25] <alexey.veselovsky> Ну, то есть некий аналог Адских спек модуля
[19:33:29] <alexey.veselovsky> В отдельном окошке
[19:33:36] <alexey.veselovsky> Правиш тут - изменяется и там сразу
[19:33:43] <alexey.veselovsky> А можешь править там (например функций добавить)
[19:34:08] <alexey.veselovsky> Не понятно, кстати, почему жабные IDE такого не сделали
[19:34:41] <alexey.veselovsky> Ибо это реально удобней чем в отдельном синтаксисе в отдельном (не радактороном) окошке городить список методов текущего класса
[19:35:02] <alexey.veselovsky> Оно там read only, выглядит иначе и вообще там синтаксис обычно другой (UML) используется
[19:42:05] <alexey.veselovsky> но по моим впечатлениям, если сделать автокомплит и автокапс, то жить станет намного веселее. пока меня больше всего раздражали три вещи: 1) длинное слово PROCEDURE 2) перемежающийся капс 3) обязательное отсутствие ; после RETURN (я периодически по инерции её там таки ставлю
[19:45:03] <Kemet> в А2 хоть макросы для этого ест, всё проще
[19:45:24] <alexey.veselovsky> в смысле? имеется ввиду в радакторе?
[19:45:38] <Kemet> да
[19:45:55] <alexey.veselovsky> не, ну это дело наживное. вон в фар тоже запилить можно (я в Фаре пишу)
[19:46:10] <Kemet> ну так
[19:46:11] <alexey.veselovsky> там даже подсветка синтаксиса есть :-)
[19:46:35] <alexey.veselovsky> но вообще, это дело наживное - нужно превозмочь биндинг к DOM’у, а потом уже легче будет
[19:46:41] <alexey.veselovsky> ибо и код пойдет осмысленней
[19:46:59] <alexey.veselovsky> да и редактор будет который можно будет допиливать  в нужных направленияз
[19:47:03] <alexey.veselovsky> х
[19:53:24] <vlad2> На самом деле проблема не только в наборе, но и в чтении всего этого. Большие ключевые слова скрывают полезный текст.
[19:53:49] <vlad2> ; после RETURN меня тоже достала. Хотел диагностику поправить.
[21:02:26] <vаlexey> ну, опять таки, это вопрос в том на какие кусочки шинковать код. если они слишком мелкие - то да, накладные расходы на "хедеры" будут большие, если они большие - то оно будет как раз наоборот в тему.
[21:03:02] <vаlexey> по сути в примере который ты показал, ну и в моих биндингах - полезного кода то нет :-)
[21:40:06] <vlad2> Ну это еще не значит, что тривиальный код должен быть монструозным.
[21:40:42] <vlad2> Короче. Разберемся с расширениями, займусь синтаксисом. Питон - няшка ;)
[21:41:43] <vаlexey> я подозреваю что синтаксис няшней можно сделать без изменения грамматики
[21:41:53] <vаlexey> банально изменив "ключевые слова"
[21:41:59] <vаlexey> ну, то есть терминалы
[21:43:08] <vаlexey> во - со статической типизацией! http://en.wikipedia.org/wiki/Boo_(programming_language)
[21:43:10] <vаlexey> :-D
[21:45:10] <vlad2> Ага. "Python-inspired syntax" об чем и речь :)
[21:45:27] <vаlexey> я к тому, что там анотации типов есть местами
[21:45:32] <vаlexey> (для остального там вывод типов)
[21:45:56] <vаlexey> Ну, то есть если хочется питонообразно со статической типизацией, имеет смысл глянуть как они сделали.
[21:46:10] <vlad2> Да. Аннотации должны быть опциональны. Когда это важно дл читателя.
[21:46:44] <vlad2> В интерфейсах, например. В реализации обычно нафиг не сдались.
[21:51:39] <vаlexey> вывод типов задолбаешься делать :-)
[21:55:05] <vlad2> Зато интересно. Ну и я так понимаю уже есть наработки на эту тему.
[21:57:16] <vаlexey> угу
[21:57:48] <vаlexey> в том же Boo выводильщик типов занимает чуть ли не 80 процентов кода компилера :-)
[21:59:33] <vаlexey> хотя, если разделить модуль на спецификацию и реализацию, в спецификации модуля анотации типов оставить, а в реализации убрать (у функций), а вывод типов сделать локальным а не глобальным, то задача сильно упростится
[22:02:01] <vаlexey> на тему вывода типов любят сейчас дисеры писать :-)
[22:02:13] <vlad2> Хе-хе.
[22:47:40] <vаlexey> vlad2: что, цель - показать этим снобам из jetbrains с их kotlin'ом как надо делать ЯП? :-)
[23:01:32] <vlad2> :)
[23:01:58] <vlad2> Глобальная цель - не зависеть от тараканов придумывателей язоыков :)
[23:02:22] <vlad2> Примерно как Вирт. Только с блэкджеком :)
[23:03:50] <vlad2> При этом по больщому счету пофиг на то, как отнесутся окружающие к очередной поделке. Хотя хорошо, конечно, если будет комьюнити (можно даже пойти на какие-нибудь уступки :)
[23:04:30] <vаlexey> типа отмены расширений и изменений синтаксиса оберона? :-D
[23:05:10] <vаlexey> но на самом деле конечно все что будет сделано для оберона думаю может быть уже спокойно перенесено в нечто более совершенное
[23:05:16] <vаlexey> в автоматиццком режиме
[23:08:41] <vlad2> Да. Обратную совместимость надо тянуть до конца. Опять-так - в отличие от Вирта ;)
[23:09:19] <vlad2> Без рисширений хотя бы уровня КП комьюнити все равно не будет :)
[23:09:39] <vlad2> Писать на голом О7 реально больно.
[23:18:17] <vаlexey> это вначале, а потом начинает уже нравиться!
[23:21:52] <vlad2> Сад мазо? :) Ну да, я планировал еще сколько-то модулей написать :)
[23:23:05] <vlad2> Жалко подсветкии для сублима так и не удалось надыбать.
[23:25:43] <vаlexey> Есть подсветка для Фара!
[23:26:32] <vlad2> Я уже привык к сублиму. Кроме того у меня там настроена проверка синтаксиса/компиляция :)
[23:27:02] <vаlexey> о! как у тебя сурово все!
[23:27:18] <vаlexey> не, я просто вначале пишу строк 200-300 кода, потом в онлайн-компилере проверяю.
[23:28:22] <vаlexey> и синтаксис, и семантику того что понаписал
[23:28:30] <vlad2> Неудобно же ш ;)
[23:28:49] <vlad2> Оно у меня еще и на нужную строку прыгает ;)
[23:29:08] <vаlexey> ну, там ошибок то почти и не бывает
[23:29:19] <vаlexey> только вот эти точкозапятые в RETURN'e
[23:29:31] <vаlexey> я гораздо больше боюсь очепяток в js-коде :-)