JHP is quite cute. I'm impressed with how much work has been done on it. But at the same time, I must wonder deeply.
This is because J is about clearly seeing what problem one is solving. I assert that dynamic html generation, be it for CGI or whatever, is best perceived as tree rewriting. In this case, we have a processor (a J program) operating at meta-level to the processed entity, an HTML tree. In contrast to my meta-level paradigm for HTML-generation, JHP puts the J programming language at object-level, inter-meshed with the HTML. This is similar to 99% of the dynamic html techniques across 100% of all languages - PHP, JSP, ASP, HTML::Mason, etc all fall into this trap. There are only a few push-style systems out there - my own HTML::Seamstress (perl), meld3 (python) , XMLC (java) and StringTemplate (java and python). Dynamic html generation in the JHP style is known as "pull-style" templating. What this means is two things: 1 - the HTML is treated as a program 2 - the HTML is treated at its lowest level as a string instead of a tree. Terence Parr has proven http://www.cs.usfca.edu/~parrt/papers/mvc.templates.pdf that pull-style templating is the most degenerate (not trying to be insulting or derogatory here) case of push-style dynamic html generation. That is to say, push-style is a more powerful style of development and at its lowest level is found to be pull-style. Push-style is more sound from a software engineering point of view for the reasons I list here: http://www.livingcosmos.org/Members/sundevil/software/push-style-dynamic-text-html-generation/rationale?portal_status_message=Changes%20saved. ---------------------------------------------------------------------- For information about J forums see http://www.jsoftware.com/forums.htm
