понедельник, 27 июня 2011 г.

Лисп в промышленной разработке #2

Наша лисповая инфраструктура потихоньку развивается, обзаводится всё большим количеством eDSL, DSL и полноценных компиляторов.

Например, сейчас из одного лиспового описания собирается управляющая логика, веб-интерфейс и т.н. топ-левел для vhdl-ядер - своего рода интерфейс, управляющий отображением регистров в адресное пространство embedded-процессора. Идея генерации топ-левела из dsl'ного описания ядер для софтовой логики пришла спонтанно, и её реализация почти ничего не стоила.

Из более крутых вещей: у нас теперь есть универсальный DSL для описания бинарных форматов, который генерирует программу для нашего же компилятора из s-expression в vhdl, который делает параллельно работающий код (если vhdl-описание можно так назвать), автоматически делая всё необходимое для этого самого параллелизма. Например, написали (описали) NASDAQ'овский декодер, работающий в нашей существующей инфраструктуре на полных 10 гбит/с без задержек и буферизаций, т.е. с низкой и детерминированной латентностью. На лиспе получилось 370 строк (с закомментированными блоками, тестами и общими макросами, которые потом будут вынесены в другое место), на vhdl вышло почти 4900 строк или 250 кб. В терминах graphviz'а декодер получился почти на 6 тысяч узлов, построить его граф на втором Core i7 за сутки не удалось :)

Я в вопросах параллельной обработки в vhdl слабо разбираюсь, но не все наши клиенты, что-то сами делавшие на FPGA, сразу поверили, что такое возможно написать ;) А секрет лишь в том, что для сложных задач нужен соответствующий уровень абстракций. Предыдущую одногигабитную версию писали сами наши железячники на vhdl, и за полтора года толком работающего решения не смогли сделать. И они отнюдь не плохие разработчики.

Ещё компилятор подзволяет прогнать через программу тестовый вектор на логическом уровне. Раньше железячники отлаживались в vhdl-симуляторе на сигнальном уровне, что не особо способствовало быстрой и лёгкой отладке  логики. Голый vhdl вообще быстрому темпу разработки не способствует: на весьма мощном железе "прошивка" для современного FPGA собирается часа два с половиной.

Кстати, в синтаксисе компилятора есть нормальные макросы! ;) Поэтому степень накручивания абстракций практически неограничена.

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

Надеюсь, что когда поседею и начну носить очки, то буду таким же умным.

вторник, 14 июня 2011 г.

Автомобилист

Вчера поздно вечером жена вела машину домой :)

Под крики мужа, горстями хавающего валидол :) Муж прям в самом начале очень сильно огорчился, когда жена в темноте с парковки выкатилась на середину дороги в двойном слепом повороте, откуда её ни с какой стороны видно не было, и где обычно все гоняют. Жена при выезде с парковки хотела включить поворотник, начала его искать, не глядя на дорогу, и не нажала на тормоз.

Ну, ничё, бывает. В остальном вела для первого раза хорошо. Разве что, как все чайники, по началу даже по прямой дёргала руль, как-будто за жизнь шхуны в шторм боролась, плюс на педаль газа отказывалась нажимать.

На экспрессивную, но справедливую критику обиделась. Сидела, весь вечер выбирала себе машину. Несмотря на то, что с нашей теперяшней Вольво в своё время мозг основательно прополоскала (Вольво-говно-надо-было-глобальную-и-надёжную-Хонду-Цивик-покупать), на моё одобрение кинула 5 понравившихся ей машин, из которых только одна была не Вольво =) Мол, всё кругом какой-то шлак голимый, только Вольво в приличном состоянии. И солидно выглядят, даже старенькие :)

Я факту начала самостоятельного вождения машины женой по автомобильным дорогам общего пользования весьма рад, т.к. на выходных у нас контора мутит барбекю, где я, наконец-то, смогу спокойно накатить пива и легально доехать на машине домой :)

понедельник, 13 июня 2011 г.

Инопланетянское

Тут подумалось... Что сценарий столкновения землян с более развитой инопланетной расой на Земле уже происходил.

Во время WW2 американцы и японцы занимали жилые острова в Тихом океане под свои базы. На некоторых жили совсем примитивные человеки, которые молились духам умерших предков, затачивали стрелы острыми камнями, передавали заветы из поколения в поколение устным способом и отстали от современного мира чуть ли не на 10 тысяч лет. А тут на больших невиданных рыбах и птицах из странного материала появились странные человеки (две руки, две ноги, голова, но какие-то не такие, как у должно быть), развернули непонятные ништяки. Потом были ужасные громы и молнии, много пришельцев и своих любопытных полегло, а потом они исчезли.

Остались только непонятные каменные сооружения, скелеты мёртвых инопланетных животных и общее чувство: "Что это вообще, нафиг, было?". Культы даже зародились типа "карго". Вобщем, контакт оказал самое глубокое влияние на всё общество и культуру. А для пришельцев это был просто второстепенный фланговый манёвр с пограничными столкновениями.

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

среда, 8 июня 2011 г.

New toy

Жена купила себе новую игрушечку: Nikon D90 + какая-то оптика от Tamron. Моментально нашла себе фотомодель.
Девайс ничё так. Прогресс веса агрегата и какчества картинки по сравнению с предыдущей полумыльницей (Konica Minolta Z20) весьма заметны. Перед пацанами не стыдно.

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

воскресенье, 5 июня 2011 г.

Highland

Нет, ну у людей ума совсем нет! Ехать 400 км, платить достаточно немалые деньги, видеть разбитых, хромоногих, с висящей сломанной рукой, а то и вообще эвакуируемых джипом людей, и всё равно подвергать своё здоровье нехилой опасности! И ещё бумажку подписываешь, что, мол, если тут умрёшь, то судиться не имеешь права.

Но мы рискнули. Приехали, оформились, обулись в броню (кроме жены, которая кросс-кантри гонщик, и двухподвесы с бронёй презирает), поднялись на подъёмнике на 200 м вверх, и скатились вниз по бешенной трассе. И так 5 раз. Степень наполнения велоштанов страхом можно оценить по данной карте. На ней можно выбрать трейл и посмотреть мультик.

Но жена на хардтейле и без защиты не вписалась в поворот, сделала оверруль, больно присоснилась и вдобавок получила велосипедом по хребту. От такого обращения её кочепатки моментально расцвели синими цветами. Жена сказала: "Нафиг надо!", и пошла кататься по окрестностям, а потом вскимарнула в машине и давай устраивать всем подряд фотосессии.

Я тоже на втором круге лоханулся, не вписался в тропинку, сорвался передним колесом за трейл, попал в траве в яму или на камень, и полетел. Весь полёт мучала мысль: как оно, в новой-то защите падать будет? Без защиты обычно больно голенью бьёшься о верхнюю трубу рамы, сдираешь колено и локоть, ушибаешь кисть. В защите ничё так, прикрытые бронёй части тела не шибко пострадали. На ляжки вот броню зажался чё-то покупать, и сильно об этом пожалел. Ну а так ничё, от болевого шока отошёл (сам удар об поверхность моей 85 кг туши + экипировка даже в защите как-то болезнено переносится), байку погнул ручку тормоза, передний диск и задний переключатель. Но вниз он ещё кататься мог, поэтому ещё три кружка сделал.

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

Ну и дропы делать страшно, аж в одном месте свербит =) Я потом специально на тренировочной площадке с детского трамплина учился дропы делать. В принципе, если страх побороть, то ничё так, интересно прыгать.

Касаемо детей: на трейлах были подростки лет 12-13. Один даже на хардтейле с вибрейками. И жена видела девочку лет 10... А просто девочек 16-40+ лет там чуть ли не половина ото всех райдеров было! Жене особенно понравилось стадо амазонок на боевых розовых двухподвесах, вылетевших откуда-то с горы, из леса. Вообще, такое ощущение, что если более-менее здоровый человек в Новой Англии по какому-либо спорту не убивается, то он - чмошный лох.

В общем, нам жутко понравилось, но как литры адреналина рассосались, то сами поверить не могли, что сунулись в такое смертоубийство.

У мну под конец трейла отвались кисти держать байк (двумя Хайесами Строкерами и 180 мм дисками!), и мышцы на ногах чуть не лопались держать равновесие. Ну и байк не сурьозный для таких тропинок, низковат передком как-то.