Closed Marcel-Rodekamp closed 1 year ago
Maybe I have missed some of the latest meetings, but this whole PR does not seem to make a lot of sense to me... I understand having some way to manage the inputs needed, but I wouldn't add an external dependency nor allow arbitrary parameters to be set from CLI if we go the inputfile route: it is way more efficient, extensible, type-safe and also forces you to keep track of the runs you have made in an explicit way. I'm open to discussing this more if you want
Maybe I have missed some of the latest meetings, but this whole PR does not seem to make a lot of sense to me... I understand having some way to manage the inputs needed, but I wouldn't add an external dependency nor allow arbitrary parameters to be set from CLI if we go the input file route: it is way more efficient, extensible, type-safe and also forces you to keep track of the runs you have made in an explicit way. I'm open to discussing this more if you want
Are the changes in 81cfb567db0f4594dd1498f9380f71d2c47e7219 sufficient to address the results of todays discussion.
NSL::init
that implements -f,--file
as well as --GPU
& logging.NSL::Parameter::repr
is implemented to provide a string representation of the parameter for simpler logging of parameter (see example_cli.cpp)NSL::init
as well as how to use YML::LoadFile
together with NSL::Parameter
and logging of the latter. I understand that this should be the starting point of basically every main. This all looks fine now. We still might need to revise the strategy in the future, but it is a big improvement
Added a basic command line interface using CLIUtils. Further added a basic parameter class to store results of the command line parsing and for later use in other contexts.