-- Leo's gemini proxy
-- Connecting to bbs.geminispace.org:1965...
-- Connected
-- Sending request
-- Meta line: 20 text/gemini; charset=utf-8
How do I reduce binary size when compiling a Hare program?
I compiled the example Hello World program as depicted on the official website, and the binary size is ~121kB after stripping. I then tried to rewrite the Hello World program using io::write and strings::toutf8, and the stripped binary is ~34kB. Is there any way to reduce binary size even further, using lto or compiler flags?
The source code of the modified Hello World is this:
use io; use strings; export fn main() void = { io::write(1, strings::toutf8("Hello, World!\n"))!; };
2023-11-18 · 6 months ago
Thanks for the reply. After checking the implementation of strings::toutf8 in the standard library, I rewrote the Hello World program like this:
use io; export fn main() void = { let s: str = "Hello, World!\n"; io::write(1, *(&s: *[]u8))!; };
The resulting stripped binary is, unfortunately, the same size.
-- Response ended
-- Page fetched on Sun May 19 13:35:31 2024