- From: <bugzilla@jessica.w3.org>
- Date: Fri, 19 Nov 2010 18:31:06 +0000
- To: public-qt-comments@w3.org
http://www.w3.org/Bugs/Public/show_bug.cgi?id=11352
Summary: %nondeterministic and independent compilations of
modules
Product: XPath / XQuery / XSLT
Version: Member-only Editors Drafts
Platform: Macintosh
OS/Version: Mac System 9.x
Status: NEW
Severity: blocker
Priority: P2
Component: XQuery 3.0
AssignedTo: jonathan.robie@redhat.com
ReportedBy: dflorescu@mac.com
QAContact: public-qt-comments@w3.org
Dear all,
the way the %deterministic and %non-deterministic functionality is designed
right now
disallows independent compilation of XQuery modules, and this is a blocker (I
think).
http://www.w3.org/XML/Group/qtspecs/specifications/xquery-11/html/xquery-11.html#FunctionDeclns
The reason is: %nondeterministic can ONLY be added on external functions, and
it is not allowed
on user-defined functions.
Yes, it is true that for user-defined functions, this property can be inferred
by the compiler.
But in case of modules that invoke other modules, that requires the bodies of
ALL modules to be
compiled together. Hence, no independent compilation of XQuery
modules is allowed by the current version of the specification, and that's a
serious problem.
The solution is to require the %nonderministic to be added for ALL functions
that are nondeterministic
(user-defined as well as externals).
The compiler should double check and give an error in case of inconsistency
between what the programmer says and what can be automatically inferred.
Note: that is the reason of why modern languages like Java require the
exceptions to be declared by hand,
even though this can also be detected by the compiler. That's for independent
compilation of code.
Am I missing something ?
Best regards
Dana
--
Configure bugmail: http://www.w3.org/Bugs/Public/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the QA contact for the bug.
Received on Friday, 19 November 2010 18:31:08 UTC