ASPN ActiveState Programmer Network
ActiveState
/ Home / Perl / PHP / Python / Tcl / XSLT /
/ Safari / My ASPN /
Cookbooks | Documentation | Mailing Lists | Modules | News Feeds | Products | User Groups


Recent Messages
List Archives
About the List
List Leaders
Subscription Options

View Subscriptions
Help

View by Topic
ActiveState
.NET Framework
Open Source
Perl
PHP
Python
Tcl
Web Services
XML & XSLT

View by Category
Database
General
SOAP
System Administration
Tools
User Interfaces
Web Programming
XML Programming


MyASPN >> Mail Archive >> exslt
exslt
[exslt] Function memoization
by Colin Paul Adams other posts by this author
Jul 2 2006 11:03PM messages near this date
Re: [exslt] Testing | Re: [exslt] Function memoization
& XSLT > >>>> "James" == James Fuller <jim.fuller@[...].uk> writes:

    > > modified form, a proposal that Dimitre Novatchev originally
    > > requested for memomizing xsl:functions.

    > > The modification being that the memoization reqest be an
    > > extension instruction actually present within the xsl:function
    > > concerned (this seems to me necessary to preserve compliance
    > > with the specifications - user-defined data elements and
    > > extension attributes may not cause a different final result
    > > tree to be produced, and, in some cases, memoization of a
    > > function will do just that).


    James>  I am interested in such a function as well.

OK. I shall try to define it's semantics:

func:memoize will be an extension instruction. No attributes. Only permitted contents is an 
xsl:fallback child.

The instruction must be an immediate child of an xsl:function or
func:function.
Good style suggests placing this immediately after the xsl:params, or
at the very end of the function body - but I do not think we need
mandate any such placement (except xsl:param must come first, as now).

An XSLT processor that supports func:memoize shall remember the
results of any calls to functions marked with a call to
func:memoize. If the function is called again with the same values for the arguments, 
it MUST return the remembered result.
It MUST NOT re-execute the function body, as this can cause different
results in some cases.


-- 
Colin Adams
Preston Lancashire
_______________________________________________
exslt mailing list
list@[...].org
http://www.exslt.org/list
Thread:
Colin Paul Adams
Colin Paul Adams

Privacy Policy | Email Opt-out | Feedback | Syndication
© ActiveState Software Inc. All rights reserved