Skip to content

MAINT: Code review of command-line tool wrappers #479

@tturocy

Description

@tturocy

Gambit's command-line tool wrappers (in src/tools) can use a thorough review, as they haven't separately been looked at in some time.

A non-exhaustive set of tasks:

  • Command-line argument parsing is done by getopt and probably has a number of bugs where what is being done and what the documentation say do not line up perfectly.
  • Conversion of arguments to numbers is done by old C-style functions without checking for valid values
  • In places where data are read in from CSV-like files (e.g. starting points), there is no real error checking and invalid files will lead to unpredictable results.
  • There is other duplicated code across the driver programs, which is less than ideal for consistency.

The output of working on this ideally should rationalise the command-line drivers and make it straightforward to expose new algorithms or features consistently. So this is definitely one for someone who understands a bit about the various equilibrium computation methods, and willing to take a bit of a deeper dive on thinking about how to organise this code (and not just a superficial set of changes).

Metadata

Metadata

Assignees

No one assigned

    Labels

    c++Items which involve writing in C++

    Type

    No type

    Projects

    No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions