ねぇうしくんうしくん

今週のまとめ (一週間で自分が見た技術系サイトのログ)が今のところメインです。プログラミング言語、人工知能、セキュリティ 等

今週のまとめ

*1: 他のは実装中?

まとめ : Algebraic Effects and Handlers とか

[プログラミング言語] Algebraic Effects and Handlers

*1: Effective Concurrency with Algebraic Effects · KC Sivaramakrishnan

*2:e: effect, readLine : unit -> continuation -> unit

まとめ

まとめ

ひとこと:メタプログラミングRuby読んでるけど、この本が優れているのはいかにメタプログラミングをまともなエンジニアリングに組み込むかが主眼になっているということだと思う。単なる Ruby はこんな書き方できるんですよ、変でしょ?で終わってない点がこの本が評価されているゆえんなのかなと思っている。


追記:言語やツールについてのカンファレンスである StrangeLoop というのが最近開かれたらしく、動画がいくつか上がっていた

まとめ (消化)

何週間も更新してないけど特にネタを蓄積したわけでもない。 とりあえずメモに残っていたぶんを放出

Docker 内で radare2 を使うとき ptrace-traceme: Operation not permitted が出る問題

TL;DR: You must pass --security-opt seccomp:unconfined when running a container.

クールなリバースエンジニアリングフレームワーク radare は、公式で docker イメージを提供しているので手軽に試すことが出来る。

しかし、デバッグモードで実行しようとすると以下のようなエラーが発生することがある。

r2@39573811ef24:~$ ls
hello  hello.c
r2@39573811ef24:~$ r2 -d hello
ptrace-traceme: Operation not permitted
Cannot open 'dbg://./hello' for writing.

結論から言うと Docker のセキュリティ機構 *1 が影響しているので docker run 時に無効にする必要がある。

docker run --security-opt seccomp:unconfined --rm -it radare/radare2

参考: https://github.com/moby/moby/issues/20064

今週のまとめ (2017/08/04)