Following the example of Guile Scheme, the Poke syntax includes
support for multi-line comments using the #!
and !#
delimiters. This, along with the -L
command line option,
allows to write Poke scripts and execute them in the command line like
if they were normal programs. Example of a script:
#!/usr/bin/poke -L !# print "Hello world!\n";
The resulting script can process command-line options by accessing the
argv
array. The following Poke script prints its arguments:
#!/usr/bin/poke -L !# for (arg in argv) printf ("Argument: %s\n", arg);
If you want to pass additional flags to the poke command, you need to use a slightly different kind of shebang:
#!/usr/bin/env sh exec poke -L "$0" "$@" !# load elf; open (argv[0]); printf ("%v\n", Elf64_Ehdr @ 0#B);