<sect1><title>Invocation</title>

<cmdsynopsis>
<command>nickle</command>
<arg>-f <replaceable>file</replaceable></arg>
<arg>-l <replaceable>file</replaceable></arg>
<arg>-e <replaceable>expr</replaceable></arg>
<arg><replaceable>script</replaceable></arg>
<arg>--</arg>
<arg><replaceable>arg ...</replaceable></arg>
</cmdsynopsis>

<variablelist>

<varlistentry><term><literal>-f</literal></term>
<listitem><para>
Evaluate <replaceable>file</replaceable>.
</para></listitem>
</varlistentry>

<varlistentry><term><literal>-l</literal></term>
<listitem><para>
Evaluate <replaceable>file</replaceable> like <literal>-f</literal>, but expect it to be in <literal>$NICKLEPATH</literal>.
</para></listitem>
</varlistentry>

<varlistentry><term><literal>-e</literal></term>
<listitem>
<para>
Evaluate a Nickle expression, e.g.
</para>
<informalexample><screen>
$ nickle -e 3**4
81
$
</screen></informalexample>
</listitem>
</varlistentry>

<varlistentry><term><literal>script</literal></term>
<listitem><para>
If Nickle encounters an unflagged argument, it assumes it to be the name of a script, which it runs.
If a <literal>.nicklerc</literal> file is available, it will
be evaluated first.
No more arguments are processed; the rest of the line is given to the script as its arguments.
</para></listitem>
</varlistentry>

</variablelist>

<para>
Without <literal>-e</literal> or a script as an argument, Nickle runs interactively, accepting standard input and writing to standard output.
</para>

</sect1>
