---
name: "fdscript"
section: "1"
platform: "linux"
package: "framerd"
version: "2.4.1-1.1"
release: "Debian 3.1 (Sarge)"
platforms: ["linux"]
url: "https://new.carta.tech/fdscript"
---

# fdscript(1)

start an FDscript interpreter

## NAME

fdscript - start an FDscript interpreter

## SYNOPSIS

**fdscript \[--noprofile\] \[--noconfig\] \[--noherald\] \[-x** *charset* **\] \[-m** *module* **\]\* \[-f** *file* **\]\* \[-g** *config\_file* **\]\* \[** *var* **=** *val* **\]\* \[** *filename* **\]** *arguments* **...**

The module, file, config, and variable binding options may be intermixed and are processed from left to right before  *filename* is loaded or the interactive interpreter is started.

## DESCRIPTION

**fdscript** starts an fdscript interpreter either interactively or by reading commands from the file *filename.* The scheme variables  **args** and **nargs** are bound to the specified  *arguments* provided on the command line.  The interpreter is interactive if either *filename* is not given or is either a single dash ("-") or a single dot ("."). In either case, the files or modules specified by the other options are processed first, as are any Scheme variable assignments specified on the command line.

If *filename* is provided and defines a Scheme procedure **main,** it is applied to the given *arguments* after *filename* has been read.

The additional *arguments* are interpreted with two special conventions.  An argument specified by a single dollar sign ($) is bound to the entire standard input, read as a string; an argument specified by a single dash (-), reads a series of lisp objects from the standard input and binds the corresponding argument to those objects as a *choice.*

If *filename* is a single dash (-), the interactive read-eval-print loop will proceed without any prompts, simply reading values and printing results; if the argument is a single period ("."), a prompt will be displayed but command line arguments after the period will be processed into **args** Finally, if there is no filename argument, a prompt will be issued when the interpreter is ready for a result and (if available) the GNU readline commands will be available for input editing.

## OPTIONS

- \--noconfig

  Do not load the system configuration file

- \--noprofile

  When running interactively, do not load the users **.fdprofile** file

- \--noherald

  Do not output the FramerD library herald and copyright notice

- \-x charset

  - \--charset charset

  Use the character encoding *charset* as the default encoding, especially for interaction with the console (stdio and stderr).

- \-m module

  Load the FDScript module *module* and have its exported symbols accessible to the interpreter environment.

- \-c config\_file

  - \--config=config\_file

  Load the config file *config\_file* into the global environment.  See **fdconfig**(2) for more details.

- \-f scheme-file

  - \--file scheme-file

  Load the scheme file *scheme-file* into the default environment

- var=val

  - \-Dvar=val

  Bind the global variable *var* to *val*

## FILES

*framerd.cfg* The system wide configuration file, in the common installation directory.  See **fdconfig**(5) and [**fdconfig**(1)](/fdconfig/1.md) for futher details *~/.fdprofile*

The users's individual configuration file

## ENVIRONMENT

- ALWAYS\_BUSY

  Determines whether, in interactive mode with a prompt,

- FRAMERD\_CONFIG

  Overrides the default location of the system configuration file

- DEBUG\_FRAMERD

  Output a backtrace when an error occurs.

## CONFIG VARIABLES

- %DEBUG

  Output a backtrace when an error occurs.

## BUGS

None known.

## Revision Info

**$Id: fdscript.1,v 1.5 2002/07/10 00:13:11 haase Exp $**

## AUTHOR

Ken Haase \< kh@beingmeta.com \>

## SEE ALSO

**framerd**(7) [**dtcall**(1)](/dtcall/1.md)
