プログラミング言語
GCC拡張のcleanup attribute使えば簡単にscope_exit文を作れそうだな、と思って作ってみた。ネスト関数のプロトタイプ関数に使うautoとか初めて使った。 #include <stdio.h> #define scope_exit() \ auto void on_scope_exit(void *ptr);\ __attribute__((cleanup(on_</stdio.h>…
C言語でデストラクタ及びスマートポインタを実装した人が居るらしい。何というタイミング。GCC拡張のcleanup attributeを使っているので、使い道は少なそう。それと、メモリをスタックからじゃなくてヒープから取得してるのが気になる。[C] Implementing sma…
C++11は良く分からんので、C言語で。参照でもないけど、実装は似たようなもん。デコンストラクタ問題やオーバーロードや演算子オーバーライドが無いので別物だけど、これはこれで使い道ある気がする。moveについては、safe_freeのような趣きがあって良ろしい…
適当にアルゴリズム開発してみてるけど、やっぱりPythonの遅さがネック。 ということでCythonを入れてみた。が、速度を出すために型を指定しなければならなくて、だったらC言語で良くね? って思った。numpyの配列がPythonオブジェクトを含むらしくてOpenMPが…