[EMAIL PROTECTED] wrote: > > On 05 Aug 2001 13:34:02 +0200, Dominik Vogt wrote: > > > > How about this enhancement to conditional commands: > > > > Next (conditions) { false-action } true-action > > > This may work, but is this the best possible solution? This syntax is not > very readable and having else-command before then-command does not make it > better. As before there is still a limit to one command in both branches, > so you are forced to create small functions without a real need. It also > adds a problem of escaping curly brackets in else-command when needed. > What about parsing of nested conditional commands, braces in braces? :) > It seems that an idea of 2 commands on the same line is not very good.
I think we can already do conditional code using self modifying functions: AddtoFunc true_case + I true case commands + ... AddToFunc false_case + I false case commands + ... AddToFunc its_true + I DestroyFunc conditional_code + I AddToFunc conditional_code I true_case AddToFunc its_false + I DestroyFunc conditional_code + I AddToFunc conditional_code I false_case AddToFunc test + I its_true + I Next (whatever) its_false + I conditional_code I know it's a bit wordy but it's probably possible to use FvwmM4 to wrap it up into something a bit easier to type. > > Here is my revised proposal that solves all problems described above. long example snipped... > There are 5 new commands "if", "else", "elsif", "{" and "}" in this > proposal. No existing command syntax is changed, which is an advantage. But then you'll end up doing a "while" command, then a "switch", then a "break" and I think you've got youself a new language to learn. I think the SCWM approach is better if this is what you want i.e. put a real interpreter in there (I'd prefer TCL since I already know it) so that people don't have to learn a new language and we don't have to design and test it. Cheers, Tim. -- Visit the official FVWM web page at <URL:http://www.fvwm.org/>. To unsubscribe from the list, send "unsubscribe fvwm-workers" in the body of a message to [EMAIL PROTECTED] To report problems, send mail to [EMAIL PROTECTED]