/**
 Hello world, graphical, in Neko, via Agar label
 Tectonics:
   gcc -shared -fPIC -o nekoagar.ndll rosetta-nekoagar.c `agar-config --cflags --libs`
   nekoc hello-graphical.neko
   neko hello-graphical
 
*/ /* Load some libagar bindings http://www.libagar.org/mdoc.cgi?man=AG_Intro.3 */ var agar_init = $loader.loadprim("nekoagar@agar_init", 3); var agar_window = $loader.loadprim("nekoagar@agar_window", 1); var agar_window_show = $loader.loadprim("nekoagar@agar_window_show", 1); var agar_box = $loader.loadprim("nekoagar@agar_box", 3); var agar_label = $loader.loadprim("nekoagar@agar_label", 3); var agar_eventloop = $loader.loadprim("nekoagar@agar_eventloop", 0); /* Init with driver; NULL for best choice on current system */ try { var rc = agar_init("nekoagar", 0, val_null); if $not(rc) $throw("Error: agar_init non zero"); } catch e { $throw("Error: agar_init exception"); } /* Put up a window, with a box, and a label in the box */ var w = agar_window(0); var box = agar_box(w, 1, 0); var label = agar_label(box, 0, "Goodbye, World!"); agar_window_show(w); /* Run the event loop */ agar_eventloop();