Lectrote interpreter choice question

How does the Glulx interpreter preference work in Lectrote?

If you change it, is it only a newly booted game that will be running in the newly selected interpreter? What about if you load a saved game after changing interpreters? Or do I not get it at all?

The reason I ask is because I was playing Sand Dancer in Lectrote, having chosen Git as the interpreter before booting the game (I thought Git would scream, processing-wise, compared to Quixe, the only Lectrote choice in the past) and it seems any moments which invoke Aaron Read’s player-conveniencing extension cause lag lasting seconds. (You can test it by typing ‘brush’ as a command on its own.) Compared to Gargoyle where there is zero lag.


Changing the Glulx VM setting will apply only when a new interpreter window is started. The window title will say what VM is being used.

I haven’t properly done any benchmarking for the Emglken VMs, but it’s definitely not guaranteed that fast code in C will be fast when compiled with Emscripten, because of the limitations of the porting process. But neither is the Git port very well optimised. I made a very simple port, not changing any of Git’s internals, and it may be possible to give it some significant performance boosts.

It would be very interesting to find out exactly what is causing that lag. If anyone is able to figure out the cause, or can identify any other slow things, please do make an issue at the emglken issue tracker.


Well, the lag maker is somewhere in that Aaron Read triumvirate:

Smarter Parser
Poor Man’s Mistype
Small Kindnesses

I think they, or part thereof, later became Player Experience Upgrade?

I’ve seen Player Experience Upgrade induce 25 seconds of lag after entering a command that invoked it when I was playing a game on an iphone 5. (I used a stopwatch!)


Just as a guess, it’s probably the slow regular expressions code. If so there’s nothing particular there that can be done to already compiled games run faster, just to make the interpreters faster generally.