Initially, the project was started as an alternative to Sfall Script Editor Extended, a tool for working with Fallout's Star-Trek Scripting Language files. Which is a great piece of software, but unfortunately not working too well under Wine, which is a hindrance to non-Windows users.
Once basic support for Fallout SSL was completed, I was thinking about mirroring it, throwing away everything SSL-related and adding WeiDU formats support instead, to make it a separate extension. But after consideration, I came to conclusion that it might be better to keep them together:
- It will force better code quality by disallowing to mix language features with language server features.
- On the other hand, languages themselves are not too complicated, so it shouldn't be very hard to avoid this mixing.
- Separate extensions would still share a lot of core code, which would likely lead to a lot of manual copying back and forth as bugs are found and features added. Which is extra work and error prone.
- It's easier and faster to implement new features for a language when you have a ready working example for another one.
- Hopefully, it will allow to draw on a larger contributor base.
- Finally, WeiDU uses multiple file formats, and thus its server is going to be multi-language anyway.
After adding basic support for WeiDU syntaxes, I can say that it wasn't very hard, and certainly easier than doing it from scratch - which proves some of these points. So, in the end, keeping the extension consolidated but modular is a practical decision.