newLISP wiki: some basics

Started by cormullion, April 06, 2007, 05:46:45 AM

Previous topic - Next topic

cormullion

#15
What would be the best technique for providing a default behaviour that could be easily overridden with a custom behaviour while still being easy to update when the main software is changed?

rickyboy

#16
Quote from: "cormullion"What would be the best technique for providing a default behaviour that could be easily overridden with a custom behaviour while still being easy to update when the main software is changed?

Yeah, good question!  When you find that out, you will become famous in software engineering circles, because I think they haven't found "the best technique" for that yet.



And I'd like to know, too, about this as regards newLISP wiki (to which cormullion was really referring), 'cause I have more changes than the one at http://www.alh.net/newlisp/phpbb/viewtopic.php?p=9142#9142">#9142!!!  Maybe Lutz has a technique in mind.



Any help Lutz?  I'd hate for us all to have different versions of the software...
(λx. x x) (λx. x x)

cormullion

#17
I'm not in my comfort zone talking about this, but i know it's possible to redefine functions once they're defined elsewhere. For example, you can make your own code execute when 'println' is called, using 'constant'.



So 'all you need to do' (note optimistic use of quotation marks) is make your own versions of functions that provide the information used in the building of the web pages... What I'm not sure about is where those redefinition statements would go, and how much of the customizing could be done this way.

rickyboy

#18
Quote from: "cormullion"So 'all you need to do' (note optimistic use of quotation marks) is make your own versions of functions that provide the information used in the building of the web pages... What I'm not sure about is where those redefinition statements would go, and how much of the customizing could be done this way.

Even so, you'd still have to square your redefined functions with the new version of the official software coming in the future; so the problem remains ...  :-(
(λx. x x) (λx. x x)

Lutz

#19
QuoteWhat would be the best technique for providing a default behaviour that could be easily overridden with a custom behaviour while still being easy to update when the main software is changed?


There is an easy solution for your request with minimum code change. We introduce a new variable SETUP:never-show-title, which is either true or nil and use that :
(set 'has-pagename (and
                    (not (find {[(notitle|noname):]} abody 512))
                    (not SETUP:never-show-title)))


The changes would be in the user defined function 'setup-dialog' (around line 213) and the CGI processing segment 'CGI:get "setupdone"' (around line 1226). You can either do it yourself and send me the file or wait until the next release of newlisp-wiki appears.



Lutz

rickyboy

#20
Schweeeeet!!!!



One of the pluses about using newLISP over other similar software is the responsiveness of the developer/gatekeeper -- this advantage probably doesn't get mentioned as often as it should.  Thanks Lutz!



[Lutz, BTW I'll be in FL (Tampa & Miami) around late Dec, early Jan.  I sure would like to meet you in person and buy you a beer, if I could then.  :-)]



--Rick
(λx. x x) (λx. x x)