Skip to main content

Posts

Showing posts from January, 2007

Подсветка

Кажись исправил Ну ка посмотрим... //классический hello world куда ж без него #include <iostream> using std::cout; using std::endl; int main(int argc,char**argv){ cout<<"Hello world"<<std::endl; }

Новый Firefox

Ура!!! Поставил себе новый Firefox - просто прелесть! А с foxmarks так просто одни удобства - нет больше тасканиям закладок с работы домой и обратно!!! Ура товарищи (море восторга)!!! О грустном: сменил темплейт надо перенастраивать подсветку кода :(

2b|~2b

Algorithms + C++=success or sucksass? Это так навеяно... Можно не обращать внимания (а никто собственно и не обращает :)

Education

Вот классно было бы, если бы одним из предметов на выбор в университете был предмет "эстетика кода" - я б его точно выбрал. Все больше замечаю, что чем больше пишу на С++ тем более высокие требования предъявляю к качеству и изящности кода. По моему тернарная условная операция - одна из наиболее элегантных конструкций языка ((a &lt b)?a:b)=1; Просто, банально, но тем не менее ...

Firefox

Как это я раньше жил без такого замечательного браузера? Диву даюсь. Накачал аддонов для чтения RSS, почты, синхронизации закладок и тихо радуюсь. Просто высший класс - все что надо в одной программе и ничего лишнего. Приятно удивил размер расширений - несколько сотен килобайт - зато какая функциональность! Время установки самого Firefox на машину тоже приятно порадовало - быстро и без лишнего шума. Может и IE начнут развивать, а то как Netscape загнулся так и он на месте застыл. Про его 7'ю версию не слишком лестные отзывы, к тому же вроде как он основан на движке IE4, т.е. изменения чисто косметические. Ну добавили вкладки, ну и что? Все, буду пользоваться Firefox.

Среда разработки

Среда разработки (Интегрированная среда кому как нравится) довольно полезная, приятная и во многих случаях облегчающая жизнь вещь. Сейчас на работе пользуюсь Kdevelop ( www.kdevelop.org ). На мой взгляд довольно продуманная и грамотно реализованная среда - в том плане что предоставляет интерфейс к уже хорошо зарекомендовавшим себя средствам (системы сборки (autotools, qmake, cmake, ant), контроля версий (cvs, svn, perforce) и т.п.). Programming Languages: Ada Bash C/C++ Fortran Haskell Java Pascal Perl PHP Python Ruby SQL Build tools: GNU Autotools, Qmake, Ant, custom makefiles, generic scripts. Documentation Formats: XML, HTML, doxygen, kdoc, DevHelp, kdeveloptoc, TXT, CHM, PDF, Djvu and PDB. Revision Control Systems: CVS, preforce, subversion, ClearCase. Code editors: Kate, Qeditor, kyzis. Development toolkits: Qt, gtk, wxWindows, superwabba, GBA. Other plugins: console, debugger, find-and-replace-in-files, code completion, classviwer, as-you-type-problem-reporter and many others.

Flex & Bison C++ Interoperability - Intro

Уф давненько я сюда не заглядывал - уже и забыл что у меня есть блог :)! Вот собственно по теме - есть такие замечательные программы как Flex (GNU аналог Lex'а) - генератор лексических анализаторов и Bison (аналог YACC'а - Yet Another Compiler Compiler - "еще один" компилятор компиляторов) - генератор синтаксических анализаторов (парсеров). Каждый из этих тулзов получает на вход файл спецификаций и после обработки его выдает на выходе код на С (можно и на С++, ведутся работы над Java - но об этом дальше) который затем можно собрать и в итоге получить программу осуществляющую грамматический разбор текста и выполняющую определяемые разработчиком действия. В основном данные средства используются в паре так как парсер, генерируемый Bison требует еще наличия функции со ледующим интерфейсом (в простейшем случае): yylex() которая собственно скармливает парсеру лексемы, которые тот уже группирует в различного рода выражения. Именно эту функцию и с таким интерфейсом генер