Updated 2012-09-10 14:28:12 by LkpPo

"Create, Retrieve, Update, and Delete" [1]

[Tcl does fine, but doesn't really compete. Explain much more context.]

RLH I think in a bigger sense you see the "other" web frameworks that create CRUD applications pretty much on-the-fly. Scaffolding and such seems the rage now days.

LV What's an example of such a framework? Are we talking about things like Excel? Remember to compare "apples" to "apples" - Tcl isn't a web framework. Tcl+some extensions would equate to a web framework.

RLH Yes we are talking web frameworks. Or at least I was. Python, Perl, PHP and Ruby all have this.

LV I don't know those communities - do you have any specific examples for one (or more) of these in mind?

RLH These are some of the things to look at if you want to see what is out there:

A lot of them integrate some kind of Ajax stuff as well as creating scaffolding for getting the most common things done quickly. Some are not so flexible (Rails) while other (like TurboGears and Catalyst) are super flexible but they all make doing web application programming "easier" to some extent.

Anyone have a suggested set of Tcl extensions that would make Tcl into something equivalent? Perhaps ActiveTcl's set of extensions?

RS: Looking at Wikipedia about CRUD, it looks like sqlite fills the description best. Or even a simpler mechanism, where the crud is written to a text file in Tcl format, and loaded with source...

schlenk For a basic set of extensions for something like this, you need a) a database abstraction layer, see Comparing Tcl database abstraction layers for a large list, b) an OO extension, probably XOTcl and a templating framework, for example the one built into tclhttpd, expand, or rivet's templates.
LV What about [2]? Does that fit the bill as part of this? What other things might go into the mix?

RLH Actually I would go with Snit because it is pure Tcl. However, the big thing is to put it all together as seamlessly as possible and as neat as possible so people outside of Tcl will say that is cool and want to learn it (which is what happened with Rails and Ruby).

LV I presume you are suggesting replacing XOTcl with Snit?

Perhaps there aren't very many people doing much complicated sites with Tcl on the web?

patrick@zill.net responds: There are """plenty""" of people doing complicated sites with Tcl! For CRUD, this has been around a while in TCL, but the people who implement it call it "dynamic types" and never thought to invent a whole marketing platform around it! See [3] and watch the video tour, I think about halfway through you can see the dynamic types stuff.

LV Thanks for the pointer. It seems, to me, that what makes some of the other language based frameworks more palatible to new web developers is that someone has collected the necessary pieces and put together enough documentation to allow them to download, install, and start coding HTML, without having to do a lot of lower level design. This seems to be the case in a variety of areas where other language solutions are being used - Tcl can certainly be used to solve various kinds of problems. So could ksh in many cases. And I've seen awk used in some pretty amazing places. Until someone at least writes some tutorials/guides on what pieces to use, and how to use them to create examples with some wow factor, then people are going to turn to those who have done that legwork to examine their solutions, whether commercial or free.

tonybaldwin No, I do not think there are a lot of people writing web apps in tcl, no, but it would be awesome if there were simple means to do so. I found on wikibooks a webserver in 41 lines of tcl code and installed it at home and played with it, and it was a lot of fun. All of my production servers run apache, however, so I'd like a framework or means of hosting an application written in tcl scripts on apache. I found http://www.rkeene.org/projects/info/wiki/134, but it requires starkits. I just want to use tcl scripts, not packaging them in starkits. I'm currently porting an application I had written in tcl[4] to php so I can make it a web application[5]. It would have been so much more awesome to have a simple means of just replacing the tk gui with an html gui, or something. To be clear, I'm neither an expert in tcl nor php, but a few years ago when I couldn't find a program that did what I wanted, I decided to learn some programming and write my own. I found tcl to be the quickest/easiest language to learn and write a useful, gui program, and there started a whole new hobby. Now I'm learning php, which isn't necessarily a bad thing, but I like tcl, and a way to make tcl scripts run on an apache server like php scripts do without having to jump through 50 hoops would be awesome.