At the risk of repeating a lot of stuff already said…
Performance almost never matters in a home automation context. So what if it takes 500 msec to process an event that happens once every minute? There are cases where this does matter of course but usually the bottleneck is the technology, not Rules.
But usually, you will see sub 100 msec processing times on all but the most complex Rules DSL Rules unless you add sleeps or the like.
No, but it might be easier to read if you used a switch.
Not at runtime, maybe at openHAB start time.
Does not impact performance, but global variables are only global to that one file in Rules DSL.
Runtime performance, nothing I can think of. But the loading/parsing of Rules DSL Rules is very sensitive to type. The more you dictate the types of things, and especially if you force it to use primitives, the longer it’s going to take to load and parse your .rules files.
Scripted Automation is significantly faster, though I’m basing this on some very old tests that were done years ago back when it was using JSR223. I would not expect the results to change much. But, again, from a practical perspective, does it really matter if the Rule takes 10 msec to run or 5 msec to run?
We actually discovered a case where we could see an impact on this on Intel CPUs too. I think it’s just a feature of the language and it’s just more noticeable on ARM.
In general, if you are worried about performance, you are worried about the wrong things. There are only very few cases where the performance of even the most poorly written Rules DSL Rule will matter. So wait until you actually have a problem before worrying about performance.