From: Vlad S. <vl...@cr...> - 2007-08-10 21:50:02
|
By implementing it in C and using Tcl_Eval ascripts will be executed at global level and all variables will be visible. It is just may result in supporting 2 diferent config styles which may add maintanence and confusion but overall i personally like new style better Jeff Rogers wrote: > Vlad Seryakov wrote: > > I like the general look and that it can be implemented in pure tcl > (heck, even by just sourcing the implementation at the top of your > current config). > >> it may look like this (still Tcl) >> >> section "fastpath" { >> cache false >> cachemaxsize 5120000 >> cachemaxentry 512000 >> mmap false >> } >> >> section "server/${servername}" { >> connsperthread 0 >> flushcontent false >> maxconnections 100 >> maxthreads 10 >> minthreads 0 >> threadtimeout 120 >> } > > Alot of the section names are heirarchical too so could this concept be > taken further? e.g., > > server "server1" { > directoryfile index.html > pageroot /root > section "tcl" { > library /root/server1/lib/tcl > } > section "modules" { > nslog ${bindir}/nslog.so > } > } > > > >> As you can see this is Tcl command section >> >> proc section { name args } { >> >> ns_section ns/$name >> foreach { key val } $args { >> ns_param $key $val >> } >> } > > It would need to be uplevel-ed if variable expansion is to take place > but that's pretty minor. > > -J > >> But config looks like more 21 century and more structured and easier to >> read. Very similar to lighttpd by the way. >> >> > > > ------------------------------------------------------------------------- > This SF.net email is sponsored by: Splunk Inc. > Still grepping through log files to find problems? Stop. > Now Search log events and configuration files using AJAX and a browser. > Download your FREE copy of Splunk now >> http://get.splunk.com/ > _______________________________________________ > naviserver-devel mailing list > nav...@li... > https://lists.sourceforge.net/lists/listinfo/naviserver-devel > |