Difference between revisions of "Yhc/Options"
< Yhc
Jump to navigation
Jump to search
Tomjaguarpaw (talk | contribs) (Deleting page that hasn't been updated for over 10 years) |
m (Reverted edits by Tomjaguarpaw (talk) to last revision by Kevin Reid) |
||
Line 1: | Line 1: | ||
+ | Command syntax: |
||
+ | yhc [options] file |
||
+ | |||
+ | file: Name of the source file to compile, i.e. main.hs |
||
+ | options: a list of options |
||
+ | --flag turn on an option |
||
+ | --noflag turn off an option |
||
+ | --flag value pass a value as the flag |
||
+ | |||
+ | Path Options: |
||
+ | -I --includes str Include directories |
||
+ | -P --preludes str Prelude directories |
||
+ | -d --dst str destination path for generated bytecode files (default=.) |
||
+ | -i --hidst str destinated path for generated .hi file (default=.) |
||
+ | -w --wrapdst str destination path for generated FFI wrapper (default=.) |
||
+ | --hide hide object files (default=off) |
||
+ | |||
+ | Generation Options: |
||
+ | --hat compile with Hat debugging support (default=off) |
||
+ | --dotnet Generate .NET IL code (default=off) |
||
+ | -W --genwrapper generate FFI wrapper (default=off) |
||
+ | --hi-suffix str change the default ".hi" suffix (default=hi) |
||
+ | --exportall export all identifiers from a module, despite what the |
||
+ | export list says (default=off) |
||
+ | |||
+ | Action Flags: |
||
+ | --viewcore str View Core file (.ycr) |
||
+ | -c --compile Compile one file only (default=off) |
||
+ | |||
+ | Compilation Options: |
||
+ | --redefine Don't complain if redefining an imported identifier |
||
+ | (default=off) |
||
+ | --unix Use unix file names (default=on) |
||
+ | --unlit Unliterate the source code (default=off) |
||
+ | --cpp Pre-process the file first (default=off) |
||
+ | --prelude Keep prelude definitions in interface file (default=off) |
||
+ | --lib Compiling a lib, don't complain if importing modules with |
||
+ | names that differs from their filename. (default=off) |
||
+ | --unifyhack Enable nasty type hack that's needed to make the prelude |
||
+ | compile ... (default=off) |
||
+ | |||
+ | Compliance Options: |
||
+ | --underscore Enable H'98 underscore-is-lower-case (default=off) |
||
+ | --puns Enable pre-98 named-field puns (default=on) |
||
+ | --98 Haskell 98 compliance (default=off) |
||
+ | |||
+ | Help Options: |
||
+ | -v --version Show version information (default=off) |
||
+ | -? --help Show all options and useage information (default=off) |
||
+ | |||
+ | Core Options: |
||
+ | --core generate a .ycr binary file (default=off) |
||
+ | --showcore show the Core language (default=off) |
||
+ | --linkcore generate a linked .yca binary file (default=off) |
||
+ | |||
+ | Debug Options: |
||
+ | --lex show lexical input (default=off) |
||
+ | --parse show syntax tree after parser (default=off) |
||
+ | --need show need table before import (default=off) |
||
+ | --ineed show need table after import (default=off) |
||
+ | --irename show rename table after import (default=off) |
||
+ | --iineed show need table between all import files (default=off) |
||
+ | --iirename show rename table between all imports (default=off) |
||
+ | --rename show syntax tree after rename (default=off) |
||
+ | --derive show syntax tree after derive (default=off) |
||
+ | --remove show syntax tree after fields are removed (translated into |
||
+ | selectors) (default=off) |
||
+ | --scc show syntax tree after splitting into strongly connected |
||
+ | groups (default=off) |
||
+ | --type show syntax tree after type check (default=off) |
||
+ | --fixsyntax show syntax tree after removing newtype constructors and |
||
+ | fixing Class.Type.metod (default=off) |
||
+ | --lift show syntax tree after lambda lifting (default=off) |
||
+ | --case show stg tree after simplification of patterns |
||
+ | (default=off) |
||
+ | --prim show stg tree after inserting primitive functions |
||
+ | (default=off) |
||
+ | --bcodecompile show B code after compile (default=off) |
||
+ | --bcodemem show B code after heap usage analysis (default=off) |
||
+ | --bcodeflatten show B code after flattening (default=off) |
||
+ | --bcoderel show B code after converting to relative jumps |
||
+ | (default=off) |
||
+ | --keepcase Don't lift case, we fix those later (default=off) |
||
+ | --arity show stg tree after arity (default=off) |
||
+ | --ibound show symbol table after import (default=off) |
||
+ | --iibound show symbol table between all import files (default=off) |
||
+ | --rbound show symbol table after rename (default=off) |
||
+ | --dbound show symbol table after derive (default=off) |
||
+ | --pbound show symbol table after inserting primitive functions |
||
+ | (default=off) |
||
+ | --ebound show symbol table after extract (default=off) |
||
+ | --tbound show symbol table after type check (default=off) |
||
+ | --fsbound show symbol table after adding Class.Type.method info |
||
+ | (default=off) |
||
+ | --lbound show symbol table after lambda lifting (default=off) |
||
+ | --cbound show symbol table after simplification of pattern |
||
+ | (default=off) |
||
+ | --abound show symbol table after only atoms in applications |
||
+ | (default=off) |
||
+ | --import print name of imported files (default=off) |
||
+ | --depend print imported identifiers that are used (not even alpha |
||
+ | yet) (default=off) |
||
+ | --free show stg tree with explicitly free variables (default=off) |
||
+ | --atom show stg tree after only atoms in applications |
||
+ | (default=off) |
||
+ | --funnames insert position and name of functions in the code |
||
+ | (default=off) |
||
+ | --ilex show lexical input (default=off) |
||
+ | --report-imports show only imports actually used (default=off) |
||
+ | --showtype report type of "main" (default=off) |
||
+ | --showwidth num set width for showing intermediate program (default=80) |
||
+ | --showindent num set indentation for nesting (default=2) |
||
+ | --showqualified show qualified ids as far as possible (default=on) |
||
+ | |||
+ | |||
+ | |||
+ | Environment variables: |
||
+ | |||
+ | YHC_BASE_PATH The path to the Yhc compiler base directory |
||
+ | PATH The search path is used to find the compiler, |
||
+ | if YHC_BASE_PATH is not specified |
Latest revision as of 15:19, 6 February 2021
Command syntax:
yhc [options] file
file: Name of the source file to compile, i.e. main.hs options: a list of options
--flag turn on an option --noflag turn off an option --flag value pass a value as the flag
Path Options:
-I --includes str Include directories -P --preludes str Prelude directories -d --dst str destination path for generated bytecode files (default=.) -i --hidst str destinated path for generated .hi file (default=.) -w --wrapdst str destination path for generated FFI wrapper (default=.) --hide hide object files (default=off)
Generation Options:
--hat compile with Hat debugging support (default=off) --dotnet Generate .NET IL code (default=off) -W --genwrapper generate FFI wrapper (default=off) --hi-suffix str change the default ".hi" suffix (default=hi) --exportall export all identifiers from a module, despite what the export list says (default=off)
Action Flags:
--viewcore str View Core file (.ycr) -c --compile Compile one file only (default=off)
Compilation Options:
--redefine Don't complain if redefining an imported identifier (default=off) --unix Use unix file names (default=on) --unlit Unliterate the source code (default=off) --cpp Pre-process the file first (default=off) --prelude Keep prelude definitions in interface file (default=off) --lib Compiling a lib, don't complain if importing modules with names that differs from their filename. (default=off) --unifyhack Enable nasty type hack that's needed to make the prelude compile ... (default=off)
Compliance Options:
--underscore Enable H'98 underscore-is-lower-case (default=off) --puns Enable pre-98 named-field puns (default=on) --98 Haskell 98 compliance (default=off)
Help Options:
-v --version Show version information (default=off) -? --help Show all options and useage information (default=off)
Core Options:
--core generate a .ycr binary file (default=off) --showcore show the Core language (default=off) --linkcore generate a linked .yca binary file (default=off)
Debug Options:
--lex show lexical input (default=off) --parse show syntax tree after parser (default=off) --need show need table before import (default=off) --ineed show need table after import (default=off) --irename show rename table after import (default=off) --iineed show need table between all import files (default=off) --iirename show rename table between all imports (default=off) --rename show syntax tree after rename (default=off) --derive show syntax tree after derive (default=off) --remove show syntax tree after fields are removed (translated into selectors) (default=off) --scc show syntax tree after splitting into strongly connected groups (default=off) --type show syntax tree after type check (default=off) --fixsyntax show syntax tree after removing newtype constructors and fixing Class.Type.metod (default=off) --lift show syntax tree after lambda lifting (default=off) --case show stg tree after simplification of patterns (default=off) --prim show stg tree after inserting primitive functions (default=off) --bcodecompile show B code after compile (default=off) --bcodemem show B code after heap usage analysis (default=off) --bcodeflatten show B code after flattening (default=off) --bcoderel show B code after converting to relative jumps (default=off) --keepcase Don't lift case, we fix those later (default=off) --arity show stg tree after arity (default=off) --ibound show symbol table after import (default=off) --iibound show symbol table between all import files (default=off) --rbound show symbol table after rename (default=off) --dbound show symbol table after derive (default=off) --pbound show symbol table after inserting primitive functions (default=off) --ebound show symbol table after extract (default=off) --tbound show symbol table after type check (default=off) --fsbound show symbol table after adding Class.Type.method info (default=off) --lbound show symbol table after lambda lifting (default=off) --cbound show symbol table after simplification of pattern (default=off) --abound show symbol table after only atoms in applications (default=off) --import print name of imported files (default=off) --depend print imported identifiers that are used (not even alpha yet) (default=off) --free show stg tree with explicitly free variables (default=off) --atom show stg tree after only atoms in applications (default=off) --funnames insert position and name of functions in the code (default=off) --ilex show lexical input (default=off) --report-imports show only imports actually used (default=off) --showtype report type of "main" (default=off) --showwidth num set width for showing intermediate program (default=80) --showindent num set indentation for nesting (default=2) --showqualified show qualified ids as far as possible (default=on)
Environment variables:
YHC_BASE_PATH The path to the Yhc compiler base directory PATH The search path is used to find the compiler, if YHC_BASE_PATH is not specified