Why is Iguana so fast?

It’s not by accident that Iguana has a reputation of being the healthcare industry’s fastest integration engine.

The backbone of Iguana is written in C++ which, other than writing in native assembly code, is the most efficient language for raw speed. We appreciate C++ is not an easy language to develop in and lacks the convenience of modern garbage collected languages like C# and Java, but you cannot beat it for efficiency. We developed our own proprietary queuing system and have heavily invested to optimize all the critical parts of Iguana’s core-plumbing over many years. It’s an area we take very seriously and have a lot of pride in our craft.

The other critical part of Iguana’s raw speed is the choice of the open source language Lua for powering the Translator. At different times in the history of iNTERFACEWARE, the idea has crossed our minds that, like some of our competitors, we could develop our own proprietary language. We quickly forgot that idea as a bad strategic move.

“At different times in the history of iNTERFACEWARE, the idea has crossed our minds that, like some of our competitors, we could develop our own proprietary language. We quickly forgot that idea as a bad strategic move.”

Writing a language is not trivial proposition, particularly if you wish it to be a high performance one. It takes dedicated experts many years to really hone and mature a language. Every design choice has so many different subtle implications that are very hard to back out of once you make them. There are a number of choices made in Javascript, for instance, which will forever hold back the performance possible for that language.

The area of compiler design has become so difficult that even companies with the financial resources of Apple find it more effective to sponsor the best in open source compiler projects like LLVM for the foundation of their development technologies rather than attempt to build this type of technology in-house.

Lua is the world’s fastest dynamic language. Once the best kept secret in the gaming industry, Lua has long been prized by game developers for its raw speed and efficiency. The version of Lua we use in Iguana is actually compiled down into raw machine code since it uses the LuaJIT version 1.1.6 engine. The speed of this implementation is phenomenal. It hands-down beats incredibly well-financed efforts like the Google V8 JIT compiler for Javascript. The fact that LuaJIT is so fast is a combination of the simplicity of the Lua language and the genius behind it:  Mike Pall, who is the world’s top expert in the area of JIT compiler implementation for dynamic languages.

We are very proud to be a sponsor of the LuaJIT project. It feels good to be able to invest back into such a core technology. What will be exciting for Iguana users to know is that in the future we will be upgrading to version 2.0 of the LuaJIT engine which is faster yet again than the LuaJIT 1.1.6 engine.

You might be interested in looking at this white paper on Iguana’s speed.

When it comes to looking at your own interfaces you will need to put together a complete system to see if you can meet the speed requirements for your application. That involves looking at all the parts of the interface that could slow things down like your database logic, latency in any middle tiers you use etc. etc.  That’s why we make it easy for our prospective customers to download Iguana and test the application within your own environment.  Iguana itself has never disappointed any of our users for it’s raw performance.