<!doctype refentry PUBLIC "-//OASIS//DTD DocBook V4.1//EN" [

  <!ENTITY dhfirstname "<firstname>Siggy</firstname>">
  <!ENTITY dhsurname   "<surname>Brentrup</surname>">
  <!-- Please adjust the date whenever revising the manpage. -->
  <!ENTITY dhdate      "<date>May 20, 2003</date>">
  <!ENTITY dhsection   "<manvolnum>1</manvolnum>">
  <!ENTITY dhemail     "<email>bsb@debian.org</email>">
  <!ENTITY dhusername  "Siggy Brentrup">
  <!ENTITY dhucpackage "<refentrytitle>STYX</refentrytitle>">
  <!ENTITY dhpackage   "styx">

  <!ENTITY debian      "<productname>Debian GNU/Linux</productname>">
  <!ENTITY gnu         "<acronym>GNU</acronym>">
]>
<refentry>
  <refentryinfo>
    <address>
      &dhemail;
    </address>
    <author>
      &dhfirstname;
      &dhsurname;
    </author>
    <copyright>
      <year>2002</year>
      <holder>&dhusername;</holder>
    </copyright>
    &dhdate;
  </refentryinfo>
  <refmeta>
    &dhucpackage;

    &dhsection;
  </refmeta>
  <refnamediv>
    <refname>&dhpackage;</refname>

    <refpurpose>A combined parser and scanner generator</refpurpose>
  </refnamediv>
  <refsynopsisdiv>
    <cmdsynopsis>
      <command>styx</command>
      <arg><option>-diagnose</option></arg>
      <arg><option>-verbose</option></arg>
      <arg><option>-makeC</option></arg>
      <arg><option>-makeIMG</option></arg>
      <arg><option>-makeINT</option></arg>
      <arg><option>-shortform</option></arg>
      <arg><option>-BINSTYX=</option><replaceable>directory</replaceable></arg>
      <arg><option>-GENSTYX=</option><replaceable>directory</replaceable></arg>
      <arg><option>-SPESTYX=</option><replaceable>directory</replaceable></arg>
      <group choice="plain"><arg><replaceable>language</replaceable></arg></group>
    </cmdsynopsis>


    <cmdsynopsis>
      <command>stypp</command>
      <arg><option>-charset=</option><replaceable>string</replaceable></arg>
      <arg><option>-wprint</option></arg>
      <arg><option>-prepar=</option><replaceable>string</replaceable></arg>
      <arg><option>-premac=</option><replaceable>string</replaceable></arg>
      <arg><option>-prefun=</option><replaceable>string</replaceable></arg>
      <arg><option>-Start=</option><replaceable>string</replaceable></arg>
      <arg><option>-xaron</option></arg>
      <arg><option>-early</option></arg>
      <arg><option>-shiftfun=</option><replaceable>string</replaceable></arg>
      <arg><option>-reducefun=</option><replaceable>string</replaceable></arg>
      <arg><option>-ppfun=</option><replaceable>string</replaceable></arg>
      <arg><option>-BINSTYX=</option><replaceable>path</replaceable></arg>
      <group choice="plain"><arg><replaceable>srclang</replaceable></arg></group>
      <group choice="plain"><arg><replaceable>tgtlang</replaceable></arg></group>
      <group choice="plain"><arg><replaceable>filename</replaceable></arg></group>
    </cmdsynopsis>

    <cmdsynopsis>
      <command>stydoc</command>
      <arg><option>-StyxPath=</option><replaceable>path</replaceable></arg>
      <arg><option>-Template=</option><replaceable>path</replaceable></arg>
      <arg><option>-RefAlias=</option><replaceable>string</replaceable></arg>
      <arg><option>-recursiv</option></arg>
      <arg><option>-prodcom</option></arg>
      <arg><option>-keepNTs=</option><replaceable>string</replaceable></arg>
      <arg><option>-noClass=</option><replaceable>string</replaceable></arg>
      <arg><option>-exProds=</option><replaceable>string</replaceable></arg>
      <arg><option>-ignRRef=</option><replaceable>string</replaceable></arg>
      <arg><option>-BINSTYX=</option><replaceable>path</replaceable></arg>
      <group choice="plain"><arg><replaceable>grammarfile</replaceable></arg></group>
      <group choice="plain"><arg><replaceable>outfile</replaceable></arg></group>
    </cmdsynopsis>

    <cmdsynopsis>
      <command>ctoh</command>
      <arg><option>-ct</option></arg>
      <arg><option>-force</option></arg>
      <arg><option>-CPATH=</option><replaceable>path</replaceable></arg>
      <arg><option>-HPATH=</option><replaceable>path</replaceable></arg>
      <arg><option>-PRJ=</option><replaceable>path</replaceable></arg>
      <arg><option>-DPATH=</option><replaceable>path</replaceable></arg>
      <arg><option>-DROOT=</option><replaceable>path</replaceable></arg>
    </cmdsynopsis>

    <cmdsynopsis>
      <command>ptm_img</command>
      <arg><option>-FileName=</option><replaceable>path</replaceable></arg>
      <arg><option>-charset=</option><replaceable>string</replaceable></arg>
      <arg><option>-skipset=</option><replaceable>string</replaceable></arg>
      <arg><option>-binmode</option></arg>
      <arg><option>-wprint</option></arg>
      <arg><option>-prepar=</option><replaceable>string</replaceable></arg>
      <arg><option>-premac=</option><replaceable>string</replaceable></arg>
      <arg><option>-prefun=</option><replaceable>string</replaceable></arg>
      <arg><option>-Start=</option><replaceable>string</replaceable></arg>
      <arg><option>-xaron</option></arg>
      <arg><option>-early</option></arg>
      <arg><option>-shiftfun=</option><replaceable>string</replaceable></arg>
      <arg><option>-reducefun=</option><replaceable>string</replaceable></arg>
      <arg><option>-BINSTYX=</option><replaceable>path</replaceable></arg>
      <group choice="plain"><arg><replaceable>language</replaceable></arg></group>
      <group choice="plain"><arg><replaceable>image</replaceable></arg></group>
    </cmdsynopsis>

    <cmdsynopsis>
      <command>lim_test</command>
      <arg><option>-charset=</option><replaceable>string</replaceable></arg>
      <arg><option>-binmode</option></arg>
      <arg><option>-wprint</option></arg>
      <arg><option>-prepar=</option><replaceable>string</replaceable></arg>
      <arg><option>-premac=</option><replaceable>string</replaceable></arg>
      <arg><option>-prefun=</option><replaceable>string</replaceable></arg>
      <arg><option>-tokens</option></arg>
      <arg><option>-symbols</option></arg>
      <arg><option>-BINSTYX=</option><replaceable>path</replaceable></arg>
      <group choice="plain"><arg><replaceable>language</replaceable></arg></group>
      <group choice="plain"><arg><replaceable>filename</replaceable></arg></group>
    </cmdsynopsis>

    <cmdsynopsis>
      <command>pim_test</command>
      <arg><option>-charset=</option><replaceable>string</replaceable></arg>
      <arg><option>-binmode</option></arg>
      <arg><option>-wprint</option></arg>
      <arg><option>-prepar=</option><replaceable>string</replaceable></arg>
      <arg><option>-premac=</option><replaceable>string</replaceable></arg>
      <arg><option>-prefun=</option><replaceable>string</replaceable></arg>
      <arg><option>-Start=</option><replaceable>string</replaceable></arg>
      <arg><option>-xaron</option></arg>
      <arg><option>-early</option></arg>
      <arg><option>-shiftfun=</option><replaceable>string</replaceable></arg>
      <arg><option>-reducefun=</option><replaceable>string</replaceable></arg>
      <arg><option>-tree</option></arg>
      <arg><option>-BINSTYX=</option><replaceable>path</replaceable></arg>
      <group choice="plain"><arg><replaceable>language</replaceable></arg></group>
      <group choice="plain"><arg><replaceable>filename</replaceable></arg></group>
    </cmdsynopsis>
  </refsynopsisdiv>
  <refsect1>
    <title>DESCRIPTION</title>

    <para>This manual page documents briefly the
      <command>styx</command>,
      <command>stypp</command>,
      <command>stydoc</command>,
      <command>ctoh</command>,
      <command>lim_test</command> and
      <command>pim_test</command>
      commands.
      It was written for the &debian; distribution because the
      original programs don't have manual pages, but have
      documentation in HTML format (see below).</para>

    <para><command>styx</command> translates token and syntax
    descriptions contained in
    $SPESTYX/language.sty yielding scanner and
    parser tables as well as a functional interface to the abstract
    derivation tree.</para>

    <para><command>stypp</command> is sort of a <quote>pretty
    printer</quote> for source files written in a styx-defined
    language. Furthermore it can be used to port source files,
    provided source and target languages have equivalent abstract
    syntax.</para>

    <para><command>stydoc</command> generates HTML reference
    documentation for a grammar specified in grammarfile using a
    template.</para>

    <para><command>ctoh</command> is used to create header files from
    C sources generated by <command>styx</command>. It is taken from
    the upstream author's own project development environment where
    source files are written in a manner allowing interface
    definitions to be automatically generated.</para>

    <para><command>ptm_img</command> translates a source file
    specified by the FileName option to a binary image. If the
    FileName option is omitted, the <citation>image</citation> file
    must exist and the program writes the derivation tree to
    stdout.</para>

    <para><command>lim_test</command> uses a scanner image file for
    <citation>language</citation> to scan the source in
    <citation>filename</citation> writing the token stream to
    stdout.</para>

    <para><command>pim_test</command> uses scanner and parser image files for
    <citation>language</citation> to parse the source in
    <citation>filename</citation> writing the derivation tree to
    stdout.</para>

  </refsect1>
  <refsect1>
    <title>ENVIRONMENT</title>

    <para>Upstream authors use non-standard conventions for command-line
    options and environment variables, to the effect that the latter are
    best viewed as options which default to the value of the
    identically named environment variable if not specified.</para>

    <para>For <command>styx</command>, <varname>SPESTYX</varname> is
    the search path for language specifications
    (<citation>language</citation>.sty), scanner and parser image
    files are located using <varname>BINSTYX</varname> while the
    location of generated C code is determined by
    <varname>GENSTYX</varname>.</para>

    <para><command>stypp</command>, <command>stydoc</command>,
    <command>ptm_img</command>, <command>lim_test</command> and
    <command>pim_test</command> use <varname>BINSTYX</varname> to
    locate scanner and parser image files
    <citation>language</citation>.lim and
    <citation>language</citation>.pim.</para>

  </refsect1>
  <refsect1>
    <title>SEE ALSO</title>

    <para>The programs are documented fully in <citetitle>The Styx
    Handbook</citetitle> available in the source distribution in
    <acronym>LinuxDoc</acronym> and <acronym>HTML</acronym> format. On
    &debian; systems the documentation is contained in the
    <citation>styx-doc</citation> package.</para>

  </refsect1>
  <refsect1>
    <title>AUTHOR</title>

    <para>This manual page was written by &dhusername;
    &lt;&dhemail;&gt; for the &debian; system (but may be used by
    others).  Permission is granted to copy, distribute and/or modify
    this document under the terms of the <acronym>GNU</acronym> Free
    Documentation License, Version 1.1 or any later version published
    by the Free Software Foundation; with no Invariant Sections, no
    Front-Cover Texts and no Back-Cover Texts.</para>

  </refsect1>
</refentry>

<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:2
sgml-indent-data:t
sgml-parent-document:nil
sgml-default-dtd-file:nil
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
-->
