First let me re-iterate the main point which everybody appears to be  
missing here:

The meta dialplan concept I presented is all about concurrent use of  
multiple languages to suit various preferences and tastes without  
having to compromise. That is the most important point.


as far as Io is concerned and why its properties make it a superior  
candidate for a telephony environment when compared to Javascript,  
Java, Perl and Python ...

On Mar 22, 2006, at 6:10 AM, Daniel Swarbrick wrote:

>  From the website, "Io is a small, prototype-based programming  
> language."
>
> So is JavaScript. And far more widespread at this point in time.
>
> Please, please let's not go in search of a language that is 99% the  
> same
> as some other mainstream language, just to be different.


You are make a judgement about the language based on a single  
sentence on the website? I have to say, I am quite astonished at  
that. In any event, your assessment is plain wrong.

Please read the FAQ on the Io website for a comparison with other  
languages, which should give you an idea why it is of particular  
interest for highly concurrent telephony environments.

Of particluar interest to use as a dialplan language is the  
concurrency model Io uses, which is based on actors, which is  
asynchronous, far more efficient than OS threads.

The only other language I could think of that has similarly suitable  
properties is Erlang and to *some extent* Ruby and Lua.

The incremental garbage collector of Io is also both safer and more  
efficient than what's in use in other languages discussed.

In addition to efficiency in asynchronous concurrent environments, Io  
has a very small footprint and is far better suited for embedding  
than just about anything else.

Finally, introspection in Io goes far beyond that of most other  
languages, which as Beau Hargis has pointed out is of great help when  
it comes to building audio user interfaces.

There are many oher differences as well, but the above are what  
matters most for use in a telephony environment.


It may come as a disappointment to many, but Javascript, Java, Perl,  
Python are not what you're looking for in a scalable highly  
concurrent asynchronous telephony environment.

They primary reason why those are being discussed is best described  
by one of Murphy's laws which goes "if all you've got is a hammer,  
the entire world looks like a nail".

Of course, familiarity is a merit too. However, it should be seen as  
a nice-to-have item, and not as a requirement. The nice-to-have  
checkbox is however ticked off by the meta dialplan concept allowing  
multiple engines to be used concurrently.

regards
benjk

                
___________________________________________________________ 
To help you stay safe and secure online, we've developed the all new Yahoo! 
Security Centre. http://uk.security.yahoo.com
_______________________________________________
Openpbx-dev mailing list
[email protected]
http://lists.openpbx.org/mailman/listinfo/openpbx-dev

Reply via email to