on master help sign in
Merge pull request #3074 from jfdm/remove-old-things

Various Updates

commitbb4a84bd2d9d9a659793003179a31cc07c36ccca authorJan de Muijnck-Hughes <jfdm@users.noreply.github.com> dateTue 29 Mar 2016, 19:52 (11 years ago) parentc7bac292b79682
3 files changed+105−42
CHANGELOG+2 man/idris.1+32−2 src/Idris/CmdOptions.hs+71−40
CHANGELOG+2
@@ -9,6 +9,8 @@ New in 0.12:
99 logging level and categories, default totality check, warn reach,
1010 IBC output folder, and idris path.
1111
12+* Remove deprecated options `--ideslave` and `--ideslave-socket`. These options
13+ were replaced with `--ide-mode` and `--ide-mode-socket` in 0.9.17
1214
1315New in 0.11:
1416============
man/idris.1+32−2
@@ -1,6 +1,6 @@
11.\" Manpage for Idris.
22.\" Contact <> to correct errors or typos.
3−.TH man 1 "06 August 2014" "0.9.14.1" "Idris man page"
3+.TH man 1 "25 March 2016" "0.11" "Idris man page"
44.SH NAME
55idris -\ a general purpose pure functional programming language with dependent types.
66.SH SYNOPSIS
@@ -45,19 +45,37 @@ should not necessarily be seen as production ready nor for industrial use.
4545.SH OPTIONS
4646 --nobanner Suppress the banner
4747 -q,--quiet Quiet verbosity
48+ --ide-mode Run the Idris REPL with machine-readable syntax
49+ --ide-mode-socket Choose a socket for IDE mode to listen on
50+ --ideslave Deprecated version of --ide-mode
51+ --ideslave-socket Deprecated version of --ide-mode-socket
4852 --log LEVEL Debugging log level
53+ --logging-categories CATS
54+ Colon separated logging categories. Use --listlogcats
55+ to see list.
56+ --nobasepkgs Do not use the given base package
57+ --noprelude Do not use the given prelude
58+ --nobuiltins Do not use the builtin functions
59+ --check Typecheck only, don't start the REPL
4960 -o,--output FILE Specify output file
61+ --interface Generate interface files from ExportLists
62+ --typeintype Turn off Universe checking
5063 --total Require functions to be total by default
5164 --warnpartial Warn about undeclared partial functions
5265 --warnreach Warn about reachable but inaccessible arguments
66+ --listlogcats Display logging categories
5367 --link Display link flags
68+ --listlibs Display installed libraries
5469 --libdir Display library directory
5570 --include Display the includes flags
5671 -V,--verbose Loud verbosity
5772 --ibcsubdir FILE Write IBC files into sub directory
5873 -i,--idrispath ARG Add directory to the list of import paths
74+ -p,--package ARG Add package as a dependency
75+ --port PORT REPL TCP port
5976 --build IPKG Build package
6077 --install IPKG Install package
78+ --repl IPKG Launch REPL, only for executables
6179 --clean IPKG Clean package
6280 --mkdoc IPKG Generate IdrisDoc for package
6381 --checkpkg IPKG Check package only
@@ -65,19 +83,31 @@ should not necessarily be seen as production ready nor for industrial use.
6583 -S,--codegenonly Do no further compilation of code generator output
6684 -c,--compileonly Compile to object files rather than an executable
6785 --mvn Create a maven project (for Java codegen)
68− --codegen TARGET Select code generator: C, Java, bytecode
86+ --codegen TARGET Select code generator: C, Javascript, Node and
87+ bytecode are bundled with Idris
88+ --cg-opt ARG Arguments to pass to code generator
6989 -e,--eval EXPR Evaluate an expression without loading the REPL
7090 --execute Execute as idris
7191 --exec EXPR Execute as idris
7292 -X,--extension EXT Turn on language extension (TypeProviders or
7393 ErrorReflection)
94+ --no-partial-eval Switch off partial evaluation, mainly for debugging
95+ purposes
7496 --target TRIPLE Select target triple (for llvm codegen)
7597 --cpu CPU Select target CPU e.g. corei7 or cortex-m3 (for LLVM
7698 codegen)
7799 --color,--colour Force coloured output
78100 --nocolor,--nocolour Disable coloured output
101+ --consolewidth WIDTH Select console width: auto, infinite, nat
102+ --highlight Emit source code highlighting
103+ --no-elim-deprecation-warnings
104+ Disable deprecation warnings for %elim
105+ --no-tactic-deprecation-warnings
106+ Disable deprecation warnings for the old tactic
107+ sublanguage
79108 -v,--version Print version information
80109 -h,--help Show this help text
110+
81111.SH SEE ALSO
82112
83113+ The IDRIS web site (http://idris-lang.org/
src/Idris/CmdOptions.hs+71−40
@@ -28,7 +28,7 @@ runArgParser = do opts <- execParser $ info parser
2828 )
2929 return $ preProcOpts opts []
3030 where
31− idrisHeader = PP.hsep [PP.text "Idris version", PP.text ver, PP.text ", (C) The Idris Community 2014"]
31+ idrisHeader = PP.hsep [PP.text "Idris version", PP.text ver, PP.text ", (C) The Idris Community 2016"]
3232 idrisProgDesc = PP.vsep [PP.empty,
3333 PP.text "Idris is a general purpose pure functional programming language with dependent",
3434 PP.text "types. Dependent types allow types to be predicated on values, meaning that",
@@ -76,14 +76,15 @@ parser = runA $ proc () -> do
7676
7777parseFlags :: Parser [Opt]
7878parseFlags = many $
79− flag' NoBanner (long "nobanner" <> help "Suppress the banner")
80− <|> flag' Quiet (short 'q' <> long "quiet" <> help "Quiet verbosity")
79+ flag' NoBanner (long "nobanner" <> help "Suppress the banner")
80+ <|> flag' Quiet (short 'q' <> long "quiet" <> help "Quiet verbosity")
81+
8182 -- IDE Mode Specific Flags
82− <|> flag' Idemode (long "ide-mode" <> help "Run the Idris REPL with machine-readable syntax")
83+ <|> flag' Idemode (long "ide-mode" <> help "Run the Idris REPL with machine-readable syntax")
8384 <|> flag' IdemodeSocket (long "ide-mode-socket" <> help "Choose a socket for IDE mode to listen on")
84− <|> flag' Idemode (long "ideslave" <> help "Deprecated version of --ide-mode") -- TODO: Remove in v0.9.18
85− <|> flag' IdemodeSocket (long "ideslave-socket" <> help "Deprecated version of --ide-mode-socket") -- TODO: Remove in v0.9.18
85+
8686 <|> (Client <$> strOption (long "client"))
87+
8788 -- Logging Flags
8889 <|> (OLogging <$> option auto (long "log" <> metavar "LEVEL" <> help "Debugging log level"))
8990 <|> (OLogCats <$> option (str >>= parseLogCats)
@@ -91,71 +92,101 @@ parseFlags = many $
9192 <> metavar "CATS"
9293 <> help "Colon separated logging categories. Use --listlogcats to see list."))
9394
94− -- Turn off Certain libraries.
95+ -- Turn off things
9596 <|> flag' NoBasePkgs (long "nobasepkgs" <> help "Do not use the given base package")
96− <|> flag' NoPrelude (long "noprelude" <> help "Do not use the given prelude")
97+ <|> flag' NoPrelude (long "noprelude" <> help "Do not use the given prelude")
9798 <|> flag' NoBuiltins (long "nobuiltins" <> help "Do not use the builtin functions")
98− <|> flag' NoREPL (long "check" <> help "Typecheck only, don't start the REPL")
99+
100+ <|> flag' NoREPL (long "check" <> help "Typecheck only, don't start the REPL")
101+
99102 <|> (Output <$> strOption (short 'o' <> long "output" <> metavar "FILE" <> help "Specify output file"))
103+
100104 -- <|> flag' TypeCase (long "typecase")
101− <|> flag' Interface (long "interface" <> help "Generate interface files from ExportLists")
102− <|> flag' TypeInType (long "typeintype" <> help "Turn off Universe checking")
103− <|> flag' DefaultTotal (long "total" <> help "Require functions to be total by default")
105+ <|> flag' Interface (long "interface" <> help "Generate interface files from ExportLists")
106+ <|> flag' TypeInType (long "typeintype" <> help "Turn off Universe checking")
107+ <|> flag' DefaultTotal (long "total" <> help "Require functions to be total by default")
104108 <|> flag' DefaultPartial (long "partial")
105− <|> flag' WarnPartial (long "warnpartial" <> help "Warn about undeclared partial functions")
106− <|> flag' WarnReach (long "warnreach" <> help "Warn about reachable but inaccessible arguments")
107− <|> flag' NoCoverage (long "nocoverage")
108− <|> flag' ErrContext (long "errorcontext")
109+ <|> flag' WarnPartial (long "warnpartial" <> help "Warn about undeclared partial functions")
110+ <|> flag' WarnReach (long "warnreach" <> help "Warn about reachable but inaccessible arguments")
111+ <|> flag' NoCoverage (long "nocoverage")
112+ <|> flag' ErrContext (long "errorcontext")
113+
109114 -- Show things
110− <|> flag' ShowLoggingCats (long "listlogcats" <> help "Display logging categories")
111− <|> flag' ShowLibs (long "link" <> help "Display link flags")
112− <|> flag' ShowPkgs (long "listlibs" <> help "Display installed libraries")
113− <|> flag' ShowLibdir (long "libdir" <> help "Display library directory")
114− <|> flag' ShowIncs (long "include" <> help "Display the includes flags")
115− <|> flag' Verbose (short 'V' <> long "verbose" <> help "Loud verbosity")
115+ <|> flag' ShowLoggingCats (long "listlogcats" <> help "Display logging categories")
116+ <|> flag' ShowLibs (long "link" <> help "Display link flags")
117+ <|> flag' ShowPkgs (long "listlibs" <> help "Display installed libraries")
118+ <|> flag' ShowLibdir (long "libdir" <> help "Display library directory")
119+ <|> flag' ShowIncs (long "include" <> help "Display the includes flags")
120+
121+ <|> flag' Verbose (short 'V' <> long "verbose" <> help "Loud verbosity")
122+
116123 <|> (IBCSubDir <$> strOption (long "ibcsubdir" <> metavar "FILE" <> help "Write IBC files into sub directory"))
117124 <|> (ImportDir <$> strOption (short 'i' <> long "idrispath" <> help "Add directory to the list of import paths"))
125+
118126 <|> flag' WarnOnly (long "warn")
119− <|> (Pkg <$> strOption (short 'p' <> long "package" <> help "Add package as a dependency"))
127+
128+ <|> (Pkg <$> strOption (short 'p' <> long "package" <> help "Add package as a dependency"))
120129 <|> (Port <$> strOption (long "port" <> metavar "PORT" <> help "REPL TCP port"))
130+
121131 -- Package commands
122− <|> (PkgBuild <$> strOption (long "build" <> metavar "IPKG" <> help "Build package"))
123− <|> (PkgInstall <$> strOption (long "install" <> metavar "IPKG" <> help "Install package"))
124− <|> (PkgREPL <$> strOption (long "repl" <> metavar "IPKG" <> help "Launch REPL, only for executables"))
125− <|> (PkgClean <$> strOption (long "clean" <> metavar "IPKG" <> help "Clean package"))
126− <|> (PkgMkDoc <$> strOption (long "mkdoc" <> metavar "IPKG" <> help "Generate IdrisDoc for package"))
127− <|> (PkgCheck <$> strOption (long "checkpkg" <> metavar "IPKG" <> help "Check package only"))
128− <|> (PkgTest <$> strOption (long "testpkg" <> metavar "IPKG" <> help "Run tests for package"))
132+ <|> (PkgBuild <$> strOption (long "build" <> metavar "IPKG" <> help "Build package"))
133+ <|> (PkgInstall <$> strOption (long "install" <> metavar "IPKG" <> help "Install package"))
134+ <|> (PkgREPL <$> strOption (long "repl" <> metavar "IPKG" <> help "Launch REPL, only for executables"))
135+ <|> (PkgClean <$> strOption (long "clean" <> metavar "IPKG" <> help "Clean package"))
136+ <|> (PkgMkDoc <$> strOption (long "mkdoc" <> metavar "IPKG" <> help "Generate IdrisDoc for package"))
137+ <|> (PkgCheck <$> strOption (long "checkpkg" <> metavar "IPKG" <> help "Check package only"))
138+ <|> (PkgTest <$> strOption (long "testpkg" <> metavar "IPKG" <> help "Run tests for package"))
139+
129140 -- Misc options
130141 <|> (BCAsm <$> strOption (long "bytecode"))
131− <|> flag' (OutputTy Raw) (short 'S' <> long "codegenonly" <> help "Do no further compilation of code generator output")
132− <|> flag' (OutputTy Object) (short 'c' <> long "compileonly" <> help "Compile to object files rather than an executable")
133− <|> flag' (OutputTy MavenProject) (long "mvn" <> help "Create a maven project (for Java codegen)")
142+
143+ <|> flag' (OutputTy Raw) (short 'S' <> long "codegenonly" <> help "Do no further compilation of code generator output")
144+ <|> flag' (OutputTy Object) (short 'c' <> long "compileonly" <> help "Compile to object files rather than an executable")
145+ <|> flag' (OutputTy MavenProject) (long "mvn" <> help "Create a maven project (for Java codegen)")
146+
134147 <|> (DumpDefun <$> strOption (long "dumpdefuns"))
135148 <|> (DumpCases <$> strOption (long "dumpcases"))
136− <|> ((\s -> UseCodegen $ parseCodegen s) <$> strOption (long "codegen" <> metavar "TARGET" <> help "Select code generator: C, Javascript, Node and bytecode are bundled with Idris"))
137− <|> (CodegenArgs <$> strOption (long "cg-opt" <> metavar "ARG" <> help "Arguments to pass to code generator"))
149+
150+ <|> ((\s -> UseCodegen $ parseCodegen s) <$> strOption (long "codegen"
151+ <> metavar "TARGET"
152+ <> help "Select code generator: C, Javascript, Node and bytecode are bundled with Idris"))
153+ <|> (CodegenArgs <$> strOption (long "cg-opt"
154+ <> metavar "ARG"
155+ <> help "Arguments to pass to code generator"))
156+
138157 <|> (EvalExpr <$> strOption (long "eval" <> short 'e' <> metavar "EXPR" <> help "Evaluate an expression without loading the REPL"))
158+
139159 <|> flag' (InterpretScript "Main.main") (long "execute" <> help "Execute as idris")
140− <|> (InterpretScript <$> strOption (long "exec" <> metavar "EXPR" <> help "Execute as idris"))
141− <|> ((\s -> Extension $ getExt s) <$> strOption (long "extension" <> short 'X' <> metavar "EXT" <> help "Turn on language extension (TypeProviders or ErrorReflection)"))
160+ <|> (InterpretScript <$> strOption (long "exec" <> metavar "EXPR" <> help "Execute as idris"))
161+
162+ <|> ((\s -> Extension $ getExt s) <$> strOption (long "extension"
163+ <> short 'X'
164+ <> metavar "EXT"
165+ <> help "Turn on language extension (TypeProviders or ErrorReflection)"))
166+
142167 -- Optimisation Levels
143168 <|> flag' (OptLevel 3) (long "O3")
144169 <|> flag' (OptLevel 2) (long "O2")
145170 <|> flag' (OptLevel 1) (long "O1")
146171 <|> flag' (OptLevel 0) (long "O0")
172+
147173 <|> flag' (AddOpt PETransform) (long "partial-eval")
148174 <|> flag' (RemoveOpt PETransform) (long "no-partial-eval" <> help "Switch off partial evaluation, mainly for debugging purposes")
175+
149176 <|> (OptLevel <$> option auto (short 'O' <> long "level"))
177+
150178 <|> (TargetTriple <$> strOption (long "target" <> metavar "TRIPLE" <> help "Select target triple (for llvm codegen)"))
151− <|> (TargetCPU <$> strOption (long "cpu" <> metavar "CPU" <> help "Select target CPU e.g. corei7 or cortex-m3 (for LLVM codegen)"))
179+ <|> (TargetCPU <$> strOption (long "cpu" <> metavar "CPU" <> help "Select target CPU e.g. corei7 or cortex-m3 (for LLVM codegen)"))
180+
152181 -- Colour Options
153− <|> flag' (ColourREPL True) (long "colour" <> long "color" <> help "Force coloured output")
182+ <|> flag' (ColourREPL True) (long "colour" <> long "color" <> help "Force coloured output")
154183 <|> flag' (ColourREPL False) (long "nocolour" <> long "nocolor" <> help "Disable coloured output")
155184
156185 <|> (UseConsoleWidth <$> option (str >>= parseConsoleWidth) (long "consolewidth" <> metavar "WIDTH" <> help "Select console width: auto, infinite, nat"))
186+
157187 <|> flag' DumpHighlights (long "highlight" <> help "Emit source code highlighting")
158− <|> flag' NoElimDeprecationWarnings (long "no-elim-deprecation-warnings" <> help "Disable deprecation warnings for %elim")
188+
189+ <|> flag' NoElimDeprecationWarnings (long "no-elim-deprecation-warnings" <> help "Disable deprecation warnings for %elim")
159190 <|> flag' NoOldTacticDeprecationWarnings (long "no-tactic-deprecation-warnings" <> help "Disable deprecation warnings for the old tactic sublanguage")
160191
161192 where