|
|
|
|
|
by camdencheek
871 days ago
|
|
Definitely possible! However, I prefer to avoid cgo wherever possible for more than just the overhead. In my experience: - It complicates builds by requiring a C toolchain - It makes single, static binaries more difficult - It makes portability more difficult (not that assembly is portable though) - It causes difficult-to-debug issues (I recently ran into an issue where MacOS signing changed, causing all my cgo binaries to be killed on startup) - Debuggers don't work across Cgo boundaries (they do with go ASM!) I think Dave Cheney said it best: https://dave.cheney.net/2016/01/18/cgo-is-not-go |
|
There, beautiful Go code from that point onwards.