On 31/07/15 16:41, Mark Morgan Lloyd wrote: > Lukasz Sokol wrote: >> On 31/07/15 14:46, Mark Morgan Lloyd wrote: >>> Lukasz Sokol wrote: >>>> Hi, >>>> >>>> I tried piecing something like in $topic together, >>>> >>>> intended as an 'interactive' command interpreter for my program. (which >>>> will in time grow an 'embedded' web server and intended to >>>> run as a (windows) service, but it's too early for that at the >>>> moment) >
> Looking at your question another way, I suppose that you also have > the issue of parsing a command as well as handling the data entry. I > think that there's various possibilities here depending on what > you're trying to handle: > > * A simple sequence of names/numbers. > Supposedly this would do, parameters mostly are numbers (but when parsing through a TStringList everything is a string first anyway, so I can define some rules as to which parameter is what type) > * A unix-style command line, with leading options. Would be nice, however I don't need 'if' or explicitly defined looping instructions... > > * A sequence of email/HTTP headers. > > * XML. > > * Any of the above but with macro and/or numeric evaluation. This would be nice to have, some commands could 'substitute' a variable prefixed with a '$' that they find in the rest of cmdline, for their own output (like, running other commands in a sequence, but without explicit conditional commands) > > I note in particular that PostgreSQL uses Flex and Bison, and if > they'll parse (a fairly comprehensively extended) SQL I guess they'll > parse about anything. Apart from that I've hacked something together > for my own use based on Smalltalk (as an outer parser) with various > evaluation possibilities (as an inner parser), this was intended as a > way for programs to talk to each other and has its good points. Hmm seems way too complicated for my purpose(s) ;) But we'll see, > > I'm not sure whether getopts from the RTL provides a facility for you > to feed it an arbitrary string for processing, but it would probably > be a good place to start. I'll have a look. Thank you, Kind Regards, el es _______________________________________________ fpc-pascal maillist - fpc-pascal@lists.freepascal.org http://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-pascal