views:

338

answers:

4

Hello:

I am getting ready to build a web application (app) and was interested in using DHTML and TCL. I have been building apps in TCL for awhile and feel pretty comfortable with using this language. I have experience using Visual Studio (VS) to write web apps where the server-side code is in C#. VS makes this incredibly simple and pretty straight forward.

Does anyone have any suggestions on an IDE that will enable me to write HTML/Javascript client-side code and TCL server-side code, similar to VS? I picked up the book, "Web Tcl Complete", but it doesn't seem to provide information on combining Tcl with DHTML.

Thank you,

Damion

+5  A: 

I work for a company that does its web applications in tcl exclusivley. It won't earn you any awards, but it is a very viable platform for that. DHTML is handled the same way as other server side languages, it is serverd just like any other html cause it is client side. We use AOLserver. Despite the terrible name (aol!!??) it is a nice platform and does everything one can do in php/jsp/asp and more. Threading is very easy :). AOLserver was the fastest web server around for years.

You just upload tcl scripts (.tcl files contain your buisness logic) and .adp files (your view code and dhtml) to the server and run them. All the aolserver code is written in either c or tcl.

A very nice IDE for tcl is Komodo.

Be prepared to be flamed for using tcl, but it is a very mature language with libraries to do just about anything. :D Most people just don't like the syntax, but as you know it is very simple.

Oh yeah if you are in the bay area, I might be able to get you an interview ;) Tcl programmers are pretty scarce around here.

Byron Whitlock
+1 for going against the grain. I really love Tcl, except when i don't :)
Dave Ray
Hi Byron - Thanks for the feedback. This may sound like a sophomoric question, but will end-user's web browsers require a Tcl plugin to view a website that runs tcl as it's server-side language? Thanks,
@dmullins: They won't. AOLServer works just like any other app server; it evaluates the page code and sends normal html/css/js/whatever back to the user. I'm a huge fan of AOLServer, personally.
RHSeeger
ahhh, aolserver. That server was 5 years ahead of anything else back in the day (late 90's).
Carl Coryell-Martin
A: 

I'm not entirely sure what language/paradigm/design pattern you used writing web apps in VS because how you write a web app is generally independent of what IDE you use. But in general there are two approaches to writing web apps:

  1. The old school way - Generate UI elements from application code. This is the approach taken by libraries like CGI.pm in Perl or the Google Web Toolkit in Java. The upside is that this is a familiar design pattern for desktop developers where UI and business logic are handled by the same language. The down side is that once you finally learn and are fully comfortable with HTML, CSS & Javascript, doing anything complicated, modern, advanced and Web2.0-ish becomes a huge pain.

  2. The modern way - Application code merely generates data structures to be consumed by either HTML templating engines or AJAX requests form the front end. The down side is that actually being good at HTML, CSS and Javascript requires a steep learning curve. The up side is that you'll be a better web developer who's comfortable implementing something like google maps.

I'd recommend the modern way because you mentioned web APPS. If it was simply a website then the old school way would suffice. So the answer to the second part of your question is to get to know HTML, CSS and Javascript better and use HTML templates to combine application logic and (D)HTML (the D part has little to do with templates and more to do with knowing how to use javascript).

For the first part of your question though, I also recommend Komodo. It's good with HTML and CSS and it's great with tcl and javascript. I can't afford the full-fledged Komodo IDE so I'm using the free Komodo Edit but even Komodo Edit is more than enough to author web apps in.

slebetman
A: 

Following Byron's answer, AOLServer is a good candidate, but if you are interested in using apache as your webserver then there is a mod_tcl (http://tcl.apache.org/mod%5Ftcl/) that allows you to use Tcl as your server-side language (similar to php).

I have not tried it for quite a few years but last I remember it was working pretty well.

Nir Levy
A: 

I found cgi.tcl (at expect.nist.gov) very useful for the server side part...

Sudhir