Slide 1

Slide 1 text

Goから始める低レイヤ レプ 2026/05/23 Voltech vol.8

Slide 2

Slide 2 text

自己紹介 2 レプ # 分散アルゴリズム # コンパイラ # Go言語 # システムプログラミング @repunit11 # マジック # アニメ 九州大学 工学部電気情報工学科

Slide 3

Slide 3 text

目次 3 01 02 03 04 Goとは Goが低レイヤ入り口に向いている理由 Goが低レイヤ開発に向かない理由 最後に

Slide 4

Slide 4 text

4 Goとは

Slide 5

Slide 5 text

Goの概要 Goとは 5 Googleで開発された言語 バージョン:v1.26.3(2026/05現在) 静的型付け言語 開発者ファーストな記述やパフォーマンスを重視

Slide 6

Slide 6 text

Goの作者・メンテナ Goとは 6 Rob Pike ・Unix/Plan9 ・UTF-8 Ken Thompson ・Unix/Plan9 ・B言語 Russ Cox ・Goのテックリード(2012-2024) Robert Griesemer ・V8 ・JVM

Slide 7

Slide 7 text

7 Goが低レイヤ入り口に 向いている理由

Slide 8

Slide 8 text

2つの理由 Goが低レイヤ入り口に向いている理由 8 文法がやさしい 標準パッケージが Goで書かれている

Slide 9

Slide 9 text

文法がやさしい Goが低レイヤ入り口に向いている理由 9 f, err := os.Open("hello.txt") if err != nil { return err } defer f.Close() 例外ではなく、エラーが戻り値 リソース解放をdeferで近くに書ける 継承・マクロなどがない

Slide 10

Slide 10 text

標準パッケージがGoで書かれている Goが低レイヤ入り口に向いている理由 10 Go Python PHP 標準パッケージ ほとんどGo 読むのに必要 主にGo+一部asm 標準パッケージ Pythonで読める部分も多い 読むのに必要 Python+C ユーザランド/標準関数 PHPで触れられる部分もある 読むのに必要 PHP +C

Slide 11

Slide 11 text

11 Goが低レイヤ開発に 向かない理由

Slide 12

Slide 12 text

2つの理由 Goが低レイヤ開発に向いていない理由 12 メモリ制御をやりにくい Goランタイムを前提にしている

Slide 13

Slide 13 text

13 おわりに

Slide 14

Slide 14 text

まとめ おわりに 14 Goは文法がやさしい Goの内部はほとんどGoで書かれている 低レイヤの実装を読むにはいい教材

Slide 15

Slide 15 text

Go Conference 2026 開催! 15

Slide 16

Slide 16 text

参考資料 おわりに 16 Goの野暮ったさとど う付き合うか https://www.docswell.com/s/Songmu/K6E6GM-How-to-get-along-well-with-Go 速習Go/Fast Learning Go https://speakerdeck.com/oracle4engineer/fast-learning-go Go Conference 2026 https://gocon.jp/2026/ Go公式ページ https://go.dev/ なぜGoは、Javaの「抽象化中毒」を真っ向から否定したのか https://www.youtube.com/watch?v=w5Lv8Wxp2Qo