GOLF(2gg)
π NAME π
SEMI β the Golf documentation, but make it messages π«Ά
β¨ DESCRIPTION β¨
okay bestie sit down because SEMI is literally the moment. it stands for SimplE Message Interface and it's a binary format used to write (pack) and read (unpack) messages β and those messages are just key/value pairs hanging out together, looking like this:
<key>=<8 byte length of value><value>
so <key> can be made of any characters you wantβ¦ except the equal sign ("=") and the exclamation point ("!"), those two are NOT invited. π« and any whitespace chilling around the edges gets trimmed off. bye. βοΈ
the value is always preceded by an 8-byte length of value β that's a binary number in big-endian 64bit format β and then the value itself shows up, and then a new line ("\n") at the end, and bestie listen: that newline is not counted in the length. periodt. π
there's one special <key> and it's "comment" β it's always ignored, it exists purely so you can leave little notes for yourself, general commenting energy only. π
and the way that SEMI implicitly supports binary data with zero need for any kind of encoding?? iconic. because the number of bytes is specified ahead of the value, parsing stays efficient. no cap. π₯
π SEE ALSO π
- Messages
get-messagenew-messageread-messageSEMIwrite-message- See all documentation
okay that's the whole vibe, go pack some messages and slay π this was the GOLF(2gg) page from the Development section, brought to you on $DATE at version $VERSION β mwah, ily, drink water π¦β¨
π¦ where this page comes from
- ubuntu questing: golf 601.4.41-1
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms