Два года в /fg/. Войти !bnw Сегодня Клубы
Привет, TbI — HRWKA! 1102.6 пользователей не могут ошибаться!
?6206
прекрасное5862
говно5740
говнорашка5025
хуита4031
anime2757
linux2458
bnw2295
music2267
log2061
рашка2004
pic1874
ололо1757
быдло1414
украина1362
сталирасты1199
гімно1139
дыбр1115
роботы_не_одобряют1005
bnw_ppl896

https://youtu.be/EAs1BmBbtgk ето лучшее из того што я прослушал за последние пару месяцев, зе хол сынг
#KXI3CV (5) / @anonymous / 189 дней назад

Отлаживаю программы на MPI вот так:

mpirun -n 4 st -e gdb -ex run ./main
#YS0YNM (0) / @fix / 1595 дней назад

Писать эффективные вычматы на чистом C — содомия, поскольку кроме убогого препроцессора средств метапрограммирования нет.

Альтернатвы:
1) Более лучший препроцессор, например erb (Ruby). Минус — неудобно возиться с получившимся выхлопом (отладка, балансировка скобочек, етц).
2) Языки, в которых можно явно указать, какие вычисления будут происходить в compile-time. Например, C++ (шаблоны, constexpr).

Хочу попробовать D в качестве второй альтернативы. Есть гнутый компилятор, который [по мнению авторитетных анонимных экспертов] даёт на выхлопе код, не хуже, чем gcc.

#T9QP8L (8+1) / @fix / 1724 дня назад

Вот есть такая штука:

template<class F>
void foo(F f) {
    for(int i = 0; i < 100; i++)
    f(i);
}

Наверное, это очевидно, но gcc не инлайнит¹ вызов f, если f - это функция. Поэтому приходится писать

template <void f(int)>
void foo() { /* ... */ }

Либо оборачивать f в какую-нибудь лямбду или класс с оператором ().


1) На самом деле инлайнит, если foo() используется только один раз в коде.

#OC494I (12) / @fix / 1724 дня назад
ipv6 ready BnW для ведрофона BnW на Реформале Викивач Котятки

Цоперайт © 2010-2016 @stiletto.