Lexical Scanning in Go - Rob Pike
GoogleFOSSSydneyYouTube ↗
Further reading 1
Caption notes
Rob Pike begins with mismatched control flow between a template scanner and its parser. He organizes scanning as functions that return the next state and passes lexical items through a channel. He then changes execution so callers request the next item while retaining the state-function structure, using the example to argue that concurrency can be a design approach without parallel execution. Questions address buffering, input slices, streamed input and parser extensions; Pike explicitly says he has not measured this implementation’s performance. This guide retains the historical design argument, without treating the initialization restrictions described then as current Go rules or claiming to verify the slide code.
Archived captions (transcription method unspecified) ↗Original passages · 2
concurrency enables parallelism doesn't require itto be honest I have not measured it