The langauge is horribly incosistant...
Inconsistent in what way? In terms of fluxuation of functions from version to version? That's technically not inconsistent.
A new version of mIRC is indeed
a new version of mIRC. It's implied with any software, specifically with
major releases (6.1, 6.2, 6.3 in mIRC's cycle) that there will be
major changes to the software system. This also means that there will be inherent implications about incompatibilities for everything besides completely new features. This is a tautology, and is
universally true for any system that makes changes.
For example: Apple's operating system introduces serious upgrades every ~2 years which implicate major incompatibilities for software using certain components: the software systems must be upgraded to be compatible with every new version. This is true for Leopard, just released last month.
This is also true for Windows Vista, a much slower release cycle than Apple's operating system, but still important. The changes for Vista are much larger than that of Leopard's (due to the slower development cycle). In fact, mIRC 6.3's changes to $mircdir that you're fussing about were done specifically to be compatible with changes made in Vista-- so mIRC is not the real culprit here, it's sort of Vista's fault too-- but the again, this change was necessary to implement the new security system, which was inevitably a request by the userbase of Vista. Therefore, if we continue all the way up the responsibility chain, it's
your fault that mIRC changed the way $mircdir works.
mIRC releases a major update roughly every year. This is close to the development cycle of Apple's OS, and given that mIRC is a much smaller component than an entire OS, this is more than fair- we'd therefore expect many things to change. And indeed, things change in mIRC. Sometimes due to dependencies like the OS changing, sometimes to fix bugs. Not every release will affect all scripts, but at some point there will be a change that migh affect you. What am I getting at?
Change is inevitable. It is always the third party developer's responsibility in all of the environments I mentioned above to maintain their application to be compatible with the underlying system-- the same way mIRC's 6.3 release addressed compatibility issues with Vista. While the developers of the underlying system are still somewhat responsible, it depends completely on the system.
I may not have mentioned that both Apple and Microsoft release betas ahead of time to developers so they can predict such incompatibilities-- but I don't think this maps to mIRC. Why? I'll be blunt now: mIRC is an IRC client with no commercial market for third party developers. If a script comes out a few weeks after release, that developer doesn't lose anything out of it... an IRC client is not a critical system like an OS powering million dollar businesses. Face it, what's the worst that happens? You hold out on downloading an upgrade for a few weeks?
We already agreed that changes occur in every software system. Windows, Mac OSX, and mIRC is no different. I'm sorry that your script used a function that underwent such a change, but really, the scripter should be the ones to fix it- Khaled shouldn't be the one to stop the inevitable just for you.
There is clearly nothing inconsistent about change.
That's because the langauge isn't expected to change.
I wasted my quota on the previous topic so I'll keep this one short: says who? You? The hundreds of users making feature requests on this forum every week seem to think otherwise. You seem to be alone in the school of thought that mIRC's scripting language is not meant to change. If that were the case, a lot of the great advancements of the language would never have come. Remember that mIRC's language *evolved*. It was not designed. The entire functionality of the language is based on change. $dll, $com, $regex, /noop, $qt, SSL support.. these are all heavily used features that came into mIRC within the last few years at most. Unicode support only came around a year ago! Where would we be without change?