const std = @import( "std" ); const print = std.debug.print; var alpha :usize = 0; // .. so it seems root-mutable state is allowed.. beta :usize = 0, // because beta is an instance method, // but alpha is "root", not "global" (not `pub`) pub var gamma :usize = 0; // gamma is global-mutable-state, with no instances. pub fn main() !void { print( "hello world\n", .{} ); for( 0..10 ) |i| { alpha += 1; print( "alpha: {d}, i: {d}\n", .{ alpha, i } ); } } pub fn print_beta( this :@This() ) void { print( "beta: {d}\n", .{ this.beta } ); } pub fn print_gamma() void { print( "gamma: {d}\n", .{ gamma } ); }