Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
FENNEL(1)		    General Commands Manual		     FENNEL(1)

NAME
       fennel -	a lisp programming language that runs on Lua

SYNOPSIS
       fennel  [--repl]	 | [--compile filename]	| [--eval source] | [filename]
       [args ...]

DESCRIPTION
       This manual page	documents briefly the fennel command.

       fennel is the main entry	point for Fennel, a lisp programming  language
       that runs on Lua	runtimes. With no options or arguments,	it runs	an in-
       teractive Read-Eval-Print loop (REPL).

       Given a filename	as its first argument, it runs that file and passes it
       the subsequent arguments. Ahead-of-time compilation can be invoked with
       the  --compile  flag,  while  short  snippets can be evaluated with the
       --eval argument.

OPTIONS
       A summary of options is included	below.

       --repl Start an interactive repl	session.  This	is  the	 default  when
	      given no arguments.

       --compile filename
	      Perform ahead-of-time compilation	on the provided	file and write
	      the Lua output to	standard out.

       --eval source
	      Evaluate a given piece of	source code and	print the result.

       --no-searcher
	      When  running  a repl or a file, fennel.searcher is installed by
	      default so that the require function can load  Fennel  files  in
	      addition	to Lua files. This flag	disables that behavior.	Has no
	      effect for ahead-of-time compilation.

       --add-package-path path
	      Add the given path to package.path so that the require  function
	      will know	to look	there when searching for Lua modules.

       --add-fennel-path path
	      Same  as	above,	but  for Fennel's path used when searching for
	      Fennel modules.

       --globals VAR1[,VAR2...]
	      Allow VAR1, VAR2,	etc as globals in addition to the standard set
	      of globals. This enables strict global checking even  in	ahead-
	      of-time  compilation  where  it otherwise	would be disabled. Use
	      "*" to disable globals checking.

       --globals-only VAR1[,VAR2...]
	      Same as above, but without the inclusion of the standard set  of
	      globals.

       --require-as-include
	      Instead of loading required modules at runtime, compile them in-
	      line  into  the  main  file  being  compiled. Only useful	during
	      ahead-of-time compilation.

       --assert-as-repl
	      Calls to the built-in function assert from Fennel	 will  be  re-
	      placed  with  calls  to  assert-repl  so that when the assertion
	      fails, a REPL will be started in which you can interactively de-
	      bug.

       --use-bit-lib
	      Compile bitwise operations to use	LuaJIT's bitop library instead
	      of Lua 5.3+ bitwise operators.

       --load FILE
	      Load the specified file before any command is run.

       --compile-binary	FILE OUT LUA_LIB LUA_DIR
	      Compile FILE to a	standalone binary OUT using  LUA_LIB  and  the
	      Lua header files in LUA_DIR. See --compile-binary	--help for de-
	      tails.

       --no-compiler-sandbox
	      Do  not  limit  compiler environment (used in macros) to minimal
	      sandbox.

       --keywords KEYWORD1[,KEYWORD2...]
	      Treat these symbols as reserved Lua keywords.

       -h, --help
	      Print a help message and exit

       -v, --version
	      Print the	version	number and exit

       Use the NO_COLOR	environment variable to	disable	escape codes in	 error
       messages.

SEE ALSO
       fennel-api(3), fennel-reference(5), fennel-tutorial(7)

       The  semantics are very close to	Lua, so	Lua's reference	manual is also
       helpful.

COMMUNITY
       The mailing list	is  at	https://lists.sr.ht/~technomancy/fennel	 while
       the  issue  tracker  is at https://todo.sr.ht/~technomancy/fennel. Most
       discussion happens on the #fennel channel of Libera chat.

AUTHORS
       Calvin	 Rose	  and	  Phil	   Hagelberg	 and	 contributors:
       https://github.com/bakpakin/Fennel/graphs/contributors

LICENSE
       Copyright  2016-2024, Released under the	MIT/X11	license

								     FENNEL(1)

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=fennel&sektion=1&manpath=FreeBSD+Ports+15.0>

home | help