Каррируем на C++

Автор: admin от 1-10-2014, 23:17, посмотрело: 480

Привет, хабр.

Сидел я как-то вечером, ждал, пока соберется свежая ревизия clang, и смотрел на код одного своего проекта, в котором встречались не очень красивые вещи вроде
std::transform (someContainer.begin (), someContainer.end (), std::back_inserter (otherContainer),
    [this] (const SomeUglyAndLongType& item) { return HandleItem (item); });

Зачем создавать целую лямбду, чтобы у функции двух аргументов (если, как пишут классики, this считать неявным нулевым аргументом) зафиксировать один из них? На каком-нибудь псевдохаскеле можно было бы просто написать что-то вроде
map (handleItem this) someContainer

Мапы, функторы и прочие монады сделаем как-нибудь в следующий раз, а вот вещи, напоминающие (handleItem this) можно попробовать научиться писать.

Категория: Программирование

 

Windows 10 Technical Preview доступна для скачивания

Автор: admin от 1-10-2014, 20:02, посмотрело: 443

Объявленная вчера в Сан Франциско грядущая версия Windows 10 стала доступна для скачивания в редакции Technical Preview.

Windows 10 Technical Preview доступна для скачивания

Скачать бесплатно без СМС

Категория: Microsoft / Windows

 

Autothysis128t: SSD с очень серьезной системой защиты информации

Автор: admin от 1-10-2014, 16:55, посмотрело: 751

Autothysis128t: SSD с очень серьезной системой защиты информации

Защита личной информации или данных компании, которые не хочется «светить» — больной вопрос для многих в наше время. Засветы личных фотографий известных личностей, промышленный шпионаж, NSA (National Security Agency) — это только малая толика того, что можно привести в качестве довода за необходимость использования серьезных систем защиты критичных данных для личных или корпоративных нужд.

британские ученые Английская компания Secure Drives занимается производством устройств хранения информации, с защитой от доступа третьих лиц. Последняя разработка этой компании — защищенный SSD, модель Autothysis128s и Autothysis128t. В конструкции накопителя есть GSM-модуль, позволяющий отправить команду на уничтожение (физическое) NAND-чипа и контроллера безопасности. И это не все.

Категория: Информационная безопасность

 

Party hard по-программистски, или как мы писали ClojureCup 2014

Автор: admin от 1-10-2014, 16:40, посмотрело: 532

В минувшие выходные Clojure-сообщество испытывало… Ой, так начинался прошлогодний пост с отчётом о прошедшем ClojureCup 2013.

ClojureCup — это 48-часовой онлайн-хакатон, обязательным условием которого является написание приложений на языках Clojure/ClojureScript. В этом году в хакатоне участвовало около 50 команд (в каждой по 1-4 человека), которые сделали множество классных приложений.

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

А попробовать, что у нас получилось, можно вот тут.

Party hard по-программистски, или как мы писали ClojureCup 2014

Осторожно: под катом много картинок.

Категория: Программирование

 

Очередной Moscow CocoaHeads состоится 3 октября

Автор: admin от 1-10-2014, 16:27, посмотрело: 420

Очередной Moscow CocoaHeads состоится 3 октября


Эта неделя у нас богата на тематические встречи разработчиков. В пятницу, 3 октября, мы приглашаем всех желающих в офис Mail.Ru Group на Moscow CocoaHeads, традиционную встречу разработчиков под iOS/OS X. На этих встречах можно представить свой доклад, рассказать о своем проекте, поделиться опытом, и просто пообщаться с единомышленниками. Совсем не обязательно быть гуру, можно просто прийти и послушать, что думают старшие товарищи, задать наболевшие вопросы. В этот раз выступать будут трое докладчиков, так что вечер будет насыщен информацией.

Категория: Веб-разработка / iOS

 

Майкрософт и ФРИИ приглашают на серию студенческих хакатонов Imagine Cup

Автор: admin от 1-10-2014, 16:15, посмотрело: 476

Хакатоны Imagine Cup – это уникальные двухдневные мероприятия, которые проводит Майкрософт совместно с Фондом Развития Интернет-Инициатив (ФРИИ) специально для тех, кто хотел бы научиться создавать современные мобильные и облачные приложения. В ближайшие пару месяцев мы посетим 8 разных городов России, чтобы помочь начинающим разработчикам придумать и создать новые приложения на платформе Майкрософт, а также провести незабываемую ночь в компании с компьютерами и единомышленниками.

Майкрософт и ФРИИ приглашают на серию студенческих хакатонов Imagine Cup

Категория: Веб-разработка / Microsoft / Windows

 

Назад в будущее: проверка работоспособности торгового робота с помощью исторических данных

Автор: admin от 1-10-2014, 15:15, посмотрело: 685

Назад в будущее: проверка работоспособности торгового робота с помощью исторических данных


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

Категория: Программирование / Веб-разработка

 

История про realloc (и лень)

Автор: admin от 1-10-2014, 15:10, посмотрело: 540

История про realloc (и лень)

Простой макрос


Все началось с простого макроса: (приблизительный код)
#define ADD_BYTE(C) do {            
  if (offset == capa) {             
    if (capa < 16) {                
      capa = 16;                    
    } else {                        
      capa <<= 1;                   
    }                               
    buffer = realloc(buffer, capa); 
    assert(buffer != NULL);         
  }                                 
  buffer[offset++] = (C);           
} while(0)


Для тех, кто не знаком с языком программирования C, поясню: этот простой макрос™ добавляет байт «C» в динамически выделяемый буфер (buffer), размер которого (в байтах) равен capa. Следующая позиция для записи определяется при помощи параметра offset. При каждом заполнении буфера происходит двукратное увеличение его объема (начиная с минимального размера в 16 байт).

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

Но как понять, насколько эффективна стратегия перераспределения?

Категория: Программирование

 

Модульный смартфон «Project Ara»: новые подробности от Google

Автор: admin от 1-10-2014, 14:30, посмотрело: 615

Модульный смартфон «Project Ara»: новые подробности от Google

Рабочий прототип устройства будет продемонстрирван на конференции Google уже в декабре этого года. А в продажу устройство поступит в 2015 году, в самом начале, как и планировалось. На днях руководитель проекта Project Ara Пол Еременко сообщил интересные детали о модульном смартфоне.

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

Категория: Гаджеты / Google / Android

 

Asteirsk Обратный звонок, или как дешево звонить

Автор: admin от 1-10-2014, 13:46, посмотрело: 579

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

Категория: Программирование

 
Назад Вперед