Skip to content

Instantly share code, notes, and snippets.

View objectx's full-sized avatar

Masashi Fujita objectx

View GitHub Profile
@mbinna
mbinna / effective_modern_cmake.md
Last active May 7, 2025 15:38
Effective Modern CMake

Effective Modern CMake

Getting Started

For a brief user-level introduction to CMake, watch C++ Weekly, Episode 78, Intro to CMake by Jason Turner. LLVM’s CMake Primer provides a good high-level introduction to the CMake syntax. Go read it now.

After that, watch Mathieu Ropert’s CppCon 2017 talk Using Modern CMake Patterns to Enforce a Good Modular Design (slides). It provides a thorough explanation of what modern CMake is and why it is so much better than “old school” CMake. The modular design ideas in this talk are based on the book [Large-Scale C++ Software Design](https://www.amazon.de/Large-Scale-Soft

@RKX1209
RKX1209 / stp-internal.md
Last active February 22, 2023 16:04
STP source code internal

STPのなかみ

Bit blasting

Bit Vectorを命題論理に変換する作業。例えばl-bitのaとbがあって、a or bという項は それぞれの1bitごとに、a[i] or b[i]を取ってandという事になる。 足し算x + yは同様に1 bitごとに考えれば良いが桁上がりなどがあるので、半加算器を考える必要がある。 a=x[i],b=y[i]とすると、 s ≡ (a + b + i ) mod 2 ≡ a ⊕ b ⊕ i o ≡ (a + b + i ) div 2 ≡ a · b + a · i + b · i となって、これをTseitin encodingでCNFにすると、 (a ∨ b ∨ ¬o) ∧ (a ∨ ¬b ∨ i ∨ ¬o) ∧ (a ∨ ¬b ∨ ¬i ∨ o)∧

@RKX1209
RKX1209 / qemu-internal5.md
Created November 5, 2017 06:26
QEMU internals 5

QEMUのなかみ(QEMU internals) 5

QEMU Guest Agent

QEMUはゲストOS内にqemu-gaをインストールする事で、ホストからゲストの情報を取得できる。 qemu-gaはvirtio-serialを通して、ホストとUNIXソケットで双方向通信を行う。ゲスト側は/dev/virtio-ports/org.qemu.guest_agen.0などのデバイスファイルを通し、またホスト側は/tmp/qga.agentなどを通して通信する。(これらはqemu起動時にオプションで指定する)

|sh| ./qemu-ga -m virtio-serial -p /dev/virtio-ports/org.qemu.guest_agent.0 ||<

@wreulicke
wreulicke / 技術書典3の戦利品.md
Last active October 24, 2017 19:30
技術書典3 戦利品

買った

技術書典3のタグでbooth検索するといくつか見つかります。 https://booth.pm/ja/events/techbookfest-3

@gakuzzzz
gakuzzzz / index.md
Last active March 20, 2024 15:48
MonadTransformer とは何か

MonadTransformer とは何か

注意書き

この記事は Monad がわかる人に向けた MonadTransformer の解説記事です。

すごいH本や FP in Scala などでモナドまではイメージが掴めたけれど、モナドトランスフォーマーが何かわからない、という層をターゲットに想定しています。

基本的に Functor, Applicative, Monad および型クラスについては把握しているものとしますので、この辺があやふやな方は別の資料などをご参照下さい。

@kazu-yamamoto
kazu-yamamoto / gist:cde22cf569e7e78a179d30a9982b1433
Last active October 7, 2017 11:30
Concurrent hello world in Haskell
module Main (main) where
import Control.Concurrent
main :: IO ()
main = do
codechan <- newEmptyMVar
wait <- newEmptyMVar
myid <- myThreadId
putStrLn $ "I'm " ++ show myid
@teppeis
teppeis / es-class-fields.md
Last active March 13, 2022 13:57
ES Class Fieldsのプライベートフィールドがハッシュな変態記法なのは何でなんだぜ?

ES Class Fields (Stage 2 now)

プライベートフィールドがハッシュな変態記法なのは何でなんだぜ?

class Point {
    #x;
    #y;
 constructor(x = 0, y = 0) {
@voluntas
voluntas / auto.rst
Last active January 9, 2025 00:00
あたりまえのことをあたりまえにやる難しさ

あたりまえのことをあたりまえにやる難しさ

日時:2017-07-04
作:@voluntas
バージョン:1.0.2
url:https://voluntas.github.io/
時間:30 分
@voluntas
voluntas / webrtc.rst
Last active September 15, 2021 11:16
WebRTC 資料まとめ