Публикации
СТАТЬЯ "Beginning F#" - изучаем самый элегантный язык .NET
"Все новое - хорошо забытое старое". Эта фраза отлично описывает новый язык платформы .NET под названием F#, который выйдет совсем скоро в составе Visual Studio 2010. Функциональное программирование, которое в последние годы ушло в тень программирования объектно-ориентированного, воспряло духом, и готово захватить мир! F# - это не просто новый язык. Это мощнейший инструмент, вобравший в себя всю силу своего предшественника OCaml и улучшенный философией платформы .NET. Перенести изящное решение и...
СТАТЬЯ Почему большое количество браузеров - плохо
Тема браузеров а последнее время очень популярна. Чего только стоит истерика с IE6, деньги за баги в Chrome, поддержка HTML5 и т.д. Я не буду агитировать использовать либо не использовать какой-либо браузер, лишь попытаюсь объяснить свою мысль из заголовка. Как правило, когда есть конкуренция в какой-нибудь нише, то в результате выигрывают конечные пользователи. Ведь это заставляет вендоров услуг / продуктов постоянно усовершенствовать свои продукты, понижать цены и т.д. К сожалению, это правил...
СТАТЬЯ Обзор книги «Beginning F#»
Недавно Александр Краковецкий предложил всем желающим написать ревью некоторых книг издательства APRESS в обмен на бумажные версии этих книг. Так как я веду цикл статей о F#, я заинтересовался книгой «Beginning F#». Название «Beginning F#» является несколько неточным — я бы назвал книгу «Beginning, Advancing and Getting Astounded by F#». Эта книга последовательно описывает все более и более сложные тематики, вызывая у читателя удивление и невольное уважение к скрытым возможностям нового языка пр...
СТАТЬЯ Ускорение вычислений на видеокарте от Microsoft, или кратко о Microsoft Accelerator
О вычислениях на видеокарте за последние годы не писал разве что ленивый. AMD/ATI представила свою StreamComputing, а в последствии и OpenCL, NVidia всячески продвигает свою CUDA. Не осталась в стороне и Microsoft. Итак, встречаем библиотеку Microsoft Accelerator, основная цель которой — ускорение на видеокарте и/или многоядерных процессорах обработки одно- и двухмерных массивов данных. Плюсы: Написана под .NET, так что есть возможность вызовов из любых .NET-языков — C#, VB.NET и даже F# (возмож...
СТАТЬЯ И.Д. Новиков "Черные дыры и Вселенная"
"Черные дыры и Вселенная" Игоря Новикова - одна из моих самых любимых книг. Для тех, кто интересуется космологией, эта книга - незаменимый источник информации. О книге В этой книге рассказывается об открытиях в астрофизике последнего времени — о черных дырах, о начале расширения Вселенной и о том, что ее ждет в будущем.Каждый читатель, конечно, слышал или читал о черных дырах. О них часто говорят в передачах по телевидению, по радио, пишут в газетах, в журналах и книгах разного жанра — от научны...
СТАТЬЯ Заметки о F#. Часть 1.1: Знакомство с базовым синтаксисом
Итак, я продолжаю цикл статей по F#. В этой статье я познакомлю читателей с базовым синтаксисом языка F# и сделаю сравнение быстродействия F# и C# на примере вычисления детерминанта матрицы произвольного размера. В связи с большими текстами примеров и комментариями к ним я решил разбить первую статью на несколько частей, первый из которых я представляю вашему вниманию.Элементы базового синтаксиса, необходимые для понимание текста примера0. Использование так называемого «легкого синтаксиса», кото...
СТАТЬЯ Ускорение вычислений задач баз данных с помощью видеокарт
Статья "Fast Computation of Database Operations using Graphics Processors" (2004 г.) описывает реализацию обработки нескольких типов запросов к БД на видеокартах. Удивительно, что никто до сих пор не реализовал подобную идею в реальной СУБД. Вот один из графиков сравнения производительности видеокарты и процессора на одной и той же задаче, время видеокарты включает время на копирование данных - тоесть сравнение честное. P.S. Я ранее писал о своей ООСУБД BerserkDB. Можно было бы её доработать, н...
СТАТЬЯ Удобная и бесплатная библиотека для отображения графов под .NET
Задача отображения графов не тривиальна. Для того что бы нарисовать граф в удобном виде необходимо решить задачу планаризации графа, которая может усугубляться разницей в размерах узлов. Есть хорошая статья об отрисовке графов, но там информация либо для С++ разработчиков либо общая теория. Я хотел поделится ссылкой на замечательную библиотеку для отрисовки графов - Graph#. В ней реализовано несколько алгоритмов и для каждого из них можно подбирать удобные параметры. Сейчас визуализация графов ...
СТАТЬЯ Грабли, разбросанные в лабиринте шаблонов C++
Привет веем, доброго времени суток. Недавно наткнулся на Хабре на прикольную карту земель С++. Очень интересно ее исследовать с коллегами (сразу вспоминаются общие походы в Lineage). На карте есть лабиринт шаблонов. Увидел его и захотел рассказать о тех граблях, на которые приходилось наступать, бродя по этому лабиринту. Но сначала посмотрел, не было ли похожих историй до меня. Нашел очень классную статью "Трюки со специализацией шаблонов C++". Почерпнул из нее еще несколько идей и думаю, могу ...
СТАТЬЯ Нова архітектура для обчислень на відеокартах - NVIDIA Fermi
Розглянемо список архітектурних нововведень: Уніфікований 64-бітний простір адрес Підтримка автоматичної корекції помилок (Errors Check and Correction) Ієрархічний паралельний кеш (Parallel DataCache) Конкурентне виконання шейдерів (NVIDIA GigaThread™ engine) та швидка зміна контексту виконання Швидкі атомарні операції з пам'ятю Розглянемо наслідки вище наведених нововведень: Уніфікований простір адресс дозволяє використовувати мову програмування С++ для програмування шейдерів у повному об'ємі, ...