lua-users home
lua-l archive

[Date Prev][Date Next][Thread Prev][Thread Next] [Date Index] [Thread Index]

Tim Hunter wrote:
The existing language is proprietary, was developed in-house, has limited functionality, is hard to maintain and extend, and is only maintained by its inventor.

I think all of those statements are reasons to replace an in-house language. What happens when the inventor:
o Leaves
o Gets seriously ill
o Gets bored with their language
o Is run over by a number 9 red London bus

A little story to explain why in house languages are bad:

Years ago I worked for a company that had an in-house language (90-94) called Lull. Lull was a byte code, scripted, interpreted language, written by our database guy. This was more than 6 years before Java was released. We were kind of ahead of our time as very few people did this sort of thing back then. I did most of my work in C on VMS and 7 types of Unix. A core team of 7 people created the major components in C. My job was datastructures and all things X11/Motif. Once we had that in place I wrote the Lull interface for the components I had developed and people could write scripting code to configure and run the wonderful GIS system we had created.

It was very powerful. We even had UIs that changed dynamically depending on the options you had. Back then that was state of the art.

Because it was powerful there was more an more pressure even for people like me (part of the core group) to write in Lull more and more and in C less and less. This for me and my career, was bad news. No other employer gives a damn about Lull. They'll never see it and never use anything created with it. Thus, all that wonderful stuff on my CV related to Lull is worthless in the eyes of another employer.

I started to get cheesed off with the damage to my career. About 93/94 as far as I was concerned we should be moving from C to C++ (the only reason we were in C was that in 1990 g++ was not good enough to use commercially) and seriously prosecuting the start of our Windows port.

In the end I got ill (RSI) and when I recovered I left for reasons related to the RSI. But had I not got ill I probably would have left for reasons related to the damage to my career that this in house language was doing.

To retain talent you need to ensure their career is on track. In-house languages will always mitigate against that. Languages that in popular use boost your employees CV. Yes that makes them more valuable to you and to a potential employer, but at the employee will not leave because you are actively damaging their career - they'll leave for some other reason (which they may eventually do anyway).

So, for that reason alone, you'll most likely improve (long term) employee retention by switching to any mainstream scripting language.

That and the fact that the mainstream language is most likely more powerful than you in house language. If on Windows there is also commercial tool support from Software Verification and from the game company (name escapes me) that produces a Lua debugger that is apparently quite good.

My favourites are Ruby and Lua. Speedwise, there is no contest, its Lua.

Finally if your boss won't move to a mainstream language, try to reverse the situation - get him to open source your language engine. Maybe your language is the next Lisp (but usable (*)) and will go mainstream the way Ruby has in the last 3 years. Your company will benefit from the improvements to the language that happen if you do that.

You can read about my RSI here:

If any of you find sitting in your chair painful or have weird aches and pains in your torso, shoulders, neck, arms, hands or fingers, read my pages on RSI. I'm one of the few that have got hopelessly ill and recovered, still have a career in computing and still play musical instruments. Most people lose the ability to continue their computing career and their ability to play musical instruments. You may learn how to help yourself and/or prevent it happening to you.

One final thing about Lull, the Dutch translation of that mean the equivalent of the English word "Dick", which didn't go down so well at the trade fair in Holland... "You utter LullHead" :-)

That company ceased trading a few years back, so I think Lull is now just part of computing history and will never be heard of again.

(*) Come be real, who uses Lisp for commercial projects? Great language, but too many parens and no one uses it. Its the equivalent of Esperanto. So much promise, so little delivery.

Disclaimer: I am associated with Software Verification.