- From: <bugzilla@jessica.w3.org>
- Date: Sun, 06 Nov 2016 07:37:36 +0000
- To: public-qt-comments@w3.org
https://www.w3.org/Bugs/Public/show_bug.cgi?id=29982 Bug ID: 29982 Summary: [XSLT30] What is this Note, comparing tunnel params with variables in functional languages referring to? Product: XPath / XQuery / XSLT Version: Candidate Recommendation Hardware: PC OS: Windows NT Status: NEW Severity: minor Priority: P2 Component: XSLT 3.0 Assignee: mike@saxonica.com Reporter: abel.braaksma@xs4all.nl QA Contact: public-qt-comments@w3.org Target Milestone: --- We write, under the definition of Tunnel Parameters (section 10.1.3): "Tunnel parameters are conceptually similar to dynamically scoped variables in some functional programming languages." I am not sure what this refers to. I use functional languages, though, while not claiming to be intimately familiar to all of them, I have not encountered this (unless I am confused by the terminology). However, what *is* very common in all functional languages (except XPath) is currying: let f a b = a + b // function takes two arguments and adds them let g a = f a 12 // create "tunnel" param for a, and fix b to 12 let h = f 42 // other way of creating "tunnel" param, and fix a to 42 Both functions g an f have an argument fixed, one for 12 and one for 42. The parameter a in g a is now tunneled through to f, and in h, which is seemingly without parameter, this is implicitly done. I think that tunneled parameters in XSLT are closest to currying, even though they are distinct techniques. Perhaps the Note in this section is supposed to mean currying with "dynamically scoped variables", but I am not sure. Perhaps the safest thing is to drop it, I find it confusing..., or to be more precise about what we refer to. -- You are receiving this mail because: You are the QA Contact for the bug.
Received on Sunday, 6 November 2016 07:37:44 UTC