[01:45:29] <valexey> vlad2: видал там багофикс редактора? :-)
[01:56:04] <valexey> да, таки реально Madzi форкал не твою ветку, а почему-то мою.
[07:45:03] <jordan36957> Накодили так накодили. Проверил загрузку gpu видеокарты при скролировании каталога в double commabder, он не только проц грузит под 80, но gpu под 40-50. Всё же он там по пикселю рисует, и походу гоняет каждый пиксель от проца видеокарте, так как контроллер памяти видеокарты грузится до 40, в простое 12.
[07:45:48] <jordan36957> В общем там явно что то работает не оптимально.
[07:57:02] <jordan36957> Зависит конечно от windows так как программа просто дёргает, функции отрисовки.
[07:58:45] <valexey> jordan36957: на самом деле это фигня. то есть перерисовывать полный экран с частотой в 60 fps можно абсолютно без напрягов на современном железе
[07:58:48] <valexey> даже на железе смартфонов
[08:00:28] <jordan36957> Так я за. Интересно от чего зависит конкретно double commander, может он использует свою реализацию, но что накосясили вот и тормозит. Так как прога написана на lazarus, скорее библиотека виджетов, неоптимальна.
[08:01:22] <valexey> в погоне за компонентностью можно легко нагородить кучу неоптимального мусора. фреймворки - зло
[08:01:35] <jordan36957> У меня видеокарта low end класса, не ужели она слабее, то что в смартфоне?
[08:02:20] <valexey> я не знаю что такое low end класс, но интеловского встроенного в проц. видео должно полностью хватать на то что я описал.
[08:02:21] <jordan36957> Хотя после 8-ми ядерного смартфона, это уже становитя реальностью.
[08:02:27] <valexey> причем у ноутбука
[08:04:04] <jordan36957> low end очень дешёвая, грубо говоря сделана как затычка слота pci-e, фильмы смотреть с ускорением hd, косынку ускорить чтоб нелагала и т.д :-)
[08:04:07] <valexey> под смартфоном я имел ввиду старенький iPhone 4, с его одноядерным процессором и 512 Мб ОЗУ.
[08:04:16] <jordan36957> sdl можно назвать фреймворком?
[08:04:26] <valexey> нет, sdl это скорее либа.
[08:06:07] <valexey> У меня была задача - рисовать в реалтайме график (2Д график конечно). Я добился того, что он рисовался 60 fps. И при этом проц был загружен на 15 процентов (при том, что там эти данные ещё и обрабатывались).
[08:06:20] <valexey> Ибо всё что ниже 60 кадров в секунду - тормоза.
[08:06:24] <jordan36957> Так opengl же?
[08:07:08] <valexey> Да, через него. Обычное 2D рисование - дикий тормоз.
[08:07:13] <jordan36957> Так в том и дело, что скрол и проц грузит и видеокарту, причём сильно.
[08:07:36] <jordan36957> Сейчас 2D рисуется через 3D
[08:10:29] <valexey> Ну, что-то где-то через жопу :-) У лазаруса же компонента на компоненте и компонентной погоняет. Там несколько слоёв высокоуровневых абстракций графики. Со всеми вытекающими. Лазарус реализует поверх целевых фреймворков (Qt/wxWidgets/gtk и так далее) свою библиотеку виджетов, абстрагирующую от них. А, соответственно Qt/wx/gtk реализуют своё поверх системного X11/Win32/Cocoa. А системное работает над фреймбуфером видеокарты (ну и 3D примитивами).
[08:10:36] <valexey> Вот такая вот стопочка :-)
[08:11:34] <valexey> Соответственно пишущий на лазарусе, и купившийся на простоту и переносимость, в результате понятия не имеет как оно там внизу работает, и как сделать так, что бы работало быстро.
[08:14:01] <jordan36957> Ок. Спасибо за объяснение.
[08:15:24] <valexey> Ну и еще частая ошибка - вместо того, чтобы нарисовать сразу всё в буфер и потом за один вызов системной функции вывести это все на экран, начинают рисовать поэлементно, для каждого примитива дергая оную функцию.
[08:16:07] <valexey> Похоже именно из за этого такие дикие тормоза в школьной сборке ББ от info21 при использовании их модуля графики аля-турбопаскаль.
[08:19:10] <jordan36957> Понял. Я так свой недо gui ускорил, но если элементов мало, я отрисовывал только определенную часть экрана, а если много то весь экран. Но так как там софтвар рендер. Проц кстати не выходил за границу 800 mhz, пониженное энергопотребление.
[08:20:40] <valexey> не, вопрос не про часть экрана, или весь экран. вопрос про примитивы рисования. типо нарисовали одну линию - обновили окошко (линия появился), рисуем вторую линию - опять обновили. потом текст.. и так далее
[08:21:34] <jordan36957> Да так тормознее.
[08:22:06] <valexey> именно так в том модуле и рисуют :-)
[08:23:54] <jordan36957> Это легко исправить, ввести процедуру win update, + переделать логику старых функций, но оставить совместимость.
[08:25:16] <valexey> ну, там фишка в том, что им хотелось оставить всё как в турбопаскале. чтобы достаточно было сказать drawLine(x1,y1,x2,y2) и линия бы нарисовалась
[08:25:46] <jordan36957> Типа накодил 5 страниц lineto, потом вызвал обновление экрана и всё летает, можно даже opengl прикрутить. И совместимость останется.
[08:25:54] <valexey> Иначе, если делать правильно, придется писать такое: beginPaint(); drawLine(x1,y1,x2,y2); endPaint();
[08:26:49] <jordan36957> Как раз в духе турбо паскаля.
[08:27:20] <jordan36957> А если пойти дальше запилить свои поверхности как в sdl и т.д
[08:27:22] <valexey> сколь я помню, там это не нужно было. можно было сразу lineTo и всё
[08:27:36] <valexey> короче, там же для школьников. какие нафиг поверхности? :-)
[08:27:49] <valexey> проще надо.
[08:28:11] <valexey> кстати, на счет рисования, и чтобы просто. щща штуку посоветую
[08:28:43] <valexey> http://www.processing.org/
[08:29:12] <valexey> вот с них, пожалуй, нужно было брать пример.
[08:29:33] <valexey> (если что - оно базируется на java)
[08:30:13] <valexey> А вот и порт под браузер (js): http://processingjs.org/
[08:30:19] <jordan36957> Мне нравится.
[08:30:33] <jordan36957> Закину в закладки.
[08:30:54] <jordan36957> Но это явно сложнее graph паскаля :-)
[08:31:54] <valexey> не, не сложнее. но фичастей
[08:33:13] <valexey> void setup() {
 size(200, 200);
 background(100);
 stroke(255);
 ellipse(50, 50, 25, 25);
 println("hello web!");
}
[08:33:19] <valexey> простейшее
[08:34:20] <jordan36957> Ага. я примеры смотрю, вот понравилось, и код простой
[08:34:52] <jordan36957> http://www.processing.org/examples/mouse2d.html
[08:36:13] <jordan36957> Если в ББ, даже подсветки нет, что уж говорить об этом, зато просто. :-)
[08:36:47] <valexey> Причем, заметь, оно работает в браузере. Без всяких плагинов.
[08:37:31] <valexey> и работает быстро
[08:37:37] <jordan36957> Пример выше грузит мой проц на 100. При простое, похожу он слишком часто мышь опрашивает.
[08:38:20] <valexey> у тебя браузер какой?
[08:38:38] <valexey> у меня при простое оно вообще проц не грузит
[08:38:53] <valexey> (а мышку оно опрашивать просто физически не может - там событийная модель)
[08:39:02] <jordan36957> пример запускал в хроме, включил аппаратное ускорение страниц, но всё так же.
[08:39:21] <jordan36957> Сейчас в файр фоксе гляну.
[08:39:41] <valexey> у меня в хроме - максисус 16 процентов. при активном мышевозении
[08:40:17] <valexey> в ФФ аналогично
[08:41:22] <jordan36957> Отлично при простое 0, если водить мышью 50-70. Всё ок.
[08:41:42] <jordan36957> Сейчас посмотрю как грузит gpu/
[08:42:50] <jordan36957> Понял в фф у меня софт рендер.
[22:02:21] <Kemet> не, обощенные тензоры могут быть как параметр или базовый тип
[22:02:31] <Kemet> и обобщенные мат массивы
[22:03:55] <Kemet> чтобы с ними работать потом нужно узнать тип элемента, насколько я вижу в реализации самих массивов, оно там на низком уровне декриптор типа юзает
[22:17:28] <valexey> vlad2: http://forum.oberoncore.ru/viewtopic.php?f=57&t=4393#p80977
[22:52:00] <valexey> дас. info21 жжот. "очевидно, что развивать кумир, сделанный на Ц++, несравненно труднее, чем ББ на Обероне/КП."
[22:52:28] <jordan36957> Я уже ответил.
[22:52:31] <valexey> а вот нифига не очевидно. если ты знаешь С++, то на нем подобную штуку писать много проще чем на Обероне. Просто потому, что С++ выше уровнем.
[22:54:41] <jordan36957> Если бы было легко, давно бы запилили ББ на все возможные платформы. А так просто трёп.
[22:56:26] <valexey> Да и школьная сборка была бы не столь позорна. В плане той же графики например.
[22:56:58] <valexey> Нет, дети они всё стерпят. Там можно и так конечно учить. Но... Зачем?
[22:57:12] <jordan36957> Как в Булгакове, программиста на ББ испортил идеологический вопрос. :-)
[22:57:53] <jordan36957> В этом случает получается всё худшее детям. Решения 20-ти летней давности.
[22:58:24] <valexey> Для 1996-1998 года ББ был вполне на уровне. Держал две платформы, да и вообще много чего умел. Кроме того, он развивался таки коммерческой конторой.
[22:59:13] <valexey> А сейчас.. А сейчас это  почти что спектрум или там амига. То есть прикольно, олдскульно, просто и идеалогично. Только вот уже не практично.
[23:00:07] <valexey> Коммерческая контора забила на развитие, сообщество не организовалось, мейнстрима разработки не вышло. Ну и всё, приплыли.
[23:01:20] <jordan36957> Даже сейчас под амигу пишут и развивают фанаты. И спектрум так же.
[23:01:46] <valexey> угу.
[23:01:55] <valexey> более того, амигу и коммерсы развивают
[23:02:09] <valexey> правда стоит то железо... как и любой эксклюзив заоблачно. но производят.
[23:02:20] <valexey> ностальгия ибо.
[23:02:26] <valexey> но практичности в этом примерно нуль.
[23:02:39] <jordan36957> Алексей ты своим постом разрушил идилию, сидел народ возле костра, каштаны жарил, тут пришёл миссионер, и начал говорить что можно питаться не только каштанами. Получается так. :-)
[23:02:56] <valexey> :-)
[23:03:28] <valexey> ну, этта.. иногда же надо рассказывать про большой мир :-)
[23:04:29] <jordan36957> Конечно. Правда мисионеров первое время не любили. :-)  То скушают, то камнями закидают, в общем крепись. :-)
[23:04:39] <valexey> насколько я понимаю, Иван постарался представить неприятие Оберона как психическое отклонение :-)
[23:04:59] <valexey> ну, точнее не нормальное состояние организма.
[23:05:04] <valexey> неврозы, все дела.
[23:05:13] <jordan36957> Читал.
[23:05:14] <valexey> у кого нет неврозов - те типо тремя руками за оберон :-)
[23:05:54] <jordan36957> Может для трехруких оберон и написан, но их так мало, что ББ не кому развивать.
[23:06:18] <jordan36957> Представляю рекламу.
[23:06:48] <valexey> пред глазами предстает эдакий образ мейнстримщика - перекошенное лицо, в руках книжка по новой технологии от MS. дергается глаз. От слова "Оберон" начинает нервно трясти ногой и закуривает.
[23:07:04] <jordan36957> Сидит мужик весь в печали и рассказывает, когда я писал не на обероне мне было плохо, от меня ушла жена, меня не любили дети и т.д :-)
[23:24:40] <valexey> jordan36957: судя по тому что они там пишут, питаются они походу не каштанами :-)
[23:28:20] <jordan36957> Из вики об обероне о спутнике
[23:28:31] <jordan36957> оверхность Оберона довольно тёмная и демонстрирует сильный оппозиционный эффект
[23:29:36] <jordan36957> оппозиционный эффект :-)
[23:30:35] <valexey> :-D
[23:36:43] <jordan36957> Ого модула 3 переносима на множнство платформ. Интересно это комерческий проэкт или фаны.
[23:37:25] <valexey> изначально коммерческий
[23:37:28] <valexey> сейчас и то и это
[23:37:59] <valexey> то есть есть некоторые проекты которые до сих пор модулу-3 используют, им оказывают вроде бы поддержку коммерческую
[23:38:16] <valexey> развитие же - в основном фаны (которые ранее имели или и сейчас имеют проекты на модуле-3)
[23:38:23] <valexey> модула-3 это ж ДЕК
[23:44:06] <jordan36957> В принципе, особой необходимости в ББ нет? То есть можно писать на компонентном паскале, где угодно в любой среде где можно самому настроить подсветку, типа нотепад++. Что первично и вторично, для программирования обязателен компилятор, а среда дело дестое? Как мне кажется было бы здорова если бы они развивали эталонный компилятор, типа модула 3. Это просто мнение.
[23:46:23] <valexey> ну, если взять просто компилятор от ББ, то это будет уже не столь интересно. То есть сам по себе ББшный компилятор не ах как интересен. В качестве отдельного компилятора много интересней GPCP по многим причинам.
[23:47:01] <valexey> ББ это ж не IDE, это по сути "операционка" - среда где это всё работает. Больше чем фреймворк.
[23:51:08] <valexey> Модула-3 интересна тем, что это похоже предел размера и сложности языка, который её может тащить самостоятельно программерская контора человек в 60, которая не специализируется исключительно на компиляторах и языках (то есть профильно занимается чем-то более прикладным).
[23:51:36] <valexey> При этом на Модуле-3 уже приятно и удобно писать.
[23:52:23] <jordan36957> Молодцы! Не забивают голову идеологией, просто пишут то что нужно.
[23:53:04] <valexey> угу