Interesting, given me a lot to think about. I've done a bit of work in Clojure--nice language, as you say. Haden On 10/9/2013 5:27 PM, Tim Cross wrote:
Just following on what Raman has said, back in the day, Tcl was one of the best scripting languages for gluing things together (in fact the name Tcl comes from tool command language). However, as Raman points out, you can write speech servers in any language and there have been serves in C, perl, python and Java. However, in most other languages, to make things work, you do need to implement some sort of read-print-eval loop, which is just a single call in Tcl. One of my projects, which I really want to get back to, has been to implement an speak server in Clojure (a lisp like functional language which runs on the JVM). The main reason I've been playing with this was because I wanted something which didn't use Tcl as I've run into version issues with Tcl on 64 bit systems where you want to run 32-bit ViaVoice, but also have other Tcl apps which you would like to take advantage of the native 64-bit architecture. The other reason I've been playing with this is because I also wanted a project to use as a way of learning Clojure, which has some very nice facilities for dealing with concurrency and which I think could be a nice basis for implementing a speech server. I also wonder if there may be some interesting experiments we could look at using clojureScript. At the end of the day, this is just a fun project I like to play around with and can recommend others embark on similar as the very best way to understand many of the issues involved in writing a good speech server is to actually try and write one! Tim -- Tim Cross IT Security Manager, Information Technology University of New England Armidale N.Sl.W. 2350 Email: tcross@xxxxxxxxxxx Phone: +61 2 6773 3210 Mobile: +61 428 212 217 On 10/10/2013, at 2:46 AM, T. V. Raman <tv.raman.tv@xxxxxxxxxxx> wrote:Good question. The choice of TCL is mostly historical: in 1995, there were three languages that were approximately equal in popularity, perl, python and tcl. TCL had one advantage over perl and python; in 1995, it was a lot easier to bind TCL to a native C library -- and I needed that to integrate support for the software DecTalk. 2. In 1995, TCL and Python had an advantage over perl -- and this is still true -- both languages trivially expose a read-eval-print loop -- so you can essentially write a server script in those languages where each server command is just a function, and the client e.g. emacspeak, can launch the script and write to stdin (or later over a socket) to send commands to the server. Fast Forward to 2013: If I started fresh today, I would probably write it in Python -- given that TCL development has slowed down. That said, TCL is still a good option because it is well supported in general. Note that because of the initial servers having been written in TCL, emacspeak writes to the server assuming it's talking to TCL, so the python or Java server script has to do a bit more work. If you want to study this further, look in module dtk-interp.el --- if it ever becomes necessary, one could write an alternative implementation of that module that makes it slightly easier on a python server Haden Pike writes:Hi all, I got into a discussion about Emacs and Emacspeak with a sighted classmate who saw me using AucTeX to read my Calculus assignment. She asked me later why the speech servers use TCL. I didn't know and my best guess was that it was the best option at the time. Is this the case, or are there advantages I'm not aware of? Thinking about it later, I was curious if TCL should still be used when writing a new speech server, or whether something like the mac server should be written where possible? Haden ----------------------------------------------------------------------------- To unsubscribe from the emacspeak list or change your address on the emacspeak list send mail to "emacspeak-request@xxxxxxxxxxx" with a subject of "unsubscribe" or "help".-- -- ----------------------------------------------------------------------------- To unsubscribe from the emacspeak list or change your address on the emacspeak list send mail to "emacspeak-request@xxxxxxxxxxx" with a subject of "unsubscribe" or "help".
----------------------------------------------------------------------------- To unsubscribe from the emacspeak list or change your address on the emacspeak list send mail to "emacspeak-request@xxxxxxxxxxx" with a subject of "unsubscribe" or "help".
If you have questions about this archive or had problems using it, please send mail to:
priestdo@xxxxxxxxxxx No Soliciting!Emacspeak List Archive | 2010 | 2009 | 2008 | 2007 | 2006 | 2005 | 2004 | 2003 | 2002 | 2001 | 2000 | 1999 | 1998 | Pre 1998