diff --git a/ChangeLog.md b/ChangeLog.md index 46ddcea..1b447b9 100644 --- a/ChangeLog.md +++ b/ChangeLog.md @@ -1,3 +1,10 @@ +## 0.2.0.0 + +* Removed 'Flag'. +* Changed notation: 'Named' is now '(:!)' in types, 'Arg' in patterns. +* Added 'arg', 'argF'. +* Support for optional parameters: see 'argDef', 'defaults', '(:?)'. + ## 0.1.0.0 * First version. Released on an unsuspecting world. diff --git a/src/Named/Internal.hs b/src/Named/Internal.hs index 3282a68..5cef1e8 100644 --- a/src/Named/Internal.hs +++ b/src/Named/Internal.hs @@ -181,13 +181,16 @@ argF _ (ArgF fa) = fa {- | -A variation of 'arg' for optional arguments. Requires a default value in case -the optional argument is missing: +A variation of 'arg' for optional arguments. Requires a default value to handle +the case when the optional argument was omitted: @ fn (argDef \#answer 42 -> ans) = ... @ +In case you want to get a value wrapped in 'Maybe' instead, use 'argF' or +'ArgF'. + -} argDef :: Name name -> a -> name :? a -> a argDef _ d (ArgF fa) = fromMaybe d fa