ねぇうしくんうしくん

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

2017-01-01から1年間の記事一覧

まとめ

[低レイヤ] VisUAL - A highly visual ARM emulator ARMアセンブリのシミュレータ。メモリやレジスタの内容が可視化されている。 [低レイヤ] GitHub - avast-tl/retdec: RetDec is a retargetable machine-code decompiler based on LLVM. 無料AVソフトでお…

ダイナミックスコープをレキシカルスコープに直す。

2016年に作った Lisp (Scheme) インタプリタ、ダイナミックスコープだったまま放置していたのでレキシカルスコープに直した。 ダイナミックスコープとレキシカルスコープとは。 スコープの変数の参照のやり方の違い。 ダイナミックスコープ:実行時に呼び出…

デバッガの実装まとめ(仮)

デバッガの内部について調べてるのでまとめ、追記するかも Linux の場合 ptrace が昔から使われている How Does a C Debugger Work? (GDB Ptrace/x86 example) - (gdb) break *0x972 gdb の内部(英語) ptraceシステムコール入門 ― プロセスの出力を覗き見し…

まとめ

[セキュリティ] OSSの脆弱性を探すためにやったこと // Speaker Deck [セキュリティ] Web Security Log: The proc/self/environ Injection procfs を使えば LFI で 環境変数を取れるという話 CTF では基礎知識? procfs - Wikipedia [セキュリティ,機械学習*1…

今週のまとめ

[プログラミング言語] Carp | Veit's Blog ボローチェッカー付きの Lisp 方言 [プログラミング言語] The Cell Programming Language Reactive Automata という Reactive な計算要素がある言語。C++にトランスパイルされる。 [セキュリティ] A New Era of SSR…

今週のまとめ

サボってたらどうして書かないんですか?*1と(暗に)言われたので書きます。 [プログラミング言語] GitHub - exakat/php-static-analysis-tools: A reviewed list of useful PHP static analysis tools PHP の静的解析ツール一覧 [プログラミング言語] GitHub…

Coq 末尾再帰の等価性の証明

レイトレーシングを実装する際、光の反射の計算に再帰を用いる。擬似コードを以下に示す。 let ref f ... argN = let a = ~~~~ in (* 加算:光源など *) let b = ~~~~ in (* 乗算:反射での減衰など *) let finished = ~~~~ in (* 計算を終了するか *) if ( …

まとめ

[プログラミング言語] Rust to WebAssembly, Made Easy – Lord i/o Rust から WebAssembly に変換する方法 [プログラミング言語] A Taxonomy of Software Smells コードスメル (危険度の高いコード) の目録 [プログラミング言語] Braid リアルタイムフレーム…

今週のまとめ

[プログラミング言語] Ruby の JIT mrubyのJITの概要 - Qiita mruby の JIT についてのリンク集 VMに手を加えずRubyを高速化するJITコンパイラ「YARV-MJIT」の話 - k0kubun's blog [プログラミング言語] GitHub - Microsoft/napajs: Napa.js: a multi-thread…

まとめ : Algebraic Effects and Handlers とか

[プログラミング言語] Recursion Schemes, Part IV: Time is of the Essence explains Recursion Schemes, especially futumorphism and histomorphism 2年前に書いた dynamorphism の記事も参照 手前味噌 http://45deg.github.io/rogyAdC2015/ [プログラミ…

まとめ

[Haskell] Building a CPU with Haskell - Part 1 :: Will Yager Haskell で CPU を作る。CλaSH でハードウェア記述言語にトランスパイルすることをターゲットにしている。 [Go][モバイル] Matcha - Mobile apps in Go Go 言語で iPhone / Android アプリを…

まとめ

[ソフトウェア] Uber Open Source - Jaeger 分散システムのトレーシングフレームワーク GoっぽいロゴをしているがGoだけじゃない Uber製 [アルゴリズム] Pipe Logic MOSFET素子を模した実行ファイルとその間のパイプIOで回路っぽいものを作る [JavaScript] J…

まとめ (消化)

何週間も更新してないけど特にネタを蓄積したわけでもない。 とりあえずメモに残っていたぶんを放出 [セキュリティ] Reverse Engineering Malware 102 | Malware Unicorn マルウェアの解析(RE)を step-by-step で解説 How Does a Database Work? | Let’s Bui…

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

TL;DR: You must pass --security-opt seccomp:unconfined when running a container. クールなリバースエンジニアリングフレームワーク radare は、公式で docker イメージを提供しているので手軽に試すことが出来る。 しかし、デバッグモードで実行しよう…

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

[プログラミング言語] DI:依存性注入ライブラリを自分で作ろう // Speaker Deck Dependency Injection を ステップバイステップで実装を見ていくスライド。スライドはコードが大半を占めている。おそらく Dagger の解説であると思われる。 [プログラミング…

今週のまとめ (2017/7/21)

[アルゴリズム] Bloom Filters by Example Bloom Filter のデモ [プログラミング言語] How Discord Scaled Elixir to 5,000,000 Concurrent Users リアルタイムボイスチャットアプリ Discord における Elixir のケーススタディ。 [プログラミング言語] Doppi…

指で数字を増やして5を目指すゲームが後手必勝であることを示す

指で数字を増やして5を目指すゲームとは 子供の頃やってたこれらの遊び、皆様の地元ではなんて呼んでましたか?ちょっと仕事で参考にしたいので、県名とかも教えてくれると嬉しいです!ちなみにやしろあずきの地元では①「これやろうぜ!」②「これやろうぜ!…

今週のまとめ (2017/6/30)

La fin du premier semestre approche. [プログラミング言語] Streaming Combinators and Extracting Flat Parallelism | Futhark - A High Performance Functional Array Language 関数型GPU向け並列プログラミング言語 Futhark の紹介記事 [プログラミング…

今週のまとめ (2017/06/23)

[アルゴリズム] AVL tree - Growing with the Web AVL木についての解説。計算量の解析と Java / JavaScript のコードがついている。 [プログラミング言語] Macaron - a high productive and modular web framework in Go Go言語でのWebフレームワーク。Marti…

今週のまとめ (2017/6/16)

時間短縮のため記事をコンパクトにします。*1 [プログラミング言語] Writing a Forth Haskellで書かれたForthのインタプリタ [アルゴリズム] Data structure for triangle meshes 三角形分割のデータ構造とアルゴリズムについての記事 [機械学習] Exploring …

今週のまとめ (2017/6/9)

ネタがないので短い記事です。 C言語の構文ミスをディープラーニングで治す論文 https://www.aaai.org/ocs/index.php/AAAI/AAAI17/paper/view/14603 seq2seq でエイとやっているようだが知識がないので詳しくは不明 Rustのマクロ入門 https://danielkeep.git…

今週のまとめ (2017/6/2)

*1 プログラミング言語 libtins: C++ packet crafting and sniffing library Rust from Scala MoonScript: a programming language that compiles to Lua. Imperative Haskell Tour of an open source Elm SPA アルゴリズム A C++ library of Concurrent Dat…

今週のまとめ (2017/5/26)

5月も終わりですね…え? プログラミング言語 System Programming in Rust: Beyond Safety Haret Practical Deep Learning in Haskell c2goasm Understanding Virtual Tables In C++ retries: A tiny Rubygem for retrying code with randomized, exponential…

今週のまとめ (2017/5/19)

ぞい。 プログラミング言語 Constrained Category アルゴリズム keon/algorithms: Minimal examples of data structures and algorithms in Python Web Choo: sturdy 4kb frontend framework WebGL Fundamentals 機械学習 Picasso: A CNN visualizer データ…

今週のまとめ (2017/5/12)

前回はおやすみでした。 プログラミング言語 Categorical Semantics for Dynamically Typed Programming Languages A true heterogeneous container in C++ CPU Utilization is Wrong セキュリティ [PDF] Quick introduction into SAT/SMT solvers and symbo…

今週のまとめ (2017/4/28)

4月も終わり (ここで家賃振込みを忘れてたことに気づき書くのを中断し銀行へ行く) ですね。 プログラミング言語 Monads to Machine Code Helix: Native Ruby Extensions without Fear Bonobo: data-processing for humans | Python 3.5+ Kaitai Struct アル…

今週のまとめ (2017/4/21)

今週のまとめのリンクは iCloud のメモ帳で管理しています。iPhone からの保存が楽なので… プログラミング言語 cmacro – Lisp macros for C Why ML/OCaml are good for writing compilers? Ruby 2.4 のハッシュテーブル高速化を理解する 機械学習 Paperspace…

今週のまとめ (2017/4/14)

すた丼 プログラミング言語 Dale - Lisp Flavored C github.com Lisp のような S式で記述されたコンパイラ型言語。Lisp風Cとあるが、C言語へのトランスレータではなくLLVMをバックエンドとしている。 また、macro や module や concept などの C言語を超えた…

今週のまとめ (2017/4/7)

春 プログラミング言語 [Rust] Building Realtime APIs in Rust Building Realtime APIs in Rust – Robert Lord Rust を用いたネットワークプログラミング、フレームワークを用いて 認証システムやリアルタイムAPIを構築するデモ。 [JavaScript] BitArray.js…

今週のまとめ (2017/3/31)

プレミアム華金。 プログラミング言語 Alpaca Lang [Rust][C++] Rust from a C++ programmer’s perspective Articulate Lisp AI Stochastic Program Optimization RankPL Logic Production Systems (LPS) 数学 AsciiMath プログラミング言語 Alpaca Lang git…