[10:34:29] <geniepro> The Haskell School of Music — From Signals to Symphonies —
http://plucky.cs.yale.edu/cs431/HSoM/HSoM-v1.9.pdf
[11:31:39] <geniepro> Игги Поп -- самый страшный рокер в мире: http://www.starslife.ru/2011/06/15/iggi-pop-v-obraze-lady-dior/
[14:05:52] <geniepro> xxx: Кто-то из великих автостопщиков говорил, что если не ладится контакт с водителем и кабину наполняет гнетущая тишина, следует посмотреть в окно и произнести волшебную фразу: «Довели, блядь, страну...» После этого даже самый угрюмый водитель оживляется и следующие два часа вы проведете в живой беседе, где вам даже не обязательно отвечать.
yyy: Это в любой стране, я так разговорный венгерский изучаю иногда
[14:24:04] <geniepro> ping
[14:24:06] <Жаба> geniepro, Pong from you: 0.614665 s
[14:31:11] <valexey> какой же инструментарий для разработки под микроконтроллеры кривой… это что-то.
[14:31:32] <valexey> по сравнению с этим не только XCode, но и даже вижуал студия кажется венцом творения.
[14:33:58] <geniepro> #include <stdio.h>
int * foo(void)
{
int a = 5;
return &a;
}
void main(void)
{
int* p = foo();
printf("%d\n", *p);
*p = 8;
printf("%d\n", *p);
}
--------
5
8
о_О доступ к локальным переменным другой функции!!!!
[14:34:35] <geniepro> AVR Studio вполне сменяема, хотя и не дотягивает до вижуал студии
[14:36:29] <geniepro> http://stackoverflow.com/questions/6441218/local-variables-memory-can-be-accessed-outside-its-scope/6445794#6445794
[14:49:57] <valexey> совершенно не вменяема. один дебагер чего стоит.
[14:51:46] <geniepro> дебаггер нинужен!
[14:53:32] <valexey> без дебагера в микроконтроллерах вообще делать нечего.
[14:53:40] <valexey> geniepro: а чем тебя этот пример удивил?
[14:54:47] <valexey> модифицируй код так:
[14:54:50] <valexey> #include <stdio.h>
int * foo(void)
{
int a = 5;
return &a;
}
int main(void)
{
int* p = foo();
printf("%d\n", *p);
printf("%d\n", *p);
return 0;
}
[14:54:53] <valexey> и посмотри на результат.
[14:54:57] <valexey> никакой магии.
[14:55:03] <geniepro> никрасивый код просто
[14:55:27] <valexey> код обычный. но севершенно непонятно зачем он нужен, ведь он не гарантирует результат.
[14:55:40] <valexey> вообще говоря, тут UB типичное.
[14:55:56] <geniepro> скока я под микроконтроллеры проги делал -- ниразу дебаггером не пользовался. просто потому что его у мя не было
[14:56:24] <valexey> значит твои микроконтроллеры относительно наших были макроконтроллерами :-)
[14:56:39] <valexey> и не приходилось настолько упихивать код.
[14:56:45] <valexey> и настолько работать с железом.
[14:57:35] <geniepro> valexey> код обычный. но севершенно непонятно зачем он нужен, ведь он не гарантирует результат.
valexey> вообще говоря, тут UB типичное.
по идее здесь должна была бы возникнуть ошибка доступа к памяти...
[14:57:57] <valexey> она тут может возникнуть, а может не возникнуть
[14:58:01] <valexey> ты мой пример запустил?
[14:58:17] <geniepro> мне вполне достаточно было отладочной печати на индикатор и сигналов осциллографа
[14:58:26] <valexey> ошибка доступа к памяти возникнет только если ты полезешь на страницу памяти тебе не принадлежащую.
[14:58:37] <geniepro> запустил -- какое-то левое число во второй раз распечаталось
[14:58:44] <valexey> именно :-)
[14:59:02] <geniepro> почему -- непонятно -- никто же память не менял
[14:59:04] <valexey> мы просто запоминаем адрес одной из ячеек стека. все
[14:59:08] <valexey> менял
[14:59:17] <valexey> вызов printf'a менял :-)
[14:59:19] <geniepro> кто?
[14:59:31] <valexey> вызов функции всегда меняет стек.
[14:59:37] <geniepro> он ложится своим стеком на ту же область памяти?
[14:59:49] <valexey> дык тут же один и тот же стек
[15:00:02] <geniepro> а вдрук мультистек )))
[15:00:13] <valexey> а смысл?
[15:00:31] <geniepro> ну мало ли...
[15:00:45] <valexey> мультистек может иметь смысл в функци-анальщине
[15:00:52] <valexey> при независимых вычислениях
[15:01:03] <valexey> тогда на каждую ветку свой стек и вперед.
[15:01:08] <valexey> параллельно :-)
[15:01:30] <valexey> впрочем, не только в функци-анальщине, но вообще всегда когда у нас отдельные потоки.
[15:01:35] <valexey> один поток - один стек.
[15:05:14] <valexey> "Как заработать с помощью социальных сетей: заходим в настройки, удаляем аккаунт и начинаем работать, блять."
[15:13:15] <valexey> А ВОТ В ОБЕРОНЕ ТАК БЫ НЕ БЫЛО!!11
[15:13:31] <valexey> точнее было бы, но пришлось бы возвращать INTEGER
[15:15:56] <geniepro> а потом его кастовать как поинтер ))
[15:16:47] <valexey> угу
[15:17:38] <geniepro> влад кажись опять миранду обновил )
[15:18:02] <valexey> :-)
[15:18:44] <valexey> "потому, что возможно ситуация когда начальник помер, а процесс завис." © erlang@c.j.r
[15:30:47] <valexey> я вот не понимаю, зачем обновлять что-то что и так работает нормально?
[15:32:30] <geniepro> ну что бы поиметь новых проблем на свою попу
[15:32:57] <geniepro> чем дальше я оперу обновляю -- тем она хуже и хуже ((
[15:35:06] <valexey> но винда то лучше и лучше? :-)
[15:36:44] <geniepro> нинаю, я тока в хр работаю уже несколько лет. как прошли времена 98 венды, так на хр всё. хр лучше, чем 98
[15:37:20] <geniepro> 10 лет венде хр, а по юзабилити линупсы и юнипсы до сих пор догнать её не могут
[15:38:06] <geniepro> лет через пять может и перейду на семёрку, хз
[15:39:17] <valexey> а им и не надо. в том деле для которого юнипсы точились и точатся, винда им не конкурент по юзабилити в принципе.
[15:39:46] <valexey> впрочем, и как десктоп юнипс удобней винды. Вот взять, скажем, MacOS X - юникс сертифицированный. Удобней винды.
[15:39:48] <geniepro> ну, теми делами я пока не занимаюсь
[15:40:05] <geniepro> маки слишком дорогие
[16:25:29] <valexey> никто не мешает поставить мак на кошерный писюк
[16:25:32] <valexey> макос
[16:38:58] <geniepro> он там скорее всего плохо рабоать будет, ибо несовместимостей куча вылезет
[17:02:09] <valexey> genieprox: это не так
[17:02:12] <valexey> железо то одно и то же
[17:02:32] <valexey> то есть при правильно подобраном железе будет работать в точности так же как на маке.
[18:37:31] <genieprox> специально подбирать не всегда удастся. да и нафига, если венда всё равно практичнее?
[18:40:26] <genieprox> удобство системы определяется же не только удобством самих программ под неё, но и просто наличием этих программ
[18:43:06] <valexey> а какие проблемы с просто наличием программ под макосью?
[18:45:27] <genieprox> а там есть что ле бесплатный софт в таком же количестве, как под вендою?
[18:47:51] <valexey> ты примеры приведи
[18:48:04] <valexey> я пока за ПО под макосью не платил ни разу.
[18:48:21] <genieprox> аха, тоже ператство? )))
[18:50:07] <subjrs> оно там бесплатное по большей части
[18:50:23] <valexey> ты говори что тебе надо. кончай уже сферконей разводить
[18:53:25] <genieprox> ВСЁНАДО!!!
[18:53:29] <valexey> ?
[18:53:37] <genieprox> опера там хоть есть?
[18:53:44] <genieprox> винамп там есть?
[18:53:51] <genieprox> редакторы программ там есть?
[18:54:05] <genieprox> видеоплейеры и кодеки к ним есть?
[18:54:29] <genieprox> просмотрщики разных типов файлов (тотал коммандер короче) там есть?
[18:54:44] <genieprox> хацкель последней версии там есть?
[18:54:53] <genieprox> тайниси там есть?
[18:55:00] <valexey> опера есть
[18:55:08] <valexey> проигрыватели музыки есть
[18:55:12] <genieprox> шарпдевелоп там есть?
[18:55:15] <valexey> что такое редакторы программ?
[18:55:25] <valexey> тонкий си есть
[18:55:26] <genieprox> фар там пашет?
[18:55:30] <genieprox> а рар?
[18:55:31] <valexey> mc :-)
[18:55:38] <valexey> рар есть под все
[18:55:55] <valexey> с проигрыванием видео давно нет проблем в любой оси
[18:55:57] <genieprox> ping
[18:56:40] <Жаба> genieprox, Pong from you: 41.096243 s
[18:57:30] <genieprox> ну а тотал коммандер-то есть? просмотрщики всяких файлов баз данных и тд?
[18:59:03] <valexey> просмотрщиков всяких файлов полно
[18:59:14] <valexey> алсо стандартный preview очень кошерен
[18:59:55] <genieprox> ну а игры кроми мира варкрафта там есть?
[19:01:46] <valexey> старкрафт
[19:01:49] <valexey> например
[19:01:54] <valexey> игр на самом деле куча
[19:02:02] <valexey> а то, чего нет, прекрасно работает через кросовер
[19:02:11] <valexey> например мир танков у меня тут отлично идет
[19:06:46] <genieprox> за что дизер так невзлюбил петруху? о_О
[19:07:14] <valexey> совсем от сессии озверел :-)
[19:07:29] <valexey> потерял веру в человечество и молодежь :-)
[19:10:16] <valexey> О! Намечается линуксокапец: http://www.opennet.ru/opennews/art.shtml?num=31172
[19:12:03] <vlad2> Что такое hurd?
[19:13:00] <valexey> микровядро
[19:13:39] <valexey> + обвязка
[19:35:24] <vladfolts_Miranda> ребята в курле think different почти как в эппл.
[19:35:28] <vladfolts_Miranda> curl
[19:35:54] <valexey> а что curl? нормальный струмент
[19:35:58] <vladfolts_Miranda> Траффик считают в double
[19:36:06] <vladfolts_Miranda> Пипец.
[19:36:12] <valexey> ойблин
[19:36:24] <valexey> ну, в принципе чо? int'a ведь не хватит :-)
[19:36:32] <valexey> а libgmp ниасилили
[19:36:50] <vladfolts_Miranda> Мне это сразу не понравилось, когда я на днях прикручивал анализ траффика. Ну вот. Теперь эо, естественно, вышло боком.
[19:37:15] <vladfolts_Miranda> инт64, лонг лонг - никак нельзя было?
[19:37:33] <valexey> оно есть не везде
[19:37:43] <vladfolts_Miranda> А double везде?
[19:37:57] <valexey> угу. double в стандарте языка
[19:38:00] <valexey> а long long нет
[19:38:08] <vlad2> Мля. Ну структуру сделали бы.
[19:38:13] <valexey> тем более в языке нет int64
[19:38:27] <valexey> дык, я же говорю, они не знали про libgmp
[19:38:43] <valexey> либо не подошло по лицензии
[19:39:11] <vlad2> Блин. Просто не решили проблему (траффик не влазит в инт), а оттянули конец.
[19:39:26] <vlad2> Теперь мне надо будет хакать эту херню.
[19:39:57] <vlad2> Не надо никакой libgmp - Труктура с двумя интами + препроцессор. Делается на коленке.
[19:39:59] <shaggie> как же так
[19:40:02] <shaggie> в C99 long long есть по стандарту
[19:40:19] <valexey> shaggie: думаешь оно на C99 писано?
[19:40:45] <valexey> по моему, оно на суровом C89
[19:40:58] <valexey> vlad2: наивный код тормозить будет.
[19:41:30] <vlad2> Ничего не будет тормозить - несколько дефайнов и все.
[19:41:37] <shaggie> ну да. они ж сишный софт обновляют раз в полвека
[19:42:00] <shaggie> а потом memcpy отваливается на пересекающихся участках памяти
[19:42:00] <valexey> при чем тут дифайны? я про как бэ алгоритмику арифметики больших чисел
[19:42:06] <vlad2> В нормальных имплементациях будет #define traffic_counter long long
[19:42:15] <valexey> дык он вроде бы и должен отваливаться, не?
[19:42:37] <vlad2> Там нет больших чисел. 64 бита хватит всем.
[19:43:11] <shaggie> он не отваливался. просто не поощрялось, в документации были страшные слова, но всем как обычно
[19:43:21] <valexey> :-)
[19:43:44] <valexey> void *
memcpy(void *restrict s1, const void *restrict s2, size_t n);
[19:43:44] <shaggie> с год назад был эпический момент, когда из-за этого адобовский плеер сломался на Suse x64
[19:43:50] <valexey> по моему, рестрикт как бэ намекает…
[19:44:27] <vlad2> Все эти проблемы переносимости "на платформы где ничего нет" как всегда преувеличены.
[19:44:48] <vlad2> Ну нет там int64 - пусть будет обычный long.
[19:44:58] <valexey> дык curl же в первую очередь используется не на серверах да персоналках, а на всяких роутерах и прочей мелочи
[19:45:03] <vlad2> Когда кто-нибкудь на такой платформе впилится - пусть чинит.
[19:45:07] <valexey> где мипсы да армы, и прочее
[19:46:18] <vlad2> Проблема в том, что в таком виде (double) оно просто _не работает_ на размерах чуть больше int32!
[19:46:30] <vlad2> Траффик _не сичтается_.
[19:46:47] <valexey> при малых добавляемых порциях - скорее всего да
[19:47:37] <vlad2> Порции обычные такие для современных, но не очень быстрых нетворок. То, что я сейчас имею на руках как баг репорт.
[19:48:51] <vlad2> Ладно, пошел исправлять неправильный циклы...
[19:50:13] <valexey> vlad2: а может во внутренней структуре там таки не дабл?
[19:50:22] <vlad2> Не. Похоже считают они правильно. Но вот в колбэк заботливо "округляют". Спасибо.
[19:51:21] <valexey> Угу. Считается что тебе не нужно точную инфу :-)
[19:52:01] <genieprox> hurd -- хурдня. L4 куда перспективнее
[19:53:23] <vlad2> Да, осталось добраться до внутренней структуры... :) Ох хэкну... :-]
[19:54:44] <valexey> Та я думаю там не сложно. Всего то еще одну функцию написать и вытащить в интерфейс либы
[19:56:09] <vlad2> Не, это не спортивно. Надо хэкнуть так, чтобы не менять исходники либы :)
[19:59:44] <valexey> Хочешь своим длинным указателем до священного нутра либы добраться?
[20:01:36] <vlad2> Так. Культурно включить хидер не получилось...
[20:02:40] <valexey> "Работаю в школе учителем истории, всегда интересовался танками и прочей военной техникой, ну тут и подсел на WOT. А собственно реальная история вот:
Отсчет секунд перед боем. Один боянист спрашивает "у кого сейчас каникулы?"
В ответ гробовая тишина, типа нет ни одного школьника.
Я: "Ну у меня. Не поверишь, работаю учителем истории."
И тут чат взорвался:
111: "Истории? Ненавижу этот тупой предмет!"
222: "Мне трояк поставили за год! Учителя истории суки!"
333: "А меня историк в туалете с сигаретой поймал и к директору отвел!"
444: "Замочите гада кто-нибудь, иначе я за себя не ручаюсь!"
как вы поняли, этот бой для меня закончился очень быстро :("
[20:07:11] <genieprox> так вот что у вас там творится, в мире танков )))
да, мир варкрафта в этом плане гораздо менее реалистичен )))
[20:12:58] <valexey> /me неделю не играл в танки
[20:13:10] <valexey> надо завязывать с реальной жизнью :-)
[20:27:29] <valexey> Ксюнечка: Дорогие друзья! У кого есть какие-нибудь аттрибуты для пиратской вечеринки?))) Хелпппп!!!!
Игорь: мп3 диски, фильмы camrip, ломаный софт
[21:02:43] <genieprox> тпнпп.рф
[21:03:00] <genieprox> http://tp-npp.ru/