xsl-list
[Top] [All Lists]

Re: [xsl] XSLT 2.0 courses?

2020-09-21 14:26:09
  filter($sequence,$function) => head()

This seems nice, however it will probably filter the whole sequence and
only then take the head() of the resulting sequence.

Is there any guarantee that the evaluation of filter() will stop as
soon as
an initial item is produced?

I wouldn't think there would be, given that filter() in general is
specified to filter the whole sequence.

Maybe a smart optimizer can stop at the first filter result if the
expression is:

head( filter($sequence,$function))

Obviously we need a generators/co-routines mechanism... Would be ideal.


Dimitre

On Mon, Sep 21, 2020 at 12:17 PM Graydon graydon(_at_)marost(_dot_)ca <
xsl-list-service(_at_)lists(_dot_)mulberrytech(_dot_)com> wrote:

On Mon, Sep 21, 2020 at 07:06:21PM -0000, Dimitre Novatchev
dnovatchev(_at_)gmail(_dot_)com scripsit:
  filter($sequence,$function) => head()

This seems nice, however it will probably filter the whole sequence and
only then take the head() of the resulting sequence.

Is there any guarantee that the evaluation of filter() will stop as soon
as
an initial item is produced?

I wouldn't think there would be, given that filter() in general is
specified to filter the whole sequence.

I would in no way _object_ to a first-available() that's guaranteed to
stop as soon as it gets a true() result from $function.  And there's
obviously a point past which one doesn't want to keep chaining
"otherwise".  Frequency of the use-case might still be questionable.

--
Graydon Saunders  | graydonish(_at_)gmail(_dot_)com
Þæs oferéode, ðisses swá mæg.
-- Deor  ("That passed, so may this.")




-- 
Cheers,
Dimitre Novatchev
---------------------------------------
Truly great madness cannot be achieved without significant intelligence.
---------------------------------------
To invent, you need a good imagination and a pile of junk
-------------------------------------
Never fight an inanimate object
-------------------------------------
To avoid situations in which you might make mistakes may be the
biggest mistake of all
------------------------------------
Quality means doing it right when no one is looking.
-------------------------------------
You've achieved success in your field when you don't know whether what
you're doing is work or play
-------------------------------------
To achieve the impossible dream, try going to sleep.
-------------------------------------
Facts do not cease to exist because they are ignored.
-------------------------------------
Typing monkeys will write all Shakespeare's works in 200yrs.Will they write
all patents, too? :)
-------------------------------------
Sanity is madness put to good use.
-------------------------------------
I finally figured out the only reason to be alive is to enjoy it.
--~----------------------------------------------------------------
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
EasyUnsubscribe: http://lists.mulberrytech.com/unsub/xsl-list/1167547
or by email: xsl-list-unsub(_at_)lists(_dot_)mulberrytech(_dot_)com
--~--
<Prev in Thread] Current Thread [Next in Thread>