named: Named parameters (keyword arguments) for Haskell

This is a package candidate release! Here you can preview how this package release will appear once published to the main package index (which can be accomplished via the 'maintain' link below). Please note that once a package has been published to the main package index it cannot be undone! Please consult the package uploading documentation for more information.

[maintain] [Publish]

named is a lightweight library for named function parameters (keyword arguments) based on overloaded labels. Keyword arguments have several advantages over positional arguments:

Unlike newtype wrappers, keyword arguments don't pollute the global namespace, don't require top-level definitions, and don't need to be exported.

This implementation of named parameters is typesafe, provides good type inference, descriptive type errors, and has no runtime overhead.

Example usage:

import Named

createSymLink :: "from" :! FilePath -> "to" :! FilePath -> IO ()
createSymLink (Arg from) (Arg to) = ...

main = createSymLink ! #from "/path/to/source"
                     ! #to "/target/path"

Properties

Versions 0.1.0.0, 0.2.0.0, 0.3.0.0, 0.3.0.1, 0.3.0.1, 0.3.0.2
Change log ChangeLog.md
Dependencies base (>=4.9 && <4.14) [details]
License BSD-3-Clause
Author Vladislav Zavialov
Maintainer Monadfix <hi@monadfix.com>
Category Control
Home page https://github.com/monadfix/named
Bug tracker https://github.com/monadfix/named/issues
Source repo head: git clone git@github.com:monadfix/named.git
Uploaded by Artyom at 2019-10-19T06:35:43Z

Modules

[Index] [Quick Jump]

Downloads

Maintainer's Corner

Package maintainers

For package maintainers and hackage trustees