Difference between revisions of "AOLserver and Tcl Crash Course"
Jump to navigation
Jump to search
(added the "hello world" ADP example) |
(fixup wiki markup) |
||
| Line 1: | Line 1: | ||
| − | + | {{TOCright}} | |
| − | + | The following is a working draft in progress for an introductory guide to AOLserver and Tcl. | |
| − | |||
| − | |||
| − | + | == ADP Pages == | |
| + | |||
| + | Hello <Yourname> - Simple page, user submits form, displays name | ||
| + | |||
| + | === ADP example === | ||
| + | |||
| + | hello-world.adp: | ||
| + | |||
| + | <pre> | ||
<% set name [ns_queryget name "world"] %> | <% set name [ns_queryget name "world"] %> | ||
<html> | <html> | ||
| Line 19: | Line 25: | ||
</body> | </body> | ||
</html> | </html> | ||
| + | </pre> | ||
| + | |||
| + | === Tcl example === | ||
| + | |||
| + | hello-world.tcl: | ||
| − | + | <pre> | |
| − | + | set name [ns_queryget name "world"] | |
| − | set name [ | ||
| − | |||
| − | |||
| − | |||
ns_return 200 text/html "<html> | ns_return 200 text/html "<html> | ||
| − | <head><title>Hello [ns_quotehtml $name]!</title></head> | + | <head> |
| + | <title>Hello [ns_quotehtml $name]!</title> | ||
| + | </head> | ||
<body> | <body> | ||
| − | + | <p>Hello [ns_quotehtml $name]!</p> | |
| − | + | <form> | |
| − | + | <p>Name: <input name="name" value="[ns_quotehtml $name]"></p> | |
| − | + | <p><input type="submit" value="Go"></p> | |
| − | + | </form> | |
</body> | </body> | ||
</html>" | </html>" | ||
| + | </pre> | ||
| + | |||
| + | == Tcl Basics == | ||
| − | |||
** Explain Minimalist Syntax | ** Explain Minimalist Syntax | ||
*** Commands, Subcommands (Evaluated and Non-Evaluated) | *** Commands, Subcommands (Evaluated and Non-Evaluated) | ||
| Line 44: | Line 55: | ||
*** if, while, etc. | *** if, while, etc. | ||
*** procedures | *** procedures | ||
| − | + | ||
| + | == Fetching GET and POST == | ||
| + | |||
** Including / Referring to other pages | ** Including / Referring to other pages | ||
** Controlling Output | ** Controlling Output | ||
| Line 53: | Line 66: | ||
== Questions == | == Questions == | ||
| + | |||
* Where does ADP excel? | * Where does ADP excel? | ||
* What practices should PHP, ASP, JSP developers stop doing? | * What practices should PHP, ASP, JSP developers stop doing? | ||
Revision as of 03:06, 16 June 2007
The following is a working draft in progress for an introductory guide to AOLserver and Tcl.
ADP Pages
Hello <Yourname> - Simple page, user submits form, displays name
ADP example
hello-world.adp:
<% set name [ns_queryget name "world"] %>
<html>
<head>
<title>Hello <%= [ns_quotehtml $name] %>!</title>
</head>
<body>
<p>Hello <%= [ns_quotehtml $name] %>!</p>
<form>
<p>Name: <input name="name" value="<%= [ns_quotehtml $name] %>"></p>
<p><input type="submit" value="Go"></p>
</form>
</body>
</html>
Tcl example
hello-world.tcl:
set name [ns_queryget name "world"]
ns_return 200 text/html "<html>
<head>
<title>Hello [ns_quotehtml $name]!</title>
</head>
<body>
<p>Hello [ns_quotehtml $name]!</p>
<form>
<p>Name: <input name="name" value="[ns_quotehtml $name]"></p>
<p><input type="submit" value="Go"></p>
</form>
</body>
</html>"
Tcl Basics
- Explain Minimalist Syntax
- Commands, Subcommands (Evaluated and Non-Evaluated)
- Working with variables set, expr
- Control Structures
- if, while, etc.
- procedures
- Explain Minimalist Syntax
Fetching GET and POST
- Including / Referring to other pages
- Controlling Output
- Databases
- Defining the connection from as a pool in the config.tcl
- Selecting from the pool
- Executing Queries, Retrieving Values
Questions
- Where does ADP excel?
- What practices should PHP, ASP, JSP developers stop doing?
- How can one use Tcl to write very concise and readable code?
- How does one efficiently separate pages into MVC components if the wanted?
- How and why should one write a domain specific sublanguage?