Skip to content

Native argument parsing #63

@Zamua

Description

@Zamua

Argument parsing is so common that it should be built into the language. For example Docopt Strings should be automatically recognized. This should not require imports or configuration in the code by the user. They should be responsible for the docstring and that is all. Remembering the syntax and symantics of docstring itself can also be tedious. LJ should provide a command line tool that aids in generating this string.

Examples

"""
Hello, world!

Usage:
  hello_world <author>
  hello_world -h | --help
  hello_world --version

Options:
  -h --help     Show this screen.
  --version     Show version.
"""

main() {
    printf("Hello, world!, from %s", author)
}

This example uses multi line comment syntax similar to docstrings in python. This is just for the purpose of the example. This example also demonstrates the author variable being in scope due to the docstring. This is also just for the purpose of the example. We may want to explore having an implicit arg map or similar.

$ lj docstring --name "Hello,world!" hello_world <author>
$ ... #print docstring shown in previous example

This cli would need to be easy enough to use that a user wouldn't need to google docopt everytime they need to do some argument parsing.

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions