Page 1 of 1

GAMS Studio

Posted: Tue Jan 09, 2018 6:34 pm
by dirkse
We’ve received some user feedback recently that went like this: “I am confused. Rumor has it that the GAMS folks are working on a new IDE. Is GMS-Manager the new GAMS-supported IDE?” This is an important question that deserves a good answer.

GMS-Manager is software developed by Ingo Huck and is distributed, licensed and supported by Ingo and his team. Over the years many useful third-party tools have been developed to work with the GAMS system. These were not developed or directly supported by the GAMS corporation. The currently active ones (at least the ones we are aware of) can be found at https://www.gams.com/community/contributed-software/. These tools range from very special batinclude open source programs (e.g. gnuplotxyz) to commercial front ends for GAMS models and data like VEDA. Ingo's GMS-Manager is also featured on this page.

The GAMS IDE has been shipped with the GAMS system for the last 15 years and is still the workhorse for many GAMS programmers. However, the GAMS IDE does not provide the features we see in modern development environments. Due to its underlying software technology, implementing new features in the current IDE turned out to be a poor option, so after some experiments in 2016 (e.g. GAMS plugins for Eclipse and advanced editors like Notepad++, etc.), in September 2017 we started from scratch on a new development environment called GAMS Studio and hired three new developers dedicated to this project. GAMS Studio is based on C++ and Qt (a popular pair: RStudio is also built on these components) which makes it fast, reliable, and platform independent (Windows, Mac and Linux). We follow a Scrum methodology (see e.g. http://scrummethodology.com/) for the GAMS Studio development. As a consequence we will publish GAMS Studio at very early stages of development and have our users weigh in and help prioritize the future development directions. Users can even contribute directly or build on top of GAMS Studio, since it will be open source (similar to the GAMS/C++ API).

Our forthcoming GAMS 25.0 release, now out in beta, will not include GAMS Studio. We plan to include GAMS Studio in the 25.1 release, expected in the spring of 2018 (software companies hate to make firm announcements ;-) ). As hinted at above, this first version will include basic functionality - edit & run GAMS models and view results - but nothing very advanced. Many new features - interactive debugger, model instance explorer, etc. - are on the development horizon, subject to prioritization and user feedback.

Re: GAMS Studio

Posted: Wed Jan 10, 2018 8:31 am
by Gsain123
Thanks for the information.

Re: GAMS Studio

Posted: Mon Mar 12, 2018 9:36 am
by chrispahm
I don't know whether this is the right forum for feedback, so please feel free to move/delete if deemed inappropriate.
As I understood correctly, GAMS Studio is supposed to be an Open-Source project. If you are still in an early development phase, something really great for the Open-Source community (in my opinion) would be the implementation of a GAMS language server (https://microsoft.github.io/language-server-protocol/), which GAMS Studio would then consume. The advantage of the language server is that it provides all significant IDE features (as auto-complete, linting, go-to definitions among others), but is not exclusive to a specific editor. If users would like to continue to use Eclipse, Vim, Emacs, Atom, Visual Studio Code or others, they could just install the GAMS langauge server and would be able to do so with ease. This should also reduce development effort, as there is only one project to maintain and not several plugins for different editors. Also, this approach could be more comfortable for API-users that switch a lot between their GAMS and Python/Java etc. code, as they could just go for their editor of choice.
Best,
Christoph

Re: GAMS Studio

Posted: Tue Mar 13, 2018 10:39 am
by Clemens
Chris,

Thank you for sharing this idea with us. The concept of a language server is very nice. However, the first versions of GAMS Studio will most likely not support this feature. We keep this in our backlog and will at some stage decide if and how such a feature can be implemented.

Best,
Clemens