I've always felt that GMPL needed if-then-else, for-loops, 'let' statements and
the ability to re-solve to be a true modeling language. And Andrew has always
disagreed.
Many of the models that I create ultimately are 'iterative' where I need to
take the results of one model and use it to setup another model. To me, that
is also modeling. GMPL doesn't have it.
So often, I use GMPL for an initial model - it is a wonderful language, and I
find it faster to code than alternatives. But then when I 'get it right' I
have to re-code it in PYOMO or PULP or write directly to an 'lp' file within a
Python or C# or other language script.
Having the ability to run, adjust variables, add/take away constraints, re-run
would be extremely useful, and make GMPL more of a one-stop modeling language.
-----Original Message-----
From: Help-glpk <help-glpk-bounces+marc.meketon=oliverwyman.com@gnu.org> On
Behalf Of Andrew Makhorin
Sent: Sunday, August 23, 2020 2:56 PM
To: Domingo Alvarez Duarte <mingodad@gmail.com>; help-glpk@gnu.org
Subject: Re: Adding if/then/else statement to GMPL
On Sun, 2020-08-23 at 15:36 +0200, Domingo Alvarez Duarte wrote:
Hello !
Also I've added the break/continue statements here
https://github.com/mingodad/GLPK/commit/9d70a37b16bd377722eeb3880fcf86
bb3b812118
Again any comment/suggestion is welcome !
Cheers !
Please note that GNU MathProg is a *modeling* language; it is not a
general-purpose programming language. If you need to produce a non-trivial
solution report (since all such-like statements are allowed only on the
post-solving stage), it would be more practical to write the solution to a
temporary file and then process it with a separate program.
________________________________
This e-mail and any attachments may be confidential or legally privileged. If
you received this message in error or are not the intended recipient, you
should destroy the e-mail message and any attachments or copies, and you are
prohibited from retaining, distributing, disclosing or using any information
contained herein. Please inform us of the erroneous delivery by return e-mail.
Thank you for your cooperation.