При работе с текстом часто возникает потребность корректно расставить переносы. Задача на первый взгляд не такая уж очевидная, нужно учитывать особенности каждого языка, чтобы решить, в каком месте разорвать слово. Как правильно формализовать такие требования, и как потом применить их в алгоритме? Одно из самых распространенных на сей день решений предложил Франклин Марк Лян, студент известного профессора Дональда Кнута. Алгоритм так и называется – «Алгоритм Ляна-Кнута», он применяется в издательской системе TeX, автор которой опять же Д. Кнут.
Алгоритм основан на сравнении исходного слова с набором правил (шаблонов). Чем большеЧитать полностью »
Рубрика «c++» - 266
Алгоритмы / [Из песочницы] Алгоритм Ляна-Кнута для расстановки мягких переносов
2012-02-13 в 9:38, admin, рубрики: c plus plus, c++, алгоритм, кнут, метки: c plus plus, c++, алгоритм, кнутOpen source / Вышел LeechCraft 0.5
2012-02-12 в 15:01, admin, рубрики: c++, jabber, open source, qt, xmpp, метки: c++, jabber, open source, Qt, xmpp Привет!
Пару дней назад вышла новая версия интернет-комбайнаклиента LeechCraft — 0.5.0. На Хабре несколько лет назад уже пролетала новость об этой программе, а теперь пришло время рассказать о ней снова, ибо с тех пор изменилось действительно много чего.
Если вкратце, LeechCraft — модульное кроссплатформенное приложение «обо всем» на C++ и Qt, сочетающее в себе браузер, RSS-читалку, торрент-клиент, а теперь еще и IM. Модульность приложения означает не просто поддержку этих самих модулей, а то, что, во-первых, каждая функция, от самых крупных (браузер, читалка, ядро IM) до самых мелких (блокировка рекламы, поддержка стилей в IM, антиспам)Читать полностью »
C++ / [Из песочницы] DynLib: библиотека для создания и работы с DLL
2012-02-10 в 15:07, admin, рубрики: c plus plus, c++, dll, метки: c plus plus, c++, dll
Библиотека DynLib предоставляет удобные средства для разработчиков, использующих межмодульное взаимодействие (EXEDLL, DLLDLL) в своих проектах, и значительно сокращает время и количество кода.
DynLib была написана для внутреннего использования одним из наших сотрудников SergX и стала неотъемлемым инструментом разработки. Под катом делимся результатами.
Недостатки традиционного подхода к реализации DLL
К основным недостаткам традиционного подхода (реализации) можно отнести:отсутствие возможности использовать пространства имен
большое количество служебного кода, необходимого:при реализацииЧитать полностью »
Haskell / Два слова о скорости
2012-02-09 в 0:44, admin, рубрики: benchmark, c plus plus, c++, haskell, perl, php, python, метки: benchmark, c plus plus, c++, haskell, perl, PHP, python Для любой задачи можно придумать тест, который даст необходимый результат. ©
Но в этот раз никаких специальных задач не было, а просто захотелось узнать насколько быстр GHC и вот что получилось.
Дано: массив 16k целых чисел
Тест: 1000 раз quicksort
C (own) 0m2.528s x 1.00
C (qsort) 0m3.282s x 1.30
C++ (std) 0m3.250s x 1.28
Haskell 0m3.867s x 1.53
PHP 1m18.73s x 30
Python 1m38.55s x 38
Perl 2m53.69s x 67
В последних трех тестах не стояла цель получить лучшие результаты, они оставлены для общего маштаба.Исходники: as is, без специальной тест системы, использовался time (man 1 time)Железо: MacBook Pro Mid 2010 / 2.4 GHz Intel Core i5Версии:
gcc version 4.2.1 (Based on Apple Inc. build 5658) (LLVM build 2336.1.00)
Читать полностью »
Блог компании Microsoft / Windows 8 Camp — 2 марта в Москве и онлайн
2012-02-06 в 6:09, admin, рубрики: c++, camp, html5, javascript, microsoft, Windows 8, windows 8 camp, метки: c++, camp, HTML5, JavaScript, Microsoft, Windows 8, windows 8 camp
Мы проводим первое в России мероприятие по новой операционной системе Windows 8 – 2 марта пройдет Windows 8 Camp!
Мы расскажем и покажем, как создавать приложения на HTML5/JavaScript, C# и C++ и как соблюдать принципы Metro-дизайна.
Мероприятие бесплатное, регистрация уже идет, места уже начинают заканчиваться. Для всех желающих будет организована онлайн-трансляция.
Как вы знаете, на данный момент Windows 8 находится в статусе Developer Preview – как и наш сайт. В конце февраля выйдет бета-версия Windows 8, после чего у нас будет более подробное расписание докладов.
Не пропустите начало нового этапа в развитии Windows!
Привет! Представляю вашему вниманию перевод статьи "The dark side of ergonomics".
Дисклеймер: Тема, о которой я собираюсь рассказать, несколько спорна и потенциально непопулярна. Я не собираюсь троллить, провоцировать холивар или задевать чьи-либо чувства. Не давайте моему несогласию с чем-то препятствовать вам. Если бы вы и люди вроде вас не проделали столько отличной работы над Rust, я бы не стал о чем-либо спорить. Моё намерение в том, чтобы поделиться иной точкой зрения и начать разумную дискуссию, а не войну. Поэтому, я попрошу кое о чём. Не соглашайтесь с тем, что я пишу, если хотите, но попробуйте обдумать это. И если у вас возникнет желание прокомментировать, сделайте это, но, может быть, дайте себе полчаса на то, чтобы эмоции остыли. У меня тоже есть эти чувства, и обещаю, что постараюсь сделать то же самое (я перечитываю эту статью уже несколько часов).
Разработка под Symbian: SDK
1970-01-01 в 0:00, admin, рубрики: c++, open source, метки: c++, SDK, symbianРечь пойдет о платформе Series 60, позже переименованной в S^1.
Это обзорная статья, если немного сумбурная — извините. Только-только исправил все ошибки в postinker elf2e32, её описание и ссылка на гитхаб — в конце статьи :)
Читать полностью »