Recursion - 24/01/15 06:22 AM
In earlier version of mIRC, we had recursion, direct recursion. Then it was limited (/maxdepth), then it was removed.
Well, I think it was removed because it was too often used in a bad way, resulting in infinite loop etc etc..
We have indirect recursion with /scid or /scon, which was previously limited to 85 iterations (probably more in the past, before 6.17), as of 7.38, looks like it reduced to 43 iterations max.
We have indirect recursion with two aliases as well (calling each other), limited to 255 iterations max.
I'm not going to talk about how useful recursion is, this is not the point.
I don't buy the argument that it was removed because it was used in a wrong way, /while loop can be used in the same bad way, so can /signal, they weren't removed..
Indirect recursion's methods are fine, their current limit could simply be extended but well, they are workarounds, I would rather like the feature itself being back.
Of course it still would need a limit, but that limit could be high enough to be useful, perhaps defaulting to the current behavior (send the command to the server if the name of the command is a custom alias, or call the built-in if it's a built-in name) but bringing back /maxdepth, with a new parameter, the name of an alias..
/maxdepth <alias name> [depth] where mIRC would use the maximum number of call allowed if [depth] isn't specified
There are many threads about recursion, I think it would be a good idea to bring it back.
Well, I think it was removed because it was too often used in a bad way, resulting in infinite loop etc etc..
We have indirect recursion with /scid or /scon, which was previously limited to 85 iterations (probably more in the past, before 6.17), as of 7.38, looks like it reduced to 43 iterations max.
We have indirect recursion with two aliases as well (calling each other), limited to 255 iterations max.
I'm not going to talk about how useful recursion is, this is not the point.
I don't buy the argument that it was removed because it was used in a wrong way, /while loop can be used in the same bad way, so can /signal, they weren't removed..
Indirect recursion's methods are fine, their current limit could simply be extended but well, they are workarounds, I would rather like the feature itself being back.
Of course it still would need a limit, but that limit could be high enough to be useful, perhaps defaulting to the current behavior (send the command to the server if the name of the command is a custom alias, or call the built-in if it's a built-in name) but bringing back /maxdepth, with a new parameter, the name of an alias..
/maxdepth <alias name> [depth] where mIRC would use the maximum number of call allowed if [depth] isn't specified
There are many threads about recursion, I think it would be a good idea to bring it back.