LINUX.ORG.RU

Избранные сообщения Pavval

Что будет с проектом QUCS? (симулятор электрических цепей)

Форум — Talks

Дамы и Господа.....

Давеча, при обсуждении релиза gEDA/gaf, мы вспомнили про проект для моделирования работы аналоговых и цифровых схем - QUCS, как и QCAD интерфейс в QUCS написан на Qt3 и хотя переносом на Qt4 занимался , некий индус.... он так ничего и не перенес.

Сам я на Qt программировать не умею, но мне очень бы хотелось помочь проекту, т.к. Qt3 выкидывают из репозитариев бинарных дистрибутивов.

Все возможности проекта вы можете посмотреть здесь . Только хочу отметить что у QUCS ниже порог вхождения (для новичков не знавших SPICE) и он уже обладает учебными материалами на русском языке.

Раз Два Три

Может кто нибудь в каком нибудь институте допилит эту программу на Qt4 , а то у нас любят в универах под инновационные программы в борладе програмки клепать.... а тут и польза будет. Другой вариант там fsf,kickstarter и прочее.

А может я просто слоупок и где-то тихо , тихо кто-то что-то клепает, а я не нашел.

 , ,

DR_SL
()

Автор C++ о диспетчеризации по типам и о #Haskell

Форум — Talks

Автор C++, Страуструп сотоварищи, пишет в соавторстве статью о новой библиотеке для диспетчеризации по типам с помощью внешней интроспекции. Написано на шаблонах C++11 и оформлено в виде библиотеки. Называется Mach7. Выглядит в итоге как-то так:

int eval (const Expr& e)
{
	Match(e)
		Case(const Value& x) return x.value;
		Case(const Plus& x) return eval (x. e1)+eval(x. e2);
		Case(const Minus& x) return eval(x. e1)−eval(x. e2);
		Case(const Times& x) return eval(x. e1)∗eval(x. e2);
		Case(const Divide& x) return eval(x. e1)/eval(x. e2);
	EndMatch
}
Ну ничё так.

Теперь о том, что заинтересовало меня. В статье есть периодические отсылки к функциональному программированию.

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

struct Expr { virtual int eval () = 0; };
struct Value : Expr { ⋯ int eval (); int value ; };
struct Plus : Expr { ⋯ Expr& e1; Expr& e2; };
но более открытый (читай: расширяемый) дизайн заключается в другом: По-настоящему открытые подходы опираются на дорогой тест на принадлежность к классу, комбинирующийся с деревьями решений.

Ну, то есть, хотим-то мы, наверное, как раз открытый подход, который подсмотрели из функционального программирования с его сопоставлением с образцом, но он слишком дорог с точки зрения CPU, если делать в лоб. Поэтому сделали Mach7, вот эту самую библиотеку на шаблонах, которая реализует открытый подход, но при этом не страдает по производительности, как если бы использовался тест на принадлежность к классу.

Насколько быстро теперь работает? Говорят, примерно как OCaml или Haskell: Библиотека реализована как стандартный C++11 код с шаблонным мета-программированием и несколькими макросами. Оно работает примерно также быстро, как эквиваленты на OCaml или Haskell, и даже иногда приближается по быстродействию или даже становится быстрее написанного руками C++ кода, который использует Visitor дизайн-паттерн.

Ну это хорошо, что так быстро, как OCaml или Haskell. Вопрос, зачем при таком раскладе использовать C++, замнём для ясности.

Но дальше вообще прелесть идёт: критика паттерна Visitor! Библиотека Mach7 и идеи в ней были мотивирована нашим неудовлетворительным опытом работы с различными C++-ными фронт-эндами и фреймворками для анализа программ. Проблема была не с самими фреймворками, но с фактом, что мы должны были использовать шаблон проектирования Visitor для того, чтобы смотреть, обходить и обогощать абстрактные синтаксические деревья целевых языков. Мы нашли Visitor-шаблоны неподходящими для прямого выражения логики приложения, удивительно сложными для обучения студентов, и часто более медленными, чем решения для обхода, написанные вручную. Вместо них, пользователи опирались на динамические приведения типов во многих местах, часто многоуровневые, таким образом предпочитая более короткий, более ясный, и более прямой код, нежели чем Visitor'ы. Соответствующий проигрыш в производительности был обычно незамечаем до более поздних стадий кодирования, когда уже было поздно что-то менять.

Ну можно поздравить C++, теперь можно на нём отдельные вещи писать почти так же коротко, ясно и почти так же быстро, как на OCaml.

Кроме функциональщины, в посте есть отсылка к лиспу, к Duff's device, и вообще, хорошая статья, надо студентам давать. C++ — это очень большой, огромный джип, и эта статья — неплохая иллюстрация.

Источник

 , , , ,

encyrtid
()

Запиливаю темную цветовую тему для кед

Галерея — Скриншоты

Захотелось сделать темное оформление, без использования абсолютно черного и абсолютно белого. Поиски чего-то, отвечающего моим желаниям успехов не принесли, но приглянулась цветовая схема «Dark Orange», т.к. оранжевый с темными тонами хорошо сочетается, взял ее за основу ( правда мало что от нее осталось ).

Результат мне понравился, будет приятно, если кому-то еще понравиться =)

Немного по-сабжу:
Debian testing
KDE 4.8.4
Icons: Caledonia
Fonts: Terminus, DejaVu
Plasma: Caledonia

Еще скрины: Адын! Два! Три!

Тема: Тема!

P.S. Пока еще оформление скайпа местами коряво выглядит.
P.S.S. Что бы не вырвать себе глаза переходами темной темы и белого браузера хорошо править css частых сайтов под свою цветовую тему =)

>>> Просмотр (1366x768, 639 Kb)

 

classic
()

Как отловить событие смены раскладки

Форум — Development

Нашел как ее менять(http://stackoverflow.com/questions/3230761/how-to-change-keyboard-layout-a-x1...), но не могу понять как определить, что пользователь инициировал смену раскладки. Какой event слушать?

 , , ,

deterok
()

Открываю исходники платформы разработки торговых алгоритмов

Форум — Talks

День добрый сообществу.

Я занимаюсь автоматизацией торговли и аналитикой финансового рынка (роботостроительство/алготрейдинг) и планирую открыть часть своего наработанного инструментария для совместной разработки и обмена опытом в технических вопросах. Больше всего меня интересует имеются ли подобные специалисты на ЛОРе, интересует ли кого-либо подобное сотрудничество.

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

Поэтому для себя я создал цепочку проектов для разработки, тестирования, оптимизации и использования торговых систем. В данный момент проект берет котировки у швейцарского банка и торговой площадки Dukascopy. Качество котировок изумительное у них, скажу я вам. Все честно, открыто и качественно. Далее эти котировки попадают в БД под управлением postgreSQL. Сразу нарезаются на всяческие TF, графики Renko, хранятся в чистом виде (тики), есть поддержка гибридных TF (например S441 = 441 second), а так же прочая экзотика. Те кто серьезно занимается роботостроительством поймут зачем все это. Так же, систему очень легко расширить добавив новые правила формирования данных, например таких как квантовые графики, скоростные графики и прочее.

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

Простейший пример торгового алгоритма - это класс, наследующий все необходимые базовые примочки у родителя пустого торгового алгоритма. Класс имеет инициализационный конструктор, а так же ряд методов аля newTick(double bid, double ask, long time), newBar(Bar previous), newEvent(Event e)... У торгового ядра есть легко расширяемый ряд примочек. Существующие примочки: легкое и гибкое извелечение всяческой информации о исторических ордерах (реальных с торгового сервера, демо-ордеров при тестировании, вирутальных ордеров), поддержка библиотеки тех. анализа TA-LIB, построители графиков, анализаторы отчетов (мат. ожидание, профит-фактор, дисперсия, среднеквадратическое отклонение, процентные соотношения, анализ доходности по теории Винса, Вильямса). Поддержка смешанных и скрещенных алгоритмов, возможность подключение бриджов для разнообразных брокеров, дубликаторов сигналов (для цепочки инвестиционных счетов), подключение систем к гибко-конфигурируемым генетическим алгоритмам с целью оптимизации, выполнение полного перебора и прочий инструментарий. Легкое использование трала или другого функционала (например, перевода в безубыток):

Position p = trader.buy(Instruments.EURUSD, ...);
p.addTrailingStop(Indicators.ParabolicSAR(0.001, ...), ...);

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

База: Java + TA-LIB + postgreSQL. Java была выбрана из-за специфики использования автоматизированных торговых систем на разнообразных ОС, а так же из-за интерфейса API торговой площадки Dukascopy.

Еще имеется ряд дополнительных инстурментариев для экзотического анализа и выполнения специфичеких операции: нейросеть распознавания образов, алгоритмы паттерн-матчинга, системы дублирования торговых операций, генераторы отчетов, генераторы детальной информации о точках входа, специфические тестеры точек, анализаторы фундаментальных событий на базе fuzzy logic, календари экономических событий и прикладной софт, анализаторы качества котировок, анализаторы волатильности, визуализаторы работы нейросети/ГА, утилиты для анализа и визуализации ценового стакана. Все не вспомню сейчас, но многое согласен открыть при условии совместного активного развития проектов.

Подготовку исходников и открытие проекта планирую на конец текущего года. Конечно, при условии позитивного резонанса сообщества.

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

ixrws winddos ZenitharChampion Root-msk ns_ramesses Made_in_China inline X10Dead qrck iBliss Kroz capricorn20 trex6

 , , ,

observer
()

OSDN Conference 2012

Новости — Конференции и встречи
Группа Конференции и встречи

29 сентября в Киеве состоится одиннадцатая Всеукраинская конференция разработчиков и пользователей свободного ПО, на которой все желающие смогут больше узнать о возможностях и перспективах такого программного обеспечения.

На конференцию приглашаются разработчики, пользователи, IT-менеджеры.

Тезисы докладов принимаются до 15 сентября.

Получить детальную информацию, зарегистрироваться или предложить свой доклад можно на сайте.

>>> Подробности

 osdn conference, ,

m31
()

квн

Форум — Talks

Дайте ссылку на видео вашего любимого выступления/команду КВН.

pi11
()

Дельный блог про загадочный Pulseadio

Форум — Talks
doluphio
()

Entangle 0.4.0 - программа для управления DSLR с компьютера.

Форум — Talks

Вышла свежая версия.

http://entangle-photo.org/

Если кто знает, работает ли с Pentax, сообщите.

doluphio
()

Aptitude превращает вашу систему в свалку

Форум — Talks

Сразу уточню, что топик носит исключительно информационный характер и предназначен для пользователей Aptitude в Debian.

Суть проблемы в двух словах: aptitude «забывает» статус автоматически установленных пакетов, что в конечном итоге приводит к накоплению внушительного количества ненужных пакетов (автоматически установленных зависимостей). Проблема отмечалась в разных версиях, и с 0.6.6, похоже, мы имеем очередной рецидив, причём теперь это не связано с конкретными действиями — статус автоматически установленных молча снимается чуть ли не у большинства зависимостей.

Ссылка на баг (основная): http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=432017
Больше увлекательного чтива: http://bugs.debian.org/cgi-bin/pkgreport.cgi?include=subject:auto;package=apt...

Лично я вынужден перейти на apt-get. Не в последнюю очередь потому, что время от времени ставлю для ознакомления эти ваши GNOME/KDE, и выгребать за ними хлам с deborphan в зубах довольно утомительно.

Само собой, приглашается Mystra_x64 :} И да, в Squeeze эта проблема тоже есть, но проявляется слабее. Желающие убедиться могут запустить deborphan без параметров.

 , ,

GotF
()

Firefox с KDE патчами для Ubuntu 12.04

Форум — Talks

Для 12.04 и 12.10 https://launchpad.net/~alexey-ivanov/ archive/firefox-kde Для 13.04 https://launchpad.net/~alexey-ivanov/ archive/firefox-kde2

Сперва нужно удалить firefox системный и поставить из репозитория + kmozillahelper + kpartsplugin

Чтобы повысить приоритет репозитория нужно создать файл

/etc/apt/preferences.d/launchpad-firefox-kde-pin-900

Содержимое:

Package: *
Pin: release o=LP-PPA-alexey-ivanov-firefox-kde
Pin-Priority: 900

В случае 13.04 «o=LP-PPA-alexey-ivanov-firefox-kde2» Без пробелов в начале каждой строки. Будет кошерно обновляться :)

 , ,

bhfq
()

Прошу тему KDE

Форум — Talks

...отсюда: Arch и KDE 4.7

bsdfun, если она еще осталась - скинь, пожалуйста. Понравилась, даже промелькнула мысль снова попробовать кеды. Имеется ввиду тема qtcurve.

 

ArtKun
()