Skip to content

Instantly share code, notes, and snippets.

@matnogaj
matnogaj / StateMachine.kt
Last active December 26, 2017 21:37
State machine in Kotlin
class StateMachine(private val initialState: State) {
interface Event
interface State
class Edge(private val triggerEvent: Event, private val targetState: State) {
private val actionList = mutableListOf<(Edge) -> Unit>()
fun action(action: (Edge) -> Unit) {
actionList.add(action)
}
@hellerbarde
hellerbarde / latency.markdown
Created May 31, 2012 13:16 — forked from jboner/latency.txt
Latency numbers every programmer should know

Latency numbers every programmer should know

L1 cache reference ......................... 0.5 ns
Branch mispredict ............................ 5 ns
L2 cache reference ........................... 7 ns
Mutex lock/unlock ........................... 25 ns
Main memory reference ...................... 100 ns             
Compress 1K bytes with Zippy ............. 3,000 ns  =   3 µs
Send 2K bytes over 1 Gbps network ....... 20,000 ns  =  20 µs
SSD random read ........................ 150,000 ns  = 150 µs

Read 1 MB sequentially from memory ..... 250,000 ns = 250 µs