From dflorescu at me.com Mon Jun 1 09:57:23 2015 From: dflorescu at me.com (daniela florescu) Date: Mon, 01 Jun 2015 09:57:23 -0700 Subject: [xquery-talk] the stupidity of using SQL as a query language for JSON Message-ID: Every day we can see one more of those in the industry: http://drill.apache.org They are usually received with extreme enthusiasm by the cohorts of "database developers without any engineering background", as Ihe calls them. It makes me cry every day. People are unbelievable gullible and can eat any kid of marketing stuff, without using their brains. It?s amazing. I mean? using Javascript to process server side JSON data is just performance and productivity-wise stupid. But at least it is doable, and ? correct. Gives some correct answers (20 hours or so later..). Using SQL to process JSON is simply NOT POSSIBLE. It?s like saying that we use C++, but we removed the objects and we replaced them with COBOL structures. Hey, but we are using C++ !!!!!! How can we stop this madness !??? One should REALLY start for JSON the SAME discussions we had in the XML world all over again, 20 years later !??? Distressed at the lack of thinking in the IT population, Dana From mike at saxonica.com Mon Jun 1 10:51:24 2015 From: mike at saxonica.com (Michael Kay) Date: Mon, 1 Jun 2015 18:51:24 +0100 Subject: [xquery-talk] the stupidity of using SQL as a query language for JSON In-Reply-To: References: Message-ID: <359386B3-FC48-409E-B080-C3F54EEEDB74@saxonica.com> > > Using SQL to process JSON is simply NOT POSSIBLE. > Proof? My Ph.D. thesis in 1975 showed that you can use SQL to query hierarchic data. With the emphasis on ?query?. The problems start with update. So long as you restrict yourself to query, you can map almost any data model onto any other. Though the fact that you can do it doesn?t mean that it?s a good idea, of course. In those days the reason for doing it was that SQL was the only declarative query language in town, and that?s no longer the case. Michael Kay Saxonica From ihe.onwuka at gmail.com Mon Jun 1 11:08:37 2015 From: ihe.onwuka at gmail.com (Ihe Onwuka) Date: Mon, 1 Jun 2015 14:08:37 -0400 Subject: [xquery-talk] the stupidity of using SQL as a query language for JSON In-Reply-To: <359386B3-FC48-409E-B080-C3F54EEEDB74@saxonica.com> References: <359386B3-FC48-409E-B080-C3F54EEEDB74@saxonica.com> Message-ID: Then I have some questions. So what happens to the closure property. Should I be allowed to join a JSON array with an object. Why not, or if so what type of thing will I get back and what will happen when if I try to query it (I will be allowed to query it won't I). If I ask to order by a field and there is no schema to tell me it's type what is SQL going to do. Talking of ordering how do I get the 5th array item or the 5th object when SQL only deals in unordered sets. What would be the result of union of two objects and how can I determine whether such a union should be allowed at all when there is no schema? On Mon, Jun 1, 2015 at 1:51 PM, Michael Kay wrote: > > > > Using SQL to process JSON is simply NOT POSSIBLE. > > > > Proof? > > My Ph.D. thesis in 1975 showed that you can use SQL to query hierarchic > data. With the emphasis on ?query?. The problems start with update. So long > as you restrict yourself to query, you can map almost any data model onto > any other. > > Though the fact that you can do it doesn?t mean that it?s a good idea, of > course. In those days the reason for doing it was that SQL was the only > declarative query language in town, and that?s no longer the case. > > Michael Kay > Saxonica > > > _______________________________________________ > talk at x-query.com > http://x-query.com/mailman/listinfo/talk -------------- next part -------------- An HTML attachment was scrubbed... URL: From dflorescu at me.com Mon Jun 1 11:40:20 2015 From: dflorescu at me.com (daniela florescu) Date: Mon, 01 Jun 2015 11:40:20 -0700 Subject: [xquery-talk] the stupidity of using SQL as a query language for JSON In-Reply-To: <359386B3-FC48-409E-B080-C3F54EEEDB74@saxonica.com> References: <359386B3-FC48-409E-B080-C3F54EEEDB74@saxonica.com> Message-ID: > On Jun 1, 2015, at 10:51 AM, Michael Kay wrote: > >> >> Using SQL to process JSON is simply NOT POSSIBLE. >> > > Proof? > > My Ph.D. thesis in 1975 showed that you can use SQL to query hierarchic data. With the emphasis on ?query?. The problems start with update. So long as you restrict yourself to query, you can map almost any data model onto any other. Michael, you did not read my email properly. I did NOT say that if you map JSON to relations (one way or another), you cannot use SQL on the result of the mapping. I said: you cannot apply SQL DIRECTLY on the JSON structures, because it?s semantics is not designed for that. Com?on Michael. You worked with me for 16 years now. Do I look like I?m so naive and I don?t get things ? So, please. I understand that EVERYTHING (C++ objects, XML elements, COBOL structures, assembly processing instructions, anything) can be mapped with enough brute force into relations, and that, without loss of any information. So thank you for this notice, but it does not relate to my email. (BTW, I proved the same thing as you 2O years later?and this was 20 years ago?didn?t know about your PhD sorry?. http://homes.cs.washington.edu/~suciu/PAPERS/florescu-kossman.pdf Apparently this is something that CS has to get it out of their system every 20 years ?the time is up again, I guess?...) The problem is that Drill (like everybody else in that bunch) apply SQL DIRECTLY on JSON structures, in the absence of any intermediary mapping into relations, which is again, I repeat: A NON-SENSE. And BTW Michael, if SQL would be good for querying hierarchical data, why in the world did we waste 16 years building XQuery !??? Just curious Dana > > Though the fact that you can do it doesn?t mean that it?s a good idea, of course. In those days the reason for doing it was that SQL was the only declarative query language in town, and that?s no longer the case. > > Michael Kay > Saxonica > From mike at saxonica.com Mon Jun 1 12:22:27 2015 From: mike at saxonica.com (Michael Kay) Date: Mon, 1 Jun 2015 20:22:27 +0100 Subject: [xquery-talk] the stupidity of using SQL as a query language for JSON In-Reply-To: References: <359386B3-FC48-409E-B080-C3F54EEEDB74@saxonica.com> Message-ID: > On 1 Jun 2015, at 19:08, Ihe Onwuka wrote: > > Then I have some questions. > > So what happens to the closure property. Well, if you?re going to apply SQL to JSON (say), then the first thing you have to do is define a mapping from JSON to tables. That?s not difficult to do. If by the ?closure property? you want the result of any SQL query to be the representation of some JSON structure, then you?re not going to achieve that. That?s essentially the same as the update problem. > > Should I be allowed to join a JSON array with an object. No, you don?t join arrays with objects (maps). You join the table representation of an array with the table representation of a map. And what you get back is a table, which of course you can query. > Why not, or if so what type of thing will I get back and what will happen when if I try to query it (I will be allowed to query it won't I). > > If I ask to order by a field and there is no schema to tell me it's type what is SQL going to do. JSON types are based on the syntax of the instance, not on any schema. If it looks like a number then it is a number. 4=4.0 is true, ?4?=?4.0? is false. > > Talking of ordering how do I get the 5th array item or the 5th object when SQL only deals in unordered sets. SQL doesn?t deal only in unordered sets. It deals in tables. It has an ?order by? operator. You?re probably thinking of the relational model, which is not the same as SQL. > > What would be the result of union of two objects and how can I determine whether such a union should be allowed at all when there is no schema? Again, it?s the union of two tables which are the representations of objects/maps, and the details depend on how you do the mapping. Michael Kay Saxonica > > > _______________________________________________ > talk at x-query.com > http://x-query.com/mailman/listinfo/talk -------------- next part -------------- An HTML attachment was scrubbed... URL: From mike at saxonica.com Mon Jun 1 12:29:59 2015 From: mike at saxonica.com (Michael Kay) Date: Mon, 1 Jun 2015 20:29:59 +0100 Subject: [xquery-talk] the stupidity of using SQL as a query language for JSON In-Reply-To: References: <359386B3-FC48-409E-B080-C3F54EEEDB74@saxonica.com> Message-ID: <0C59F60B-715E-4296-9AC3-C0AF4805D029@saxonica.com> > On 1 Jun 2015, at 19:40, daniela florescu wrote: > > >> On Jun 1, 2015, at 10:51 AM, Michael Kay wrote: >> >>> >>> Using SQL to process JSON is simply NOT POSSIBLE. >>> >> >> Proof? >> >> My Ph.D. thesis in 1975 showed that you can use SQL to query hierarchic data. With the emphasis on ?query?. The problems start with update. So long as you restrict yourself to query, you can map almost any data model onto any other. > > Michael, > > you did not read my email properly. > > I did NOT say that if you map JSON to relations (one way or another), you cannot use SQL on the result of the mapping. > > I said: you cannot apply SQL DIRECTLY on the JSON structures, because it?s semantics is not designed for that. You didn?t say ?DIRECTLY?. You said it was ?NOT POSSIBLE?. > > Com?on Michael. You worked with me for 16 years now. Do I look like I?m so naive and I don?t get things ? Of course not. You?ve got one of the best brains in the business. But that never stopped me debating with anyone. > > > And BTW Michael, if SQL would be good for querying hierarchical data, why in the world did we waste 16 years building XQuery !??? It didn?t say it was good for the purpose. I said it was possible. The only reason I can think of for actually doing it is that there?s a fair bit of software out there that likes to access its data using SQL. > > > Just curious > Dana > > Michael Kay Saxonica From dflorescu at me.com Mon Jun 1 12:51:42 2015 From: dflorescu at me.com (daniela florescu) Date: Mon, 01 Jun 2015 12:51:42 -0700 Subject: [xquery-talk] the stupidity of using SQL as a query language for JSON In-Reply-To: References: <359386B3-FC48-409E-B080-C3F54EEEDB74@saxonica.com> Message-ID: <900A583F-4E41-4CE4-B7F6-49D0DD5DCEEC@me.com> If I need more proof of the lack of understanding of the problem from the general user population, here is a quote form today?s Linkedin: "The problem is that without structure (schema) one needs to program in a procedural language.? Author will remain unknown?. Dana > On Jun 1, 2015, at 11:40 AM, daniela florescu wrote: > > >> On Jun 1, 2015, at 10:51 AM, Michael Kay wrote: >> >>> >>> Using SQL to process JSON is simply NOT POSSIBLE. >>> >> >> Proof? >> >> My Ph.D. thesis in 1975 showed that you can use SQL to query hierarchic data. With the emphasis on ?query?. The problems start with update. So long as you restrict yourself to query, you can map almost any data model onto any other. > > Michael, > > you did not read my email properly. > > I did NOT say that if you map JSON to relations (one way or another), you cannot use SQL on the result of the mapping. > > I said: you cannot apply SQL DIRECTLY on the JSON structures, because it?s semantics is not designed for that. > > Com?on Michael. You worked with me for 16 years now. Do I look like I?m so naive and I don?t get things ? > > So, please. I understand that EVERYTHING (C++ objects, XML elements, COBOL structures, > assembly processing instructions, anything) can be mapped with enough brute force into relations, and that, without > loss of any information. > > So thank you for this notice, but it does not relate to my email. > > (BTW, I proved the same thing as you 2O years later?and this was 20 years ago?didn?t know about your PhD sorry?. > http://homes.cs.washington.edu/~suciu/PAPERS/florescu-kossman.pdf > Apparently this is something that CS has to get it out of their system every 20 years ?the time is up again, I guess?...) > > > The problem is that Drill (like everybody else in that bunch) apply SQL DIRECTLY on JSON structures, in the absence of any intermediary mapping > into relations, which is again, I repeat: A NON-SENSE. > > > And BTW Michael, if SQL would be good for querying hierarchical data, why in the world did we waste 16 years building XQuery !??? > > > Just curious > Dana > > > > > > >> >> Though the fact that you can do it doesn?t mean that it?s a good idea, of course. In those days the reason for doing it was that SQL was the only declarative query language in town, and that?s no longer the case. >> >> Michael Kay >> Saxonica >> > -------------- next part -------------- An HTML attachment was scrubbed... URL: From ihe.onwuka at gmail.com Mon Jun 1 12:55:06 2015 From: ihe.onwuka at gmail.com (Ihe Onwuka) Date: Mon, 1 Jun 2015 15:55:06 -0400 Subject: [xquery-talk] the stupidity of using SQL as a query language for JSON In-Reply-To: References: <359386B3-FC48-409E-B080-C3F54EEEDB74@saxonica.com> Message-ID: On Mon, Jun 1, 2015 at 3:22 PM, Michael Kay wrote: > > On 1 Jun 2015, at 19:08, Ihe Onwuka wrote: > > Then I have some questions. > > So what happens to the closure property. > > > Well, if you?re going to apply SQL to JSON (say), then the first thing you > have to do is define a mapping from JSON to tables. That?s not difficult to > do. > > If by the ?closure property? you want the result of any SQL query to be > the representation of some JSON structure, then you?re not going to achieve > that. That?s essentially the same as the update problem. > > So pretty much no subqueries (ok somebody is going to say that any query entailing a subquery can be rewritten without one) but AFAIC the language you are talking about isn't really SQL then. Should I be allowed to join a JSON array with an object. > > > No, you don?t join arrays with objects (maps). You join the table > representation of an array with the table representation of a map. And what > you get back is a table, which of course you can query. > > Isn't there an impedance mismatch that has been hand-waved away somewhere in there. > Why not, or if so what type of thing will I get back and what will happen > when if I try to query it (I will be allowed to query it won't I). > > If I ask to order by a field and there is no schema to tell me it's type > what is SQL going to do. > > > JSON types are based on the syntax of the instance, not on any schema. If > it looks like a number then it is a number. 4=4.0 is true, ?4?=?4.0? is > false. > > > So I'm SOL if it's a date then. > Talking of ordering how do I get the 5th array item or the 5th object when > SQL only deals in unordered sets. > > > SQL doesn?t deal only in unordered sets. It deals in tables. It has an > ?order by? operator. You?re probably thinking of the relational model, > which is not the same as SQL. > > > Forgive me if I'm wrong. But I still don't believe I can write a statement that gets me the 5th row of the table. > What would be the result of union of two objects and how can I determine > whether such a union should be allowed at all when there is no schema? > > > Again, it?s the union of two tables which are the representations of > objects/maps, and the details depend on how you do the mapping. > > I'm not doing the mapping. You're the one who saying it can be done. How do you map a potentially infinitely recursive data structure into a flat 2 dimensional table. How would you predict a priori what your table and column names would be and how many of them. Say you had two semantically different (because they are at different levels of the hierarchy) but identically named tags what schema is that going to generate for your tables. If you don't can't predict the schema your semi-structured is going to generate then how could you write your query. Generate the tables first and then write it when you've seen what they've produced??? -------------- next part -------------- An HTML attachment was scrubbed... URL: From dflorescu at me.com Mon Jun 1 13:03:00 2015 From: dflorescu at me.com (daniela florescu) Date: Mon, 01 Jun 2015 13:03:00 -0700 Subject: [xquery-talk] the stupidity of using SQL as a query language for JSON In-Reply-To: References: <359386B3-FC48-409E-B080-C3F54EEEDB74@saxonica.com> Message-ID: <262B4BE9-E337-4E07-952F-77C6B4B1E5A4@me.com> > > SQL doesn?t deal only in unordered sets. It deals in tables. It has an ?order by? operator. You?re probably thinking of the relational model, which is not the same as SQL. Michael, yes, SQL deals only with unordered stuff (bags actually). Yes, you can order-by something, but that something has to be an explicit set of columns in the relations. Hence, in order to encode order (of an array for example) in a SQL table, you need to store somewhere the position of items in the array, in a way you can sort by it. (which will give you nightmares at update time) ?ve been there, done that?.not working properly. That?s NOT a path that leads ANYWHERE interesting. We?ve been there 20 years ago with SQL?.. Dana From dflorescu at me.com Mon Jun 1 13:07:57 2015 From: dflorescu at me.com (daniela florescu) Date: Mon, 01 Jun 2015 13:07:57 -0700 Subject: [xquery-talk] the stupidity of using SQL as a query language for JSON In-Reply-To: References: <359386B3-FC48-409E-B080-C3F54EEEDB74@saxonica.com> Message-ID: > > So pretty much no subqueries (ok somebody is going to say that any query entailing a subquery can be rewritten without one) but AFAIC the language you are talking about isn't really SQL then. That someone can come to me and I?ll show him/her gazzilions of nested queries that cannot be unnested (SQL and/or XQuery). In fact, the ones you CAN unnest are pretty rare?.. (I think I listed ALL of unnestable cases of XQuery here if I remember correctly?there are not that many?. http://dl.acm.org/citation.cfm?id=1315537 ) Not even the simplest form: for in for in ? cannot always be unnested in most cases if I remember correctly ?. Best Dana From dflorescu at me.com Mon Jun 1 13:50:59 2015 From: dflorescu at me.com (daniela florescu) Date: Mon, 01 Jun 2015 13:50:59 -0700 Subject: [xquery-talk] the stupidity of using SQL as a query language for JSON In-Reply-To: <0C59F60B-715E-4296-9AC3-C0AF4805D029@saxonica.com> References: <359386B3-FC48-409E-B080-C3F54EEEDB74@saxonica.com> <0C59F60B-715E-4296-9AC3-C0AF4805D029@saxonica.com> Message-ID: <5542C933-AC20-412C-9E10-A22B1754C9FC@me.com> > On Jun 1, 2015, at 12:29 PM, Michael Kay wrote: > >> >> >> And BTW Michael, if SQL would be good for querying hierarchical data, why in the world did we waste 16 years building XQuery !??? > > It didn?t say it was good for the purpose. I said it was possible. The only reason I can think of for actually doing it is that there?s a fair bit of software out there that likes to access its data using SQL. >> The paper I wrote with Donald Kossmann in 1997 about mapping XML into relations ALSO included the SQL queries equivalent to the simplest XPath expressions. Those SQL queries are HORRENDOUSLY complicated. I don?t care how many tools use SQL. Two things come to my mind: 1. Nobody will write such SQL queries (that result from the mapping JSON-> tables or XML -> tables) and 2. Even if you manage to write them somehow, the queries are SO complex, the relational database engines are not capable of dealing with them ? not even Oracle. (Jay here https://www.linkedin.com/profile/view?id=955015 wrote his PhD about such SQL queries, and I think he wakes up with nightmares even now?) Tools will need to adapt to a new query language for JSON. Or we need new tools. Or we abandon JSON. That?s as simple as that. Best regards Dana -------------- next part -------------- An HTML attachment was scrubbed... URL: From mike at saxonica.com Mon Jun 1 14:28:44 2015 From: mike at saxonica.com (Michael Kay) Date: Mon, 1 Jun 2015 22:28:44 +0100 Subject: [xquery-talk] the stupidity of using SQL as a query language for JSON In-Reply-To: References: <359386B3-FC48-409E-B080-C3F54EEEDB74@saxonica.com> Message-ID: > > Well, if you?re going to apply SQL to JSON (say), then the first thing you have to do is define a mapping from JSON to tables. That?s not difficult to do. > > If by the ?closure property? you want the result of any SQL query to be the representation of some JSON structure, then you?re not going to achieve that. That?s essentially the same as the update problem. > > > So pretty much no subqueries (ok somebody is going to say that any query entailing a subquery can be rewritten without one) but AFAIC the language you are talking about isn't really SQL then. I don?t follow. You can write any query you like; it?s just that the result is a table that might not be mappable back to JSON. >> > > So I'm SOL if it's a date then. You won?t get any dates in the table representation of JSON, but you can get them in tables returned by a query. > >> > > Forgive me if I'm wrong. But I still don't believe I can write a statement that gets me the 5th row of the table. Well, a typical representation of a JSON array [?a?, ?b?, ?c?] might be the table ARRAYS ID INDEX TYPE VALUE 001 0 String ?a? 001 1 String ?b? 001 2 String ?c? and the query to get item 2 of array 001 would be SELECT TYPE, VALUE FROM ARRAYS WHERE ID=001 AND INDEX=2 As far as I understand it this is similar to the mapping that SQL Server uses for XML. > > > How would you predict a priori what your table and column names would be and how many of them. If you?ve got no schema then you have to use a generic mapping in which the table and column names are generic concepts such as ARRAY, MAP, etc. > > > If you don't can't predict the schema your semi-structured is going to generate then how could you write your query. With difficulty. I can?t see anyone wanting to write it by hand. Michael Kay Saxonica -------------- next part -------------- An HTML attachment was scrubbed... URL: From dflorescu at me.com Mon Jun 1 14:44:28 2015 From: dflorescu at me.com (daniela florescu) Date: Mon, 01 Jun 2015 14:44:28 -0700 Subject: [xquery-talk] the stupidity of using SQL as a query language for JSON In-Reply-To: References: <359386B3-FC48-409E-B080-C3F54EEEDB74@saxonica.com> Message-ID: <928A018B-9F38-4551-B9F7-722CC31CC74B@me.com> >> >> >> If you don't can't predict the schema your semi-structured is going to generate then how could you write your query. > > With difficulty. I can?t see anyone wanting to write it by hand. Look at a simple path expression like $x//a//b (bread and butter for any semi-structured query language) This would translate into the equivalent SQL with: 1. nested queries 2. nested RECURSIVE queries in fact 3. two outer joins. Good luck with trying to: 1. write that by hand and 2. find a SQL implementation that optimizes and executes that properly?. And that?s ?just? a simple $x//a//b??. Now imagine your typical XQuery (soon to be JSOniq:-) program. Best regards Dana From ihe.onwuka at gmail.com Mon Jun 1 20:21:41 2015 From: ihe.onwuka at gmail.com (Ihe Onwuka) Date: Mon, 1 Jun 2015 23:21:41 -0400 Subject: [xquery-talk] the stupidity of using SQL as a query language for JSON In-Reply-To: References: <359386B3-FC48-409E-B080-C3F54EEEDB74@saxonica.com> Message-ID: So SQL over JSON = Turing Tarpit. Fair summarisation? On Mon, Jun 1, 2015 at 5:28 PM, Michael Kay wrote: > >> Well, if you?re going to apply SQL to JSON (say), then the first thing >> you have to do is define a mapping from JSON to tables. That?s not >> difficult to do. >> >> If by the ?closure property? you want the result of any SQL query to be >> the representation of some JSON structure, then you?re not going to achieve >> that. That?s essentially the same as the update problem. >> >> > So pretty much no subqueries (ok somebody is going to say that any query > entailing a subquery can be rewritten without one) but AFAIC the language > you are talking about isn't really SQL then. > > > I don?t follow. You can write any query you like; it?s just that the > result is a table that might not be mappable back to JSON. > > >> So I'm SOL if it's a date then. > > > You won?t get any dates in the table representation of JSON, but you can > get them in tables returned by a query. > > > >> >> Forgive me if I'm wrong. But I still don't believe I can write a > statement that gets me the 5th row of the table. > > > Well, a typical representation of a JSON array [?a?, ?b?, ?c?] might be > the table > > ARRAYS > ID INDEX TYPE VALUE > 001 0 String ?a? > 001 1 String ?b? > 001 2 String ?c? > > and the query to get item 2 of array 001 would be > > SELECT TYPE, VALUE FROM ARRAYS WHERE ID=001 AND INDEX=2 > > As far as I understand it this is similar to the mapping that SQL Server > uses for XML. > > > > How would you predict a priori what your table and column names would be > and how many of them. > > > If you?ve got no schema then you have to use a generic mapping in which > the table and column names are generic concepts such as ARRAY, MAP, etc. > > > > > If you don't can't predict the schema your semi-structured is going to > generate then how could you write your query. > > > With difficulty. I can?t see anyone wanting to write it by hand. > > Michael Kay > Saxonica > -------------- next part -------------- An HTML attachment was scrubbed... URL: From dflorescu at me.com Mon Jun 1 20:25:25 2015 From: dflorescu at me.com (daniela florescu) Date: Mon, 01 Jun 2015 20:25:25 -0700 Subject: [xquery-talk] the stupidity of using SQL as a query language for JSON In-Reply-To: References: <359386B3-FC48-409E-B080-C3F54EEEDB74@saxonica.com> Message-ID: <9AE0A084-1B17-4595-A4AC-DC20519D531C@me.com> > > So SQL over JSON = Turing Tarpit. Yep. Fair summary. Dana P.S. BTW, in the complexity of the the simple query below, I forgot that every nested query has also a sortby. And the nested queries are not un-nestable :-))) I even wonder if such queries can be written in SQL-99?:-) > > Fair summarisation? > > On Mon, Jun 1, 2015 at 5:28 PM, Michael Kay > wrote: >> >> Well, if you?re going to apply SQL to JSON (say), then the first thing you have to do is define a mapping from JSON to tables. That?s not difficult to do. >> >> If by the ?closure property? you want the result of any SQL query to be the representation of some JSON structure, then you?re not going to achieve that. That?s essentially the same as the update problem. >> >> >> So pretty much no subqueries (ok somebody is going to say that any query entailing a subquery can be rewritten without one) but AFAIC the language you are talking about isn't really SQL then. > > I don?t follow. You can write any query you like; it?s just that the result is a table that might not be mappable back to JSON. > >>> >> >> So I'm SOL if it's a date then. > > You won?t get any dates in the table representation of JSON, but you can get them in tables returned by a query. >> >>> >> >> Forgive me if I'm wrong. But I still don't believe I can write a statement that gets me the 5th row of the table. > > Well, a typical representation of a JSON array [?a?, ?b?, ?c?] might be the table > > ARRAYS > ID INDEX TYPE VALUE > 001 0 String ?a? > 001 1 String ?b? > 001 2 String ?c? > > and the query to get item 2 of array 001 would be > > SELECT TYPE, VALUE FROM ARRAYS WHERE ID=001 AND INDEX=2 > > As far as I understand it this is similar to the mapping that SQL Server uses for XML. > >> >> >> How would you predict a priori what your table and column names would be and how many of them. > > If you?ve got no schema then you have to use a generic mapping in which the table and column names are generic concepts such as ARRAY, MAP, etc. > > >> >> >> If you don't can't predict the schema your semi-structured is going to generate then how could you write your query. > > With difficulty. I can?t see anyone wanting to write it by hand. > > Michael Kay > Saxonica > -------------- next part -------------- An HTML attachment was scrubbed... URL: From mike at saxonica.com Tue Jun 2 00:38:44 2015 From: mike at saxonica.com (Michael Kay) Date: Tue, 2 Jun 2015 08:38:44 +0100 Subject: [xquery-talk] the stupidity of using SQL as a query language for JSON In-Reply-To: References: <359386B3-FC48-409E-B080-C3F54EEEDB74@saxonica.com> Message-ID: <2FEBFB23-F89C-4BAB-882C-DE23A830B166@saxonica.com> > On 2 Jun 2015, at 04:21, Ihe Onwuka wrote: > > So SQL over JSON = Turing Tarpit. > > Fair summarisation? > Yes, I?d concur with that. Same applies to SQL over XML. It?s something that?s theoretically possible but not fit for human consumption; only of interest to the extent that it might provide a lower-level interface for a language like XQuery to target. And even then, Microsoft?s attempts to do XQuery this way should probably encourage other people to stay well clear. Michael Kay Saxonica From dflorescu at me.com Tue Jun 2 20:38:58 2015 From: dflorescu at me.com (daniela florescu) Date: Tue, 02 Jun 2015 20:38:58 -0700 Subject: [xquery-talk] not sure if I should laugh with big tears or cry with big tears...:-))))) Message-ID: <102180CF-6D2F-4F89-A92F-CD20521CBD4E@me.com> I copy and paste here from Linkedin my conversation with one of the top scientists of on of the top NoSQL databases: Couchbase?. "Please consider real world deployments, not academic endeavors....This is still an inexact science? :-)))))))) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Dana, Please consider real world deployments, not academic endeavors....This is still an inexact science. On 6/2/15, 10:38 AM, Daniela Florescu wrote: -------------------- Dear, you have a query language implemented, and you have no specification written for it !??? That's weird to say the least. I never heard of a programming language (because a query language is a programming language...), whose specification is only in Powerpoint. Sorry, I don't have time. If you have a specification written, please send it to me, and I'll give you an honest feedback. Best Dana On 6/2/15, 10:33 AM, XXXXl wrote: -------------------- Daniela, Couchbase Connect 15 going on this week at Levis Stadium in Santa Clara. You should check it out. We are talking up our query language N!QL. http://www.cvent.com/events/couchbase-connect-15/event-summary-b7744ca960364b75aba41de42cbef19e.aspx -------------- next part -------------- An HTML attachment was scrubbed... URL: From ihe.onwuka at gmail.com Tue Jun 2 22:09:53 2015 From: ihe.onwuka at gmail.com (Ihe Onwuka) Date: Wed, 3 Jun 2015 01:09:53 -0400 Subject: [xquery-talk] not sure if I should laugh with big tears or cry with big tears...:-))))) In-Reply-To: <102180CF-6D2F-4F89-A92F-CD20521CBD4E@me.com> References: <102180CF-6D2F-4F89-A92F-CD20521CBD4E@me.com> Message-ID: Feel free to paste this from a couple days ago - no attribution required. "History always has valuable lessons to teach us. If you look at the NOSQL landscape in terms of players it is not dissimilar to the landscape in the early relational era (which includes the non-relational vendors). Many of those companies had success, rapid growth and then either got too uppity or made a strategic error and were acquired, often by Computer Associates" I would modify it to emphasise that such acquisitions were usually done on the cheap. As to whether you should laugh or cry, some perspective here. There is a growing trend for companies to seek individuals who are "passionate about technology (or some derivative specialism thereof)" and I note a corresponding rise in the number of people branding themselves as such. I am passionate about my woman and passionate about Tottenham Hotspur Football club. More than enough emotional roller-coaster there but if it's not enough. Be passionate about your children, be passionate about your dog, be passionate about ending homelesness and hunger. Do not waste your emotions being passionate about technology. I would imagine that to do a PhD you need that to some extent but doing a PhD does not require you to immerse yourself in stupidity. Or you could dispense with all I just said http://www.frugal-cafe.com/public_html/frugal-blog/frugal-cafe-blogzone/wp-content/uploads/2012/03/forrest-gump-stupid-is-as-stupid-does.jpg On Tue, Jun 2, 2015 at 11:38 PM, daniela florescu wrote: > I copy and paste here from Linkedin my conversation with one of the top > scientists of on of the top NoSQL databases: Couchbase?. > > "Please consider real world deployments, not academic endeavors....This > is still an inexact science? :-)))))))) > > > ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ > > > Dana, > > Please consider real world deployments, not academic endeavors....This is > still an inexact science. > > On 6/2/15, 10:38 AM, Daniela Florescu wrote: > -------------------- > Dear, > > you have a query language implemented, and you have no specification > written for it !??? > > That's weird to say the least. > > I never heard of a programming language (because a query language is a > programming language...), whose specification is only in Powerpoint. > > Sorry, I don't have time. > > If you have a specification written, please send it to me, and I'll give > you an honest feedback. > > Best > Dana > > On 6/2/15, 10:33 AM, XXXXl wrote: > -------------------- > Daniela, > > Couchbase Connect 15 going on this week at Levis Stadium in Santa Clara. > You should check it out. We are talking up our query language N!QL. > > > http://www.cvent.com/events/couchbase-connect-15/event-summary-b7744ca960364b75aba41de42cbef19e.aspx > > > - > > > > _______________________________________________ > talk at x-query.com > http://x-query.com/mailman/listinfo/talk > -------------- next part -------------- An HTML attachment was scrubbed... URL: From ihe.onwuka at gmail.com Tue Jun 2 22:11:54 2015 From: ihe.onwuka at gmail.com (Ihe Onwuka) Date: Wed, 3 Jun 2015 01:11:54 -0400 Subject: [xquery-talk] not sure if I should laugh with big tears or cry with big tears...:-))))) In-Reply-To: References: <102180CF-6D2F-4F89-A92F-CD20521CBD4E@me.com> Message-ID: Should read Or you could dispense with all I just said and just send him this http://www.frugal-cafe.com/public_html/frugal-blog/frugal-cafe-blogzone/wp-content/uploads/2012/03/forrest-gump-stupid-is-as-stupid-does.jpg On Wed, Jun 3, 2015 at 1:09 AM, Ihe Onwuka wrote: > Feel free to paste this from a couple days ago - no attribution required. > > "History always has valuable lessons to teach us. If you look at the NOSQL > landscape in terms of players it is not dissimilar to the landscape in the > early relational era (which includes the non-relational vendors). Many of > those companies had success, rapid growth and then either got too uppity or > made a strategic error and were acquired, often by Computer Associates" > > I would modify it to emphasise that such acquisitions were usually done on > the cheap. > > As to whether you should laugh or cry, some perspective here. There is a > growing trend for companies to seek individuals who are "passionate about > technology (or some derivative specialism thereof)" and I note a > corresponding rise in the number of people branding themselves as such. > > I am passionate about my woman and passionate about Tottenham Hotspur > Football club. More than enough emotional roller-coaster there but if it's > not enough. Be passionate about your children, be passionate about your > dog, be passionate about ending homelesness and hunger. Do not waste your > emotions being passionate about technology. I would imagine that to do a > PhD you need that to some extent but doing a PhD does not require you to > immerse yourself in stupidity. > > Or you could dispense with all I just said > > > http://www.frugal-cafe.com/public_html/frugal-blog/frugal-cafe-blogzone/wp-content/uploads/2012/03/forrest-gump-stupid-is-as-stupid-does.jpg > > > > > > > On Tue, Jun 2, 2015 at 11:38 PM, daniela florescu > wrote: > >> I copy and paste here from Linkedin my conversation with one of the top >> scientists of on of the top NoSQL databases: Couchbase?. >> >> "Please consider real world deployments, not academic endeavors....This >> is still an inexact science? :-)))))))) >> >> >> ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ >> >> >> Dana, >> >> Please consider real world deployments, not academic endeavors....This is >> still an inexact science. >> >> On 6/2/15, 10:38 AM, Daniela Florescu wrote: >> -------------------- >> Dear, >> >> you have a query language implemented, and you have no specification >> written for it !??? >> >> That's weird to say the least. >> >> I never heard of a programming language (because a query language is a >> programming language...), whose specification is only in Powerpoint. >> >> Sorry, I don't have time. >> >> If you have a specification written, please send it to me, and I'll give >> you an honest feedback. >> >> Best >> Dana >> >> On 6/2/15, 10:33 AM, XXXXl wrote: >> -------------------- >> Daniela, >> >> Couchbase Connect 15 going on this week at Levis Stadium in Santa Clara. >> You should check it out. We are talking up our query language N!QL. >> >> >> http://www.cvent.com/events/couchbase-connect-15/event-summary-b7744ca960364b75aba41de42cbef19e.aspx >> >> >> - >> >> >> >> _______________________________________________ >> talk at x-query.com >> http://x-query.com/mailman/listinfo/talk >> > > -------------- next part -------------- An HTML attachment was scrubbed... URL: From dflorescu at me.com Wed Jun 3 11:15:51 2015 From: dflorescu at me.com (daniela florescu) Date: Wed, 03 Jun 2015 11:15:51 -0700 Subject: [xquery-talk] not sure if I should laugh with big tears or cry with big tears...:-))))) In-Reply-To: <102180CF-6D2F-4F89-A92F-CD20521CBD4E@me.com> References: <102180CF-6D2F-4F89-A92F-CD20521CBD4E@me.com> Message-ID: <7D7EB726-E9CF-4A0C-8BEB-BE5EC587781E@me.com> I guess I should cry with big tears?and not laugh at all. Even smart people like Kurt Cagle would like to see this ?inexact science language? (because there are two kinds of sciences, one exact, and one inexact?..) standardized as ISO ?. https://www.linkedin.com/pulse/n1ql-couchbase-brings-sql-json-kurt-cagle The world is weird. Dana > On Jun 2, 2015, at 8:38 PM, daniela florescu wrote: > > I copy and paste here from Linkedin my conversation with one of the top > scientists of on of the top NoSQL databases: Couchbase?. > > "Please consider real world deployments, not academic endeavors....This is still an inexact science? :-)))))))) > > ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ > > > Dana, > > Please consider real world deployments, not academic endeavors....This is still an inexact science. > > On 6/2/15, 10:38 AM, Daniela Florescu wrote: > -------------------- > Dear, > > you have a query language implemented, and you have no specification written for it !??? > > That's weird to say the least. > > I never heard of a programming language (because a query language is a programming language...), whose specification is only in Powerpoint. > > Sorry, I don't have time. > > If you have a specification written, please send it to me, and I'll give you an honest feedback. > > Best > Dana > > On 6/2/15, 10:33 AM, XXXXl wrote: > -------------------- > Daniela, > > Couchbase Connect 15 going on this week at Levis Stadium in Santa Clara. You should check it out. We are talking up our query language N!QL. > > http://www.cvent.com/events/couchbase-connect-15/event-summary-b7744ca960364b75aba41de42cbef19e.aspx > > -------------- next part -------------- An HTML attachment was scrubbed... URL: From ihe.onwuka at gmail.com Wed Jun 3 18:04:33 2015 From: ihe.onwuka at gmail.com (Ihe Onwuka) Date: Wed, 3 Jun 2015 21:04:33 -0400 Subject: [xquery-talk] not sure if I should laugh with big tears or cry with big tears...:-))))) In-Reply-To: <7D7EB726-E9CF-4A0C-8BEB-BE5EC587781E@me.com> References: <102180CF-6D2F-4F89-A92F-CD20521CBD4E@me.com> <7D7EB726-E9CF-4A0C-8BEB-BE5EC587781E@me.com> Message-ID: All that effort into designing a language that has no published specification, will almost certainly never be a published standard and therefore no financial institution will be prepared to pay a N1QL for. Stupid is as Stupid Does. On Wed, Jun 3, 2015 at 2:15 PM, daniela florescu wrote: > I guess I should cry with big tears?and not laugh at all. > > Even smart people like Kurt Cagle would like to see this ?inexact science > language? (because there are two kinds of > sciences, one exact, and one inexact?..) standardized as ISO ?. > > https://www.linkedin.com/pulse/n1ql-couchbase-brings-sql-json-kurt-cagle > > The world is weird. > > Dana > > > On Jun 2, 2015, at 8:38 PM, daniela florescu wrote: > > I copy and paste here from Linkedin my conversation with one of the top > scientists of on of the top NoSQL databases: Couchbase?. > > "Please consider real world deployments, not academic endeavors....This > is still an inexact science? :-)))))))) > > > ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ > > > Dana, > > Please consider real world deployments, not academic endeavors....This is > still an inexact science. > > On 6/2/15, 10:38 AM, Daniela Florescu wrote: > -------------------- > Dear, > > you have a query language implemented, and you have no specification > written for it !??? > > That's weird to say the least. > > I never heard of a programming language (because a query language is a > programming language...), whose specification is only in Powerpoint. > > Sorry, I don't have time. > > If you have a specification written, please send it to me, and I'll give > you an honest feedback. > > Best > Dana > > On 6/2/15, 10:33 AM, XXXXl wrote: > -------------------- > Daniela, > > Couchbase Connect 15 going on this week at Levis Stadium in Santa Clara. > You should check it out. We are talking up our query language N!QL. > > > http://www.cvent.com/events/couchbase-connect-15/event-summary-b7744ca960364b75aba41de42cbef19e.aspx > > > - > > > > > _______________________________________________ > talk at x-query.com > http://x-query.com/mailman/listinfo/talk > -------------- next part -------------- An HTML attachment was scrubbed... URL: From dflorescu at me.com Wed Jun 3 19:50:25 2015 From: dflorescu at me.com (daniela florescu) Date: Wed, 03 Jun 2015 19:50:25 -0700 Subject: [xquery-talk] not sure if I should laugh with big tears or cry with big tears...:-))))) In-Reply-To: References: <102180CF-6D2F-4F89-A92F-CD20521CBD4E@me.com> <7D7EB726-E9CF-4A0C-8BEB-BE5EC587781E@me.com> Message-ID: <3D114DE4-8973-4C12-9D45-EAB4BE88E9D2@me.com> What I think will happen is the following: 1. ISO will look at them like they are crazy when they send a language specification in Powerpoint 2. They?ll scratch their heads and probable write SOMETHING that ( kind of ) makes sense 3. That SOMETHING written up will extend (some bastardized subset of) SQL 4. In the process, they forget that SQL in 2015 looks like THIS :-)))))))) http://savage.net.au/SQL/sql-99.bnf.html (good luck, guys!!!! You complain that extending XQuery is hard. Well, try THIS then :-) Ha, Ha, Ha ?..)) 5. That SOMETHING will look just like SQL-XML,. which disappeared in the hole it came from... as soon as it was on print?. http://en.wikipedia.org/wiki/SQL/XML 6. They will pay a lot of ?bloggers? to convince gullible people that SQL is the perfect ?query? language for semi-structured data. YES. But only if you have negative IQ and have no idea about semi-structured data. (unfortunately there are lots of those) Some of those guys already argue with me (very annoyingly to be honest, and without ANY knowledge of databases) on Linkedin (if those companies choose people to argue with me? at least choose someone who can hold a scientific argument with me?. at least make it a little fun for me?.please ?..) As an example, please check this: https://www.linkedin.com/grp/post/54257-6010072547398336516 ++++++++++++++++++++++++++++++ And I just told you my best guess. It?s nothing then a simple ?hunch?, without any proof to it. The three companies that ?make" this N1QL a success are: CouchDB, MarkLogic and Oracle. I worked long enough at Oracle to recognize the ?touch? of stupid politics, in top of a basis of bad technology. And MarkLogic, given their executive people are only coming from Oracle, is likely to behave the same. And I right, guys ??? Oracle ? MarkLogic ? Any comments ? ====================== Did I tell you, guys ??? I LOVE guess games ?. :-))))))) I enjoy them !!!!! Bring some more !!!! Have a great evening everybody, Dana > On Jun 3, 2015, at 6:04 PM, Ihe Onwuka wrote: > > All that effort into designing a language that has no published specification, will almost certainly never be a published standard and therefore no financial institution will be prepared to pay a N1QL for. > > Stupid is as Stupid Does. > > On Wed, Jun 3, 2015 at 2:15 PM, daniela florescu > wrote: > I guess I should cry with big tears?and not laugh at all. > > Even smart people like Kurt Cagle would like to see this ?inexact science language? (because there are two kinds of > sciences, one exact, and one inexact?..) standardized as ISO ?. > > https://www.linkedin.com/pulse/n1ql-couchbase-brings-sql-json-kurt-cagle > > The world is weird. > > Dana > > >> On Jun 2, 2015, at 8:38 PM, daniela florescu > wrote: >> >> I copy and paste here from Linkedin my conversation with one of the top >> scientists of on of the top NoSQL databases: Couchbase?. >> >> "Please consider real world deployments, not academic endeavors....This is still an inexact science? :-)))))))) >> >> ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ >> >> >> Dana, >> >> Please consider real world deployments, not academic endeavors....This is still an inexact science. >> >> On 6/2/15, 10:38 AM, Daniela Florescu wrote: >> -------------------- >> Dear, >> >> you have a query language implemented, and you have no specification written for it !??? >> >> That's weird to say the least. >> >> I never heard of a programming language (because a query language is a programming language...), whose specification is only in Powerpoint. >> >> Sorry, I don't have time. >> >> If you have a specification written, please send it to me, and I'll give you an honest feedback. >> >> Best >> Dana >> >> On 6/2/15, 10:33 AM, XXXXl wrote: >> -------------------- >> Daniela, >> >> Couchbase Connect 15 going on this week at Levis Stadium in Santa Clara. You should check it out. We are talking up our query language N!QL. >> >> http://www.cvent.com/events/couchbase-connect-15/event-summary-b7744ca960364b75aba41de42cbef19e.aspx >> >> > > > _______________________________________________ > talk at x-query.com > http://x-query.com/mailman/listinfo/talk > > _______________________________________________ > talk at x-query.com > http://x-query.com/mailman/listinfo/talk -------------- next part -------------- An HTML attachment was scrubbed... URL: From ihe.onwuka at gmail.com Thu Jun 4 11:57:03 2015 From: ihe.onwuka at gmail.com (Ihe Onwuka) Date: Thu, 4 Jun 2015 14:57:03 -0400 Subject: [xquery-talk] not sure if I should laugh with big tears or cry with big tears...:-))))) In-Reply-To: <1D56BCD3-FBFD-47D4-8741-E4D88FE1E6D1@me.com> References: <3D114DE4-8973-4C12-9D45-EAB4BE88E9D2@me.com> <1D56BCD3-FBFD-47D4-8741-E4D88FE1E6D1@me.com> Message-ID: In may 2014 3 researchers write a paper entitled The SQL++ Unifying Semi-structured Query Language, and an Expressiveness Benchmark of SQL-on-Hadoop, NoSQL and NewSQL Databases which has 65 references to JSONiq. In April 2015 the same 3 researchers published The SQL++ Query Language: Configurable, Unifying and Semi-structured which has zero references to JSONiq. Does anybody have any suggestions as to roundabout when they started getting funding from Couchbase? On Thu, Jun 4, 2015 at 12:38 PM, daniela florescu wrote: > Dear David (Dewitt) > > I had this discussion on Linkedin this morning > > https://www.linkedin.com/grp/post/54257-6010072547398336516 > > Look at the last comment from CouchBase, defending his turf and telling me > ?We have SQL luminaries!? > > :-))) > > ***************************************************** > > Show previous comments > > 1. [image: Ihe Onwuka] > > 37m > Ihe Onwuka > > Partly because the real reasons engineering reasons why SQL is > desirable as a query language have become subservient to the commercial > ones (non-techies are used to it and we already know it). A moments thought > and you will realise that is a formula for technological rigor mortis - > there would never be any progress. The engineering reasons are, > declarativity, logical and physical data independence and built in query > optimisation. These in turn brought several ergonomic advantages to > database development which hierarchical and network databases lacked. That > being the case a language like JSONiq that has those attributes wins but > what is happening here is not about science or engineering and if you give > an academic funding to solve a problem that has already been solved from an > engineering and semantic perspective he is not going to turn it down and to > be fair its' still an interesting question. God know's how much is being > spent on this and there is no guarantee of a product at the end. show > less > 2. [image: Gerald Sangudi] > > 16m > Gerald Sangudi > > Dana, trust me, we have SQL luminaries :) > > > > +++++++++++++++++++++++++++++++++++ > > > David, when this guy from CouchDB is boasting that they have ?SQL > luminaries? working on this silly N1QL, > I really hope he?s not talking about you?.or no-one else on this list. > > I have a huge respect for you, and I would very much like to keep it this > way. > > Whoever those ?luminaries? this guy is talking about?. I guess that at > some point we will need to have a PUBLIC scientific > discussion. > > But I would like to keep it at the level of ?scientific? discussion. > > Not ?my language is transcendental, yours isn?t? (!??). > > Ot threatening 60 years old people to be fired if they don?t say what you > want them to say?. > > Ot other little creepy stuff like that that companies do?.. > > Best regards > Dana > > > > > > > > > > > > On Jun 3, 2015, at 8:13 PM, daniela florescu wrote: > > Dear Microsoft people, (David, Michael, Donald) > > I KNOW for sure that, other then Oracle, Microsoft is involved into this > ?agreement? around this totally shitty N1QL (WTF !???) > (not sure yet about IBM? but about to figure that out ?) > > I didn?t involve Microsoft publicly (yet) because I (still) have respect > for you three: > David Dewitt, Donald Kossmann, and Michael Rys, and I didn?t want to hurt > you, personally. > > Don?t disappoint me my kindness, please. > > If you get silly, and you personally get on the side of Oracle, Roger > Bamford, Gary Bloom, and the rest of technical idiots on this cc, > ******I DO NOT GUARANTEE POLITICAL ASYLUM******** > > PLEASE DO NOT BE TECHNICALLY STUPID. > > YOU KNOW THAT WHATEVER YOU DO, I WILL BE SMARTER?..and I know more on the > subject then all of you put together. > > I also know that you personally might not be involved in this JSON > decision. > > Please be kind and pass along my message to the Microsoft ?authorities? > in charge: STAY FUCKING CLEAR FROM HURTING JSONiq. > > From now on, I will take no prisoners, and ANY technical stupidity will be > VISIBLE on print. > > The beauty of social media?... > > Best regards > Dana > > > > > Begin forwarded message: > > *From: *daniela florescu > *Date: *June 3, 2015 at 7:50:25 PM PDT > *To: *ihe.onwuka at gmail.com > *Cc: *"talk at x-query.com" > *Subject: **Re: [xquery-talk] not sure if I should laugh with big tears > or cry with big tears...:-)))))* > > What I think will happen is the following: > > 1. ISO will look at them like they are crazy when they send a language > specification in Powerpoint > > 2. They?ll scratch their heads and probable write SOMETHING that ( kind > of ) makes sense > > 3. That SOMETHING written up will extend (some bastardized subset of) SQL > > 4. In the process, they forget that SQL in 2015 looks like THIS :-)))))))) > http://savage.net.au/SQL/sql-99.bnf.html > (good luck, guys!!!! You complain that extending XQuery is hard. Well, > try THIS then :-) Ha, Ha, Ha ?..)) > > 5. That SOMETHING will look just like SQL-XML,. which disappeared in the > hole it came from... as soon as it was on print?. > http://en.wikipedia.org/wiki/SQL/XML > > 6. They will pay a lot of ?bloggers? to convince gullible people that SQL > is the perfect ?query? language > for semi-structured data. YES. But only if you have negative IQ and have > no idea about semi-structured data. > (unfortunately there are lots of those) > > Some of those guys already argue with me (very annoyingly to be honest, > and without ANY knowledge of databases) on Linkedin > (if those companies choose people to argue with me? at least choose > someone who can hold a scientific argument with me?. at least > make it a little fun for me?.please ?..) > > As an example, please check this: > https://www.linkedin.com/grp/post/54257-6010072547398336516 > > ++++++++++++++++++++++++++++++ > > > And I just told you my best guess. It?s nothing then a simple ?hunch?, > without any proof to it. > > The three companies that ?make" this N1QL a success are: CouchDB, > MarkLogic and Oracle. > > I worked long enough at Oracle to recognize the ?touch? of stupid > politics, in top of a basis of bad technology. > And MarkLogic, given their executive people are only coming from Oracle, > is likely to behave the same. > > And I right, guys ??? Oracle ? MarkLogic ? Any comments ? > > ====================== > > Did I tell you, guys ??? I LOVE guess games ?. :-))))))) > > I enjoy them !!!!! > > Bring some more !!!! > > Have a great evening everybody, > Dana > > > > > > > > > On Jun 3, 2015, at 6:04 PM, Ihe Onwuka wrote: > > All that effort into designing a language that has no published > specification, will almost certainly never be a published standard and > therefore no financial institution will be prepared to pay a N1QL for. > > Stupid is as Stupid Does. > > On Wed, Jun 3, 2015 at 2:15 PM, daniela florescu wrote: > >> I guess I should cry with big tears?and not laugh at all. >> >> Even smart people like Kurt Cagle would like to see this ?inexact science >> language? (because there are two kinds of >> sciences, one exact, and one inexact?..) standardized as ISO ?. >> >> https://www.linkedin.com/pulse/n1ql-couchbase-brings-sql-json-kurt-cagle >> >> The world is weird. >> >> Dana >> >> >> On Jun 2, 2015, at 8:38 PM, daniela florescu wrote: >> >> I copy and paste here from Linkedin my conversation with one of the top >> scientists of on of the top NoSQL databases: Couchbase?. >> >> "Please consider real world deployments, not academic endeavors....This >> is still an inexact science? :-)))))))) >> >> >> ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ >> >> >> Dana, >> >> Please consider real world deployments, not academic endeavors....This is >> still an inexact science. >> >> On 6/2/15, 10:38 AM, Daniela Florescu wrote: >> -------------------- >> Dear, >> >> you have a query language implemented, and you have no specification >> written for it !??? >> >> That's weird to say the least. >> >> I never heard of a programming language (because a query language is a >> programming language...), whose specification is only in Powerpoint. >> >> Sorry, I don't have time. >> >> If you have a specification written, please send it to me, and I'll give >> you an honest feedback. >> >> Best >> Dana >> >> On 6/2/15, 10:33 AM, XXXXl wrote: >> -------------------- >> Daniela, >> >> Couchbase Connect 15 going on this week at Levis Stadium in Santa Clara. >> You should check it out. We are talking up our query language N!QL. >> >> >> http://www.cvent.com/events/couchbase-connect-15/event-summary-b7744ca960364b75aba41de42cbef19e.aspx >> >> >> - >> >> >> >> >> _______________________________________________ >> talk at x-query.com >> http://x-query.com/mailman/listinfo/talk >> > > _______________________________________________ > talk at x-query.com > http://x-query.com/mailman/listinfo/talk > > > _______________________________________________ > talk at x-query.com > http://x-query.com/mailman/listinfo/talk > > > > -------------- next part -------------- An HTML attachment was scrubbed... URL: -------------- next part -------------- A non-text attachment was scrubbed... Name: 142863a.jpg Type: image/jpeg Size: 4223 bytes Desc: not available URL: -------------- next part -------------- A non-text attachment was scrubbed... Name: 2315079.jpg Type: image/jpeg Size: 3227 bytes Desc: not available URL: From dflorescu at me.com Fri Jun 5 22:20:44 2015 From: dflorescu at me.com (daniela florescu) Date: Fri, 05 Jun 2015 22:20:44 -0700 Subject: [xquery-talk] not sure if I should laugh with big tears or cry with big tears...:-))))) In-Reply-To: <3D114DE4-8973-4C12-9D45-EAB4BE88E9D2@me.com> References: <102180CF-6D2F-4F89-A92F-CD20521CBD4E@me.com> <7D7EB726-E9CF-4A0C-8BEB-BE5EC587781E@me.com> <3D114DE4-8973-4C12-9D45-EAB4BE88E9D2@me.com> Message-ID: Guess what !??? I think I?m not that bad at guessing :-))) I won the lollipop :-)) At least half of it !:-))) http://www.couchbase.com/press-releases/couchbase-introduces-n1ql-breakthrough-query-language In a couple of days we?ll see the MarkLogic announcement :-)) I bet another lollipop on it ! :-)) Dana > On Jun 3, 2015, at 7:50 PM, daniela florescu wrote: > > What I think will happen is the following: > > 1. ISO will look at them like they are crazy when they send a language specification in Powerpoint > > 2. They?ll scratch their heads and probable write SOMETHING that ( kind of ) makes sense > > 3. That SOMETHING written up will extend (some bastardized subset of) SQL > > 4. In the process, they forget that SQL in 2015 looks like THIS :-)))))))) > http://savage.net.au/SQL/sql-99.bnf.html > (good luck, guys!!!! You complain that extending XQuery is hard. Well, try THIS then :-) Ha, Ha, Ha ?..)) > > 5. That SOMETHING will look just like SQL-XML,. which disappeared in the hole it came from... as soon as it was on print?. > http://en.wikipedia.org/wiki/SQL/XML > > 6. They will pay a lot of ?bloggers? to convince gullible people that SQL is the perfect ?query? language > for semi-structured data. YES. But only if you have negative IQ and have no idea about semi-structured data. > (unfortunately there are lots of those) > > Some of those guys already argue with me (very annoyingly to be honest, and without ANY knowledge of databases) on Linkedin > (if those companies choose people to argue with me? at least choose someone who can hold a scientific argument with me?. at least > make it a little fun for me?.please ?..) > > As an example, please check this: > https://www.linkedin.com/grp/post/54257-6010072547398336516 > > ++++++++++++++++++++++++++++++ > > > And I just told you my best guess. It?s nothing then a simple ?hunch?, without any proof to it. > > The three companies that ?make" this N1QL a success are: CouchDB, MarkLogic and Oracle. > > I worked long enough at Oracle to recognize the ?touch? of stupid politics, in top of a basis of bad technology. > And MarkLogic, given their executive people are only coming from Oracle, is likely to behave the same. > > And I right, guys ??? Oracle ? MarkLogic ? Any comments ? > > ====================== > > Did I tell you, guys ??? I LOVE guess games ?. :-))))))) > > I enjoy them !!!!! > > Bring some more !!!! > > Have a great evening everybody, > Dana > > > > > > > > >> On Jun 3, 2015, at 6:04 PM, Ihe Onwuka > wrote: >> >> All that effort into designing a language that has no published specification, will almost certainly never be a published standard and therefore no financial institution will be prepared to pay a N1QL for. >> >> Stupid is as Stupid Does. >> >> On Wed, Jun 3, 2015 at 2:15 PM, daniela florescu > wrote: >> I guess I should cry with big tears?and not laugh at all. >> >> Even smart people like Kurt Cagle would like to see this ?inexact science language? (because there are two kinds of >> sciences, one exact, and one inexact?..) standardized as ISO ?. >> >> https://www.linkedin.com/pulse/n1ql-couchbase-brings-sql-json-kurt-cagle >> >> The world is weird. >> >> Dana >> >> >>> On Jun 2, 2015, at 8:38 PM, daniela florescu > wrote: >>> >>> I copy and paste here from Linkedin my conversation with one of the top >>> scientists of on of the top NoSQL databases: Couchbase?. >>> >>> "Please consider real world deployments, not academic endeavors....This is still an inexact science? :-)))))))) >>> >>> ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ >>> >>> >>> Dana, >>> >>> Please consider real world deployments, not academic endeavors....This is still an inexact science. >>> >>> On 6/2/15, 10:38 AM, Daniela Florescu wrote: >>> -------------------- >>> Dear, >>> >>> you have a query language implemented, and you have no specification written for it !??? >>> >>> That's weird to say the least. >>> >>> I never heard of a programming language (because a query language is a programming language...), whose specification is only in Powerpoint. >>> >>> Sorry, I don't have time. >>> >>> If you have a specification written, please send it to me, and I'll give you an honest feedback. >>> >>> Best >>> Dana >>> >>> On 6/2/15, 10:33 AM, XXXXl wrote: >>> -------------------- >>> Daniela, >>> >>> Couchbase Connect 15 going on this week at Levis Stadium in Santa Clara. You should check it out. We are talking up our query language N!QL. >>> >>> http://www.cvent.com/events/couchbase-connect-15/event-summary-b7744ca960364b75aba41de42cbef19e.aspx >>> >>> >> >> >> _______________________________________________ >> talk at x-query.com >> http://x-query.com/mailman/listinfo/talk >> >> _______________________________________________ >> talk at x-query.com >> http://x-query.com/mailman/listinfo/talk > -------------- next part -------------- An HTML attachment was scrubbed... URL: From ihe.onwuka at gmail.com Sat Jun 6 00:57:58 2015 From: ihe.onwuka at gmail.com (Ihe Onwuka) Date: Sat, 6 Jun 2015 03:57:58 -0400 Subject: [xquery-talk] not sure if I should laugh with big tears or cry with big tears...:-))))) In-Reply-To: References: <102180CF-6D2F-4F89-A92F-CD20521CBD4E@me.com> <7D7EB726-E9CF-4A0C-8BEB-BE5EC587781E@me.com> <3D114DE4-8973-4C12-9D45-EAB4BE88E9D2@me.com> Message-ID: On Sat, Jun 6, 2015 at 1:20 AM, daniela florescu wrote: > Guess what !??? > > I think I?m not that bad at guessing :-))) I won the lollipop :-)) At > least half of it !:-))) > > This is what happens when you hang around NOSQL "engineers" for too long. You start talking like them. ;-) > > http://www.couchbase.com/press-releases/couchbase-introduces-n1ql-breakthrough-query-language > > ?N1QL brings the power of SQL to the document data model, which removes one of the biggest barriers to broader enterprise adoption of NoSQL." Wrong as they will eventually find out. The biggest barrier to enterprise adoption of NOSql is the enterprise DBA. -------------- next part -------------- An HTML attachment was scrubbed... URL: From ihe.onwuka at gmail.com Sun Jun 7 01:16:56 2015 From: ihe.onwuka at gmail.com (Ihe Onwuka) Date: Sun, 7 Jun 2015 04:16:56 -0400 Subject: [xquery-talk] not sure if I should laugh with big tears or cry with big tears...:-))))) In-Reply-To: References: <102180CF-6D2F-4F89-A92F-CD20521CBD4E@me.com> <7D7EB726-E9CF-4A0C-8BEB-BE5EC587781E@me.com> <3D114DE4-8973-4C12-9D45-EAB4BE88E9D2@me.com> Message-ID: Name That Tune. We don't need a query language. We don't need no SQL. Fat free JSON is our mantra. Schemas are for XML Hey Suckers We'll make it on our own. One by one you see that every myth has to fall. On Sat, Jun 6, 2015 at 1:20 AM, daniela florescu wrote: > Guess what !??? > > I think I?m not that bad at guessing :-))) I won the lollipop :-)) At > least half of it !:-))) > > > http://www.couchbase.com/press-releases/couchbase-introduces-n1ql-breakthrough-query-language > > In a couple of days we?ll see the MarkLogic announcement :-)) > > I bet another lollipop on it ! > > :-)) > > Dana > > > On Jun 3, 2015, at 7:50 PM, daniela florescu wrote: > > What I think will happen is the following: > > 1. ISO will look at them like they are crazy when they send a language > specification in Powerpoint > > 2. They?ll scratch their heads and probable write SOMETHING that ( kind > of ) makes sense > > 3. That SOMETHING written up will extend (some bastardized subset of) SQL > > 4. In the process, they forget that SQL in 2015 looks like THIS :-)))))))) > http://savage.net.au/SQL/sql-99.bnf.html > (good luck, guys!!!! You complain that extending XQuery is hard. Well, > try THIS then :-) Ha, Ha, Ha ?..)) > > 5. That SOMETHING will look just like SQL-XML,. which disappeared in the > hole it came from... as soon as it was on print?. > http://en.wikipedia.org/wiki/SQL/XML > > 6. They will pay a lot of ?bloggers? to convince gullible people that SQL > is the perfect ?query? language > for semi-structured data. YES. But only if you have negative IQ and have > no idea about semi-structured data. > (unfortunately there are lots of those) > > Some of those guys already argue with me (very annoyingly to be honest, > and without ANY knowledge of databases) on Linkedin > (if those companies choose people to argue with me? at least choose > someone who can hold a scientific argument with me?. at least > make it a little fun for me?.please ?..) > > As an example, please check this: > https://www.linkedin.com/grp/post/54257-6010072547398336516 > > ++++++++++++++++++++++++++++++ > > > And I just told you my best guess. It?s nothing then a simple ?hunch?, > without any proof to it. > > The three companies that ?make" this N1QL a success are: CouchDB, > MarkLogic and Oracle. > > I worked long enough at Oracle to recognize the ?touch? of stupid > politics, in top of a basis of bad technology. > And MarkLogic, given their executive people are only coming from Oracle, > is likely to behave the same. > > And I right, guys ??? Oracle ? MarkLogic ? Any comments ? > > ====================== > > Did I tell you, guys ??? I LOVE guess games ?. :-))))))) > > I enjoy them !!!!! > > Bring some more !!!! > > Have a great evening everybody, > Dana > > -------------- next part -------------- An HTML attachment was scrubbed... URL: From danmbox at gmail.com Sun Jun 7 19:44:39 2015 From: danmbox at gmail.com (Dan Muresan) Date: Mon, 8 Jun 2015 05:44:39 +0300 Subject: [xquery-talk] not sure if I should laugh with big tears or cry with big tears...:-))))) In-Reply-To: References: <102180CF-6D2F-4F89-A92F-CD20521CBD4E@me.com> <7D7EB726-E9CF-4A0C-8BEB-BE5EC587781E@me.com> <3D114DE4-8973-4C12-9D45-EAB4BE88E9D2@me.com> Message-ID: > Name That Tune. > > We don't need a query language. > We don't need no SQL. > Fat free JSON is our mantra. > Schemas are for XML > Hey Suckers We'll make it on our own. > One by one you see that every myth has to fall. Setting aside the SERIOUSNESS of the matter for just one second, the whole thing reminds me of the great words of Bob Monkhouse -- "They laughed when I said I was going to be a comedian. Well, they're not laughing now" Best Dan From ihe.onwuka at gmail.com Sun Jun 7 22:42:59 2015 From: ihe.onwuka at gmail.com (Ihe Onwuka) Date: Mon, 8 Jun 2015 01:42:59 -0400 Subject: [xquery-talk] not sure if I should laugh with big tears or cry with big tears...:-))))) In-Reply-To: References: <102180CF-6D2F-4F89-A92F-CD20521CBD4E@me.com> <7D7EB726-E9CF-4A0C-8BEB-BE5EC587781E@me.com> <3D114DE4-8973-4C12-9D45-EAB4BE88E9D2@me.com> Message-ID: http://typicalprogrammer.com/programmers-vs-rdbms/ Article was written in 2007 i.e before the noSQL hype. Challenge is to read it and see if you believe it could be retitled Why Typical Programmers Like NoSQL Databases without any loss of applicability. On Sun, Jun 7, 2015 at 10:44 PM, Dan Muresan wrote: > > Name That Tune. > > > > We don't need a query language. > > We don't need no SQL. > > Fat free JSON is our mantra. > > Schemas are for XML > > Hey Suckers We'll make it on our own. > > One by one you see that every myth has to fall. > > Setting aside the SERIOUSNESS of the matter for just one second, the > whole thing reminds me of the great words of Bob Monkhouse -- > > "They laughed when I said I was going to be a comedian. Well, they're > not laughing now" > > Best > Dan > -------------- next part -------------- An HTML attachment was scrubbed... URL: From dflorescu at me.com Tue Jun 9 20:07:47 2015 From: dflorescu at me.com (daniela florescu) Date: Tue, 09 Jun 2015 20:07:47 -0700 Subject: [xquery-talk] here it comes, yet another version of XQuery and/or JSONiq Message-ID: <238A6DFE-972A-468D-BA4C-F46136EE6F9D@me.com> https://developer.mulesoft.com/docs/display/37M1/Overview Why do people have so much fun reinventing stuff that was DEFINITELY not fun to specify in the first place !??? I will never understand how those guys think?. Dana From kristian at keeleleek.ee Wed Jun 10 00:26:59 2015 From: kristian at keeleleek.ee (Kristian Kankainen) Date: Wed, 10 Jun 2015 10:26:59 +0300 Subject: [xquery-talk] here it comes, yet another version of XQuery and/or JSONiq In-Reply-To: <238A6DFE-972A-468D-BA4C-F46136EE6F9D@me.com> References: <238A6DFE-972A-468D-BA4C-F46136EE6F9D@me.com> Message-ID: <5577E6C3.7000402@keeleleek.ee> Hello Dana, not to defend those guys, but to describe my understanding of how those guys think ... I think it has to do with our more general, call it cognitive, human language capacities. It is much easier for humans to use the metaphors that they allready know, than it is to learn new metaphors. Thus, I think sadly, it is "easier" for people to (re-)invent a language based on their own underlying metaphors, than to learn the metaphors that are implicit in any allready existing language. Languages and the metaphors they get fuelled by are so totally meshed together it is hard to tell them apart, thus it is easier to keep them apart by reinventing them. The above is totally philosophical and has perhaps nothing to do with computer languages nor with human cognitive skills (since it tends to be utterly hard to prove them) and reflects only my own thoughts. The above has come to me mainly while reflecting Alan Kay's saga. His object-orientation(ism), graphical user interfaces or even his saying that "with a good enough programming language, there is no need for an operating system". I mean, the world as I know it (I was born long after Alan Kay thought of those things) seems to have understood absolutely nothing of what he was trying to tell! And most upsetting is that I have real hard times trying to understand Kay's world so that I can give my child a computer with SmallTalk instead of an absurd touchscreen device that calls itself smart. You are good at guessing games and it is really sad to see history repeat itself. Guessing kind of implies something repeating. Alan Kay has also criticized computer science to be a popular culture. Kristian K 10.06.2015 06:07, daniela florescu kirjutas: > https://developer.mulesoft.com/docs/display/37M1/Overview > > Why do people have so much fun reinventing stuff that was DEFINITELY not fun to specify in the first > place !??? > > I will never understand how those guys think?. > > Dana > _______________________________________________ > talk at x-query.com > http://x-query.com/mailman/listinfo/talk From ihe.onwuka at gmail.com Wed Jun 10 00:41:14 2015 From: ihe.onwuka at gmail.com (Ihe Onwuka) Date: Wed, 10 Jun 2015 03:41:14 -0400 Subject: [xquery-talk] here it comes, yet another version of XQuery and/or JSONiq In-Reply-To: <238A6DFE-972A-468D-BA4C-F46136EE6F9D@me.com> References: <238A6DFE-972A-468D-BA4C-F46136EE6F9D@me.com> Message-ID: Why don't you ask them? On Tue, Jun 9, 2015 at 11:07 PM, daniela florescu wrote: > https://developer.mulesoft.com/docs/display/37M1/Overview > > Why do people have so much fun reinventing stuff that was DEFINITELY not > fun to specify in the first > place !??? > > I will never understand how those guys think?. > > Dana > _______________________________________________ > talk at x-query.com > http://x-query.com/mailman/listinfo/talk -------------- next part -------------- An HTML attachment was scrubbed... URL: From mike at saxonica.com Wed Jun 10 00:49:08 2015 From: mike at saxonica.com (Michael Kay) Date: Wed, 10 Jun 2015 08:49:08 +0100 Subject: [xquery-talk] here it comes, yet another version of XQuery and/or JSONiq In-Reply-To: References: <238A6DFE-972A-468D-BA4C-F46136EE6F9D@me.com> Message-ID: <5AD4FC88-AE37-4A25-8CDE-D01A16AEF6A8@saxonica.com> It will be a sad day when the world stops trying to create better programming languages. Fortunately, though, the vast majority of attempts will be consigned to the scrap heap. Michael Kay Saxonica From ihe.onwuka at gmail.com Wed Jun 10 03:04:45 2015 From: ihe.onwuka at gmail.com (Ihe Onwuka) Date: Wed, 10 Jun 2015 06:04:45 -0400 Subject: [xquery-talk] here it comes, yet another version of XQuery and/or JSONiq In-Reply-To: References: <238A6DFE-972A-468D-BA4C-F46136EE6F9D@me.com> Message-ID: Let me amplify my question. It should be clear from the recent linkedin discussion that for a large section of people using JSON syntax matters. So they will not understand your assertion that XQuery is an extension of SQL. Any similarities in the semantics and/or capabilities of the language are clouded by the "unfamiliar syntax". It should also be clear that alot of the same people are happy to accept a partial even half baked solution so long as it is coated in familiar syntax and are wllling to dive in and use such products without assesing their capabilities. If you have forgotten this recall the person who was trumpeting an SQL implementation over JSON that could not do summation. Couchbase and co are tapping into the fact that there is a significant market for whom functionality and capability are far less important than appealing to their sense of familiarity. You could say the argument for these products is the 80/20 rule although how you ever get to add up to 80% with a product that can't do summations defeats me. Whatever the case it should be very clear that many people would rather use a halfbaked SQL implementation than use XQuery. With mulesoft it is different because XQuery should be familiar to them. That's why I say ask them. You may well get a different response. On Wed, Jun 10, 2015 at 3:41 AM, Ihe Onwuka wrote: > Why don't you ask them? > > On Tue, Jun 9, 2015 at 11:07 PM, daniela florescu > wrote: > >> https://developer.mulesoft.com/docs/display/37M1/Overview >> >> Why do people have so much fun reinventing stuff that was DEFINITELY not >> fun to specify in the first >> place !??? >> >> I will never understand how those guys think?. >> >> Dana >> _______________________________________________ >> talk at x-query.com >> http://x-query.com/mailman/listinfo/talk > > > -------------- next part -------------- An HTML attachment was scrubbed... URL: From ihe.onwuka at gmail.com Wed Jun 10 03:04:49 2015 From: ihe.onwuka at gmail.com (Ihe Onwuka) Date: Wed, 10 Jun 2015 06:04:49 -0400 Subject: [xquery-talk] here it comes, yet another version of XQuery and/or JSONiq In-Reply-To: <5AD4FC88-AE37-4A25-8CDE-D01A16AEF6A8@saxonica.com> References: <238A6DFE-972A-468D-BA4C-F46136EE6F9D@me.com> <5AD4FC88-AE37-4A25-8CDE-D01A16AEF6A8@saxonica.com> Message-ID: The keyword in there is better which requires you to know what else is out there. Mulesoft On Wed, Jun 10, 2015 at 3:49 AM, Michael Kay wrote: > It will be a sad day when the world stops trying to create better > programming languages. > > Fortunately, though, the vast majority of attempts will be consigned to > the scrap heap. > > Michael Kay > Saxonica -------------- next part -------------- An HTML attachment was scrubbed... URL: From dflorescu at me.com Wed Jun 10 07:59:16 2015 From: dflorescu at me.com (daniela florescu) Date: Wed, 10 Jun 2015 07:59:16 -0700 Subject: [xquery-talk] here it comes, yet another version of XQuery and/or JSONiq In-Reply-To: <5AD4FC88-AE37-4A25-8CDE-D01A16AEF6A8@saxonica.com> References: <238A6DFE-972A-468D-BA4C-F46136EE6F9D@me.com> <5AD4FC88-AE37-4A25-8CDE-D01A16AEF6A8@saxonica.com> Message-ID: Michael, Yes, it wold be indeed sad if we wouldn?t continuously try to do things better. But what is really sad is that the motivation isn?t that in most cases: it?s because proprietary software brings more margins then using standards?.so it?s money. Look what happened with the browsers: they are almost killed (or they will be soon) because of proprietary SDKs from Google and Apple. And from the users point of view, the world of applications is worse, not better, for that ?.. Just Google and Apple got more monopoly then they used to have ..:( Dana > On Jun 10, 2015, at 12:49 AM, Michael Kay wrote: > > It will be a sad day when the world stops trying to create better programming languages. > > Fortunately, though, the vast majority of attempts will be consigned to the scrap heap. > > Michael Kay > Saxonica From dflorescu at me.com Wed Jun 10 08:00:36 2015 From: dflorescu at me.com (daniela florescu) Date: Wed, 10 Jun 2015 08:00:36 -0700 Subject: [xquery-talk] here it comes, yet another version of XQuery and/or JSONiq In-Reply-To: References: <238A6DFE-972A-468D-BA4C-F46136EE6F9D@me.com> Message-ID: Ihe, I did. But honestly, I am very scared of the real answer: they?ve never heard of XQuery, XSLT, or JSONiq?. Dana > On Jun 10, 2015, at 12:41 AM, Ihe Onwuka wrote: > > Why don't you ask them? > > On Tue, Jun 9, 2015 at 11:07 PM, daniela florescu > wrote: > https://developer.mulesoft.com/docs/display/37M1/Overview > > Why do people have so much fun reinventing stuff that was DEFINITELY not fun to specify in the first > place !??? > > I will never understand how those guys think?. > > Dana > _______________________________________________ > talk at x-query.com > http://x-query.com/mailman/listinfo/talk > _______________________________________________ > talk at x-query.com > http://x-query.com/mailman/listinfo/talk -------------- next part -------------- An HTML attachment was scrubbed... URL: From ihe.onwuka at gmail.com Wed Jun 10 08:04:07 2015 From: ihe.onwuka at gmail.com (Ihe Onwuka) Date: Wed, 10 Jun 2015 11:04:07 -0400 Subject: [xquery-talk] here it comes, yet another version of XQuery and/or JSONiq In-Reply-To: References: <238A6DFE-972A-468D-BA4C-F46136EE6F9D@me.com> Message-ID: Somebody in that company has. http://blogs.mulesoft.com/mule-3-6-xml-xpath-xslt-xquery3/ I believe I posted this to the list before. On Wed, Jun 10, 2015 at 11:00 AM, daniela florescu wrote: > Ihe, > > I did. > > But honestly, I am very scared of the real answer: they?ve never heard of > XQuery, XSLT, or JSONiq?. > > Dana > > > > > > On Jun 10, 2015, at 12:41 AM, Ihe Onwuka wrote: > > Why don't you ask them? > > On Tue, Jun 9, 2015 at 11:07 PM, daniela florescu > wrote: > >> https://developer.mulesoft.com/docs/display/37M1/Overview >> >> Why do people have so much fun reinventing stuff that was DEFINITELY not >> fun to specify in the first >> place !??? >> >> I will never understand how those guys think?. >> >> Dana >> _______________________________________________ >> talk at x-query.com >> http://x-query.com/mailman/listinfo/talk > > > _______________________________________________ > talk at x-query.com > http://x-query.com/mailman/listinfo/talk > > > -------------- next part -------------- An HTML attachment was scrubbed... URL: From dflorescu at me.com Wed Jun 10 08:17:43 2015 From: dflorescu at me.com (daniela florescu) Date: Wed, 10 Jun 2015 08:17:43 -0700 Subject: [xquery-talk] here it comes, yet another version of XQuery and/or JSONiq In-Reply-To: References: <238A6DFE-972A-468D-BA4C-F46136EE6F9D@me.com> <5AD4FC88-AE37-4A25-8CDE-D01A16AEF6A8@saxonica.com> Message-ID: And don?t get me wrong?I have nothing against companies trying to make money. It?s their JOB. It?s what they are supposed to do, not to make a charity. However, what bothers me is the bad technology combined with lack of business logic. Because this proprietary software works well when you ALREADY have a monopoly of some sort over some market (aka a leverage over the market), like Google or Apple do. It hardly works when you just try to make living and survive ?. like in the case of CouchDB, MarkLogic or Mulesoft?. In those cases, more often then not, a ?proprietary? approach just sinks those companies ? because educating the market costs a lot of money, and there is no economy of scale. That?s the lack of business logic that surprises me?. If Mulesoft would have used XQuery, XSLT or JSONiq, they would have gotten instantaneously thousands of educated developers ? aka economy of scale. Best Dana > On Jun 10, 2015, at 7:59 AM, daniela florescu wrote: > > Michael, > > Yes, it wold be indeed sad if we wouldn?t continuously try to do things better. > > But what is really sad is that the motivation isn?t that in most cases: it?s because proprietary > software brings more margins then using standards?.so it?s money. > > Look what happened with the browsers: they are almost killed (or they will be soon) > because of proprietary SDKs from Google and Apple. > > And from the users point of view, the world of applications is worse, not better, for that ?.. > > Just Google and Apple got more monopoly then they used to have ..:( > > Dana > > >> On Jun 10, 2015, at 12:49 AM, Michael Kay wrote: >> >> It will be a sad day when the world stops trying to create better programming languages. >> >> Fortunately, though, the vast majority of attempts will be consigned to the scrap heap. >> >> Michael Kay >> Saxonica > From dflorescu at me.com Wed Jun 10 08:42:29 2015 From: dflorescu at me.com (daniela florescu) Date: Wed, 10 Jun 2015 08:42:29 -0700 Subject: [xquery-talk] here it comes, yet another version of XQuery and/or JSONiq In-Reply-To: References: <238A6DFE-972A-468D-BA4C-F46136EE6F9D@me.com> Message-ID: <4B7501FC-5F68-42D7-8773-F1783B092BED@me.com> It seems that they made an honest attempt to implement XQuery. But in the world where there are so many good open source ones, why would they want to do yet another one ? Who knows. Truth is: doing a good implementation of XQuery is not immediate, and it?s not for the fainted of heart, either ?.. So if they abandoned because they weren?t able to finish the XQuery, or make it fast enough ? this wouldn?t surprise me. Dana > On Jun 10, 2015, at 8:04 AM, Ihe Onwuka wrote: > > Somebody in that company has. > > http://blogs.mulesoft.com/mule-3-6-xml-xpath-xslt-xquery3/ > > I believe I posted this to the list before. > > On Wed, Jun 10, 2015 at 11:00 AM, daniela florescu > wrote: > Ihe, > > I did. > > But honestly, I am very scared of the real answer: they?ve never heard of XQuery, XSLT, or JSONiq?. > > Dana > > > > > >> On Jun 10, 2015, at 12:41 AM, Ihe Onwuka > wrote: >> >> Why don't you ask them? >> >> On Tue, Jun 9, 2015 at 11:07 PM, daniela florescu > wrote: >> https://developer.mulesoft.com/docs/display/37M1/Overview >> >> Why do people have so much fun reinventing stuff that was DEFINITELY not fun to specify in the first >> place !??? >> >> I will never understand how those guys think?. >> >> Dana >> _______________________________________________ >> talk at x-query.com >> http://x-query.com/mailman/listinfo/talk >> _______________________________________________ >> talk at x-query.com >> http://x-query.com/mailman/listinfo/talk > > _______________________________________________ > talk at x-query.com > http://x-query.com/mailman/listinfo/talk -------------- next part -------------- An HTML attachment was scrubbed... URL: From mike at saxonica.com Wed Jun 10 09:33:19 2015 From: mike at saxonica.com (Michael Kay) Date: Wed, 10 Jun 2015 17:33:19 +0100 Subject: [xquery-talk] here it comes, yet another version of XQuery and/or JSONiq In-Reply-To: <4B7501FC-5F68-42D7-8773-F1783B092BED@me.com> References: <238A6DFE-972A-468D-BA4C-F46136EE6F9D@me.com> <4B7501FC-5F68-42D7-8773-F1783B092BED@me.com> Message-ID: <9171150D-574A-4022-991E-D8444FCA4449@saxonica.com> Actually I think Mulesoft is using Saxon underneath the hood. (Someone correct me if I?m wrong). Michael Kay Saxonica > On 10 Jun 2015, at 16:42, daniela florescu wrote: > > It seems that they made an honest attempt to implement XQuery. > > But in the world where there are so many good open source ones, why would they want to > do yet another one ? > > Who knows. > > Truth is: doing a good implementation of XQuery is not immediate, and it?s not for the fainted > of heart, either ?.. > > So if they abandoned because they weren?t able to finish the XQuery, or make it fast enough > ? this wouldn?t surprise me. > > Dana > > > > >> On Jun 10, 2015, at 8:04 AM, Ihe Onwuka > wrote: >> >> Somebody in that company has. >> >> http://blogs.mulesoft.com/mule-3-6-xml-xpath-xslt-xquery3/ >> >> I believe I posted this to the list before. >> >> On Wed, Jun 10, 2015 at 11:00 AM, daniela florescu > wrote: >> Ihe, >> >> I did. >> >> But honestly, I am very scared of the real answer: they?ve never heard of XQuery, XSLT, or JSONiq?. >> >> Dana >> >> >> >> >> >>> On Jun 10, 2015, at 12:41 AM, Ihe Onwuka > wrote: >>> >>> Why don't you ask them? >>> >>> On Tue, Jun 9, 2015 at 11:07 PM, daniela florescu > wrote: >>> https://developer.mulesoft.com/docs/display/37M1/Overview >>> >>> Why do people have so much fun reinventing stuff that was DEFINITELY not fun to specify in the first >>> place !??? >>> >>> I will never understand how those guys think?. >>> >>> Dana >>> _______________________________________________ >>> talk at x-query.com >>> http://x-query.com/mailman/listinfo/talk >>> _______________________________________________ >>> talk at x-query.com >>> http://x-query.com/mailman/listinfo/talk >> >> _______________________________________________ >> talk at x-query.com >> http://x-query.com/mailman/listinfo/talk > > _______________________________________________ > talk at x-query.com > http://x-query.com/mailman/listinfo/talk -------------- next part -------------- An HTML attachment was scrubbed... URL: From dflorescu at me.com Wed Jun 10 15:48:23 2015 From: dflorescu at me.com (daniela florescu) Date: Wed, 10 Jun 2015 15:48:23 -0700 Subject: [xquery-talk] here it comes, yet another version of XQuery and/or JSONiq In-Reply-To: <9171150D-574A-4022-991E-D8444FCA4449@saxonica.com> References: <238A6DFE-972A-468D-BA4C-F46136EE6F9D@me.com> <4B7501FC-5F68-42D7-8773-F1783B092BED@me.com> <9171150D-574A-4022-991E-D8444FCA4449@saxonica.com> Message-ID: Dear Michael, Actually, that?s GREAT news. This shows that they have some common sense, and some good taste :-)) (unlike the CouchDB people :-) Now, I cannot stop of asking myself?. why did they feel the need to ?cover? the power of XQuery with a home-grown/proprietary (AND very limited) XML/JSON mapping syntax ?.!??? Any ideas !? Best regards Dana > On Jun 10, 2015, at 9:33 AM, Michael Kay wrote: > > Actually I think Mulesoft is using Saxon underneath the hood. (Someone correct me if I?m wrong). > > Michael Kay > Saxonica > >> On 10 Jun 2015, at 16:42, daniela florescu > wrote: >> >> It seems that they made an honest attempt to implement XQuery. >> >> But in the world where there are so many good open source ones, why would they want to >> do yet another one ? >> >> Who knows. >> >> Truth is: doing a good implementation of XQuery is not immediate, and it?s not for the fainted >> of heart, either ?.. >> >> So if they abandoned because they weren?t able to finish the XQuery, or make it fast enough >> ? this wouldn?t surprise me. >> >> Dana >> >> >> >> >>> On Jun 10, 2015, at 8:04 AM, Ihe Onwuka > wrote: >>> >>> Somebody in that company has. >>> >>> http://blogs.mulesoft.com/mule-3-6-xml-xpath-xslt-xquery3/ >>> >>> I believe I posted this to the list before. >>> >>> On Wed, Jun 10, 2015 at 11:00 AM, daniela florescu > wrote: >>> Ihe, >>> >>> I did. >>> >>> But honestly, I am very scared of the real answer: they?ve never heard of XQuery, XSLT, or JSONiq?. >>> >>> Dana >>> >>> >>> >>> >>> >>>> On Jun 10, 2015, at 12:41 AM, Ihe Onwuka > wrote: >>>> >>>> Why don't you ask them? >>>> >>>> On Tue, Jun 9, 2015 at 11:07 PM, daniela florescu > wrote: >>>> https://developer.mulesoft.com/docs/display/37M1/Overview >>>> >>>> Why do people have so much fun reinventing stuff that was DEFINITELY not fun to specify in the first >>>> place !??? >>>> >>>> I will never understand how those guys think?. >>>> >>>> Dana >>>> _______________________________________________ >>>> talk at x-query.com >>>> http://x-query.com/mailman/listinfo/talk >>>> _______________________________________________ >>>> talk at x-query.com >>>> http://x-query.com/mailman/listinfo/talk >>> >>> _______________________________________________ >>> talk at x-query.com >>> http://x-query.com/mailman/listinfo/talk >> _______________________________________________ >> talk at x-query.com >> http://x-query.com/mailman/listinfo/talk > > _______________________________________________ > talk at x-query.com > http://x-query.com/mailman/listinfo/talk -------------- next part -------------- An HTML attachment was scrubbed... URL: From ihe.onwuka at gmail.com Wed Jun 10 18:08:25 2015 From: ihe.onwuka at gmail.com (Ihe Onwuka) Date: Wed, 10 Jun 2015 21:08:25 -0400 Subject: [xquery-talk] here it comes, yet another version of XQuery and/or JSONiq In-Reply-To: References: <238A6DFE-972A-468D-BA4C-F46136EE6F9D@me.com> <4B7501FC-5F68-42D7-8773-F1783B092BED@me.com> <9171150D-574A-4022-991E-D8444FCA4449@saxonica.com> Message-ID: They didn't know about JSONiq On Wed, Jun 10, 2015 at 6:48 PM, daniela florescu wrote: > Dear Michael, > > Actually, that?s GREAT news. > > This shows that they have some common sense, and some good taste :-)) > (unlike the CouchDB people :-) > > Now, I cannot stop of asking myself?. why did they feel the need to > ?cover? the power > of XQuery with a home-grown/proprietary (AND very limited) XML/JSON > mapping syntax ?.!??? > > Any ideas !? > > Best regards > Dana > > > > > > > > > On Jun 10, 2015, at 9:33 AM, Michael Kay wrote: > > Actually I think Mulesoft is using Saxon underneath the hood. (Someone > correct me if I?m wrong). > > Michael Kay > Saxonica > > On 10 Jun 2015, at 16:42, daniela florescu wrote: > > It seems that they made an honest attempt to implement XQuery. > > But in the world where there are so many good open source ones, why would > they want to > do yet another one ? > > Who knows. > > Truth is: doing a good implementation of XQuery is not immediate, and it?s > not for the fainted > of heart, either ?.. > > So if they abandoned because they weren?t able to finish the XQuery, or > make it fast enough > ? this wouldn?t surprise me. > > Dana > > > > > On Jun 10, 2015, at 8:04 AM, Ihe Onwuka wrote: > > Somebody in that company has. > > http://blogs.mulesoft.com/mule-3-6-xml-xpath-xslt-xquery3/ > > I believe I posted this to the list before. > > On Wed, Jun 10, 2015 at 11:00 AM, daniela florescu > wrote: > >> Ihe, >> >> I did. >> >> But honestly, I am very scared of the real answer: they?ve never heard of >> XQuery, XSLT, or JSONiq?. >> >> Dana >> >> >> >> >> >> On Jun 10, 2015, at 12:41 AM, Ihe Onwuka wrote: >> >> Why don't you ask them? >> >> On Tue, Jun 9, 2015 at 11:07 PM, daniela florescu >> wrote: >> >>> https://developer.mulesoft.com/docs/display/37M1/Overview >>> >>> Why do people have so much fun reinventing stuff that was DEFINITELY not >>> fun to specify in the first >>> place !??? >>> >>> I will never understand how those guys think?. >>> >>> Dana >>> _______________________________________________ >>> talk at x-query.com >>> http://x-query.com/mailman/listinfo/talk >> >> >> _______________________________________________ >> talk at x-query.com >> http://x-query.com/mailman/listinfo/talk >> >> >> > _______________________________________________ > talk at x-query.com > http://x-query.com/mailman/listinfo/talk > > > _______________________________________________ > talk at x-query.com > http://x-query.com/mailman/listinfo/talk > > > _______________________________________________ > talk at x-query.com > http://x-query.com/mailman/listinfo/talk > > > -------------- next part -------------- An HTML attachment was scrubbed... URL: From dflorescu at me.com Wed Jun 10 18:39:44 2015 From: dflorescu at me.com (daniela florescu) Date: Wed, 10 Jun 2015 18:39:44 -0700 Subject: [xquery-talk] what is jsoniq !? Message-ID: <49D9F621-60CE-47CE-9D11-98D68B2F2770@me.com> Dear all, by now, some of you must be bored of the current discussions and must ask yourself: what the heck is this JSONiq.org stuff ? I will answer in one sentence. +++++++++++++++++++++++++++++++++++++++++++++++ JSONiq is XQuery with ?.? instead of ?/? and ?{? instead of ? Now, JSONiq has been designed by the Zorba team a couple of years back, looking at the gory details and differences between XML and JSON, and trying to reconcile them, technically AND politically. JSONq comes in two flavors: JSONiq++ and JSONiq?. JSONiq++ is a 100% extension (syntactic and semantic ) of XQuery 3.0 that ALSO includes the JSON concepts: JSON navigation , JSON items (objects and arrays) constructors, JSON null and JSON-specific functions. JSONiq? is a subset (syntactic and semantic) of JSONiq++, restricted ONLY to what JSON is concerned about, eliminating everything that has to do with XML (e.g. XML navigation and XML node constructors), plus adding a more aesthetically pleasant syntax for JSON navigation, using ?.? . JSONiq++ is indeed complex, as it inherits both the complexities of XML and JSON, and has to reconcile them somehow. However clunky that is, it is EXTREMELY useful for cases (like Mulesoft) when you have to integrate between data in XML and JSON. I think those cases are more and more frequent. JSONiq? is designed to be aesthetically and semantically pleasing to the JSON-only community ? out of which there are plenty, too. See MongoDB, CouchDb, etc. ================= The Zorba team spent almost a year trying to study the details of the problem (e.g. different characters sets in JSON vs XML, grammatical conflicts, uses cases and their aesthetics, etc). That was NOT fun work. There was nothing deep or highly intelligent in that design. This was stuff that SOMEONE had to do (and I am sorry to say, it was easier to do outside the W3C standardization meeting rooms). I think that almost anyone who would start with the same design goals will end up with the same solution. I wish our efforts were not wasted in vain, and everybody will NOT start re-inventing the wheel now. Plus, it would be really nice if the JSON community would not start investigating the problem of querying semi-strcutured data EXACTLY from the same point the XML community started in 1996?. That would be really bad. Best regards Dana From dflorescu at me.com Wed Jun 10 22:01:32 2015 From: dflorescu at me.com (daniela florescu) Date: Wed, 10 Jun 2015 22:01:32 -0700 Subject: [xquery-talk] what is jsoniq !? In-Reply-To: <49D9F621-60CE-47CE-9D11-98D68B2F2770@me.com> References: <49D9F621-60CE-47CE-9D11-98D68B2F2770@me.com> Message-ID: <6A958C61-A646-490A-9D9A-25B7AD5DDD52@me.com> BTW, what I was trying to say after all is that ANY XQuery engine can become an extremely powerful JSON query processor with almost NO investment. In Zorba, after we figured out the dirty little problems that are part of JSONiq spec, we needed something like 1man/month to add JSON support to XQuery. Minimal investment. By all means, please do add JSON support to your query processors if you have an XQuery implementation. Otherwise we?ll be stuck for 30 years in the no mans? land of silly solutions, e.g. CouchDb, who doesn?t believe that adding a semantic description to a query language is a useful thing to do, or to MongoDb, who even more scarier, scales to the level of the UNIVERSE (no kidding, just watch ?. https://www.youtube.com/watch?v=3MNIrKlQp2E) Please don?t let those past 15 years be a waste. Dana > On Jun 10, 2015, at 6:39 PM, daniela florescu wrote: > > Dear all, > > by now, some of you must be bored of the current discussions and must ask yourself: > what the heck is this JSONiq.org stuff ? > > I will answer in one sentence. > > +++++++++++++++++++++++++++++++++++++++++++++++ > > JSONiq is XQuery with ?.? instead of ?/? and ?{? instead of ? > ++++++++++++++++++++++++++++++++++++++++++++++++ > > > > Now, JSONiq has been designed by the Zorba team a couple of years back, looking at the > gory details and differences between XML and JSON, and trying to reconcile them, technically AND > politically. > > JSONq comes in two flavors: JSONiq++ and JSONiq?. > > JSONiq++ is a 100% extension (syntactic and semantic ) of XQuery 3.0 that ALSO includes the JSON concepts: JSON navigation , > JSON items (objects and arrays) constructors, JSON null and JSON-specific functions. > > JSONiq? is a subset (syntactic and semantic) of JSONiq++, restricted ONLY to what JSON is concerned about, > eliminating everything that has to do with XML (e.g. XML navigation and XML node constructors), plus adding a more > aesthetically pleasant syntax for JSON navigation, using ?.? . > > JSONiq++ is indeed complex, as it inherits both the complexities of XML and JSON, and has to reconcile them somehow. > However clunky that is, it is EXTREMELY useful for cases (like Mulesoft) when you have to integrate between data in XML and JSON. > I think those cases are more and more frequent. > > JSONiq? is designed to be aesthetically and semantically pleasing to the JSON-only community ? out of which there are plenty, too. > See MongoDB, CouchDb, etc. > > ================= > > The Zorba team spent almost a year trying to study the details of the problem (e.g. different characters sets in JSON vs XML, grammatical conflicts, > uses cases and their aesthetics, etc). That was NOT fun work. There was nothing deep or highly intelligent in that design. > > This was stuff that SOMEONE had to do (and I am sorry to say, it was easier to do outside the W3C standardization meeting rooms). > > I think that almost anyone who would start with the same design goals will end up with the same solution. > > > I wish our efforts were not wasted in vain, and everybody will NOT start re-inventing the wheel now. > > Plus, it would be really nice if the JSON community would not start investigating the problem of querying semi-strcutured data EXACTLY > from the same point the XML community started in 1996?. > > That would be really bad. > > > Best regards > Dana > > > > > > > > > > > > > From ihe.onwuka at gmail.com Wed Jun 10 22:31:33 2015 From: ihe.onwuka at gmail.com (Ihe Onwuka) Date: Thu, 11 Jun 2015 01:31:33 -0400 Subject: [xquery-talk] what is jsoniq !? In-Reply-To: <6A958C61-A646-490A-9D9A-25B7AD5DDD52@me.com> References: <49D9F621-60CE-47CE-9D11-98D68B2F2770@me.com> <6A958C61-A646-490A-9D9A-25B7AD5DDD52@me.com> Message-ID: Couchdb said they have specifications. They don't feel the need to to share them because they have satisfied customers. You can read between the lines as to what that means. On Thu, Jun 11, 2015 at 1:01 AM, daniela florescu wrote: > BTW, what I was trying to say after all is that ANY XQuery engine can > become an > extremely powerful JSON query processor with almost NO investment. > > In Zorba, after we figured out the dirty little problems that are part of > JSONiq spec, we needed > something like 1man/month to add JSON support to XQuery. > > Minimal investment. > > By all means, please do add JSON support to your query processors if you > have an XQuery implementation. > > Otherwise we?ll be stuck for 30 years in the no mans? land of silly > solutions, e.g. CouchDb, who doesn?t > believe that adding a semantic description to a query language is a useful > thing to do, or to MongoDb, > who even more scarier, scales to the level of the UNIVERSE (no kidding, > just watch ?. > https://www.youtube.com/watch?v=3MNIrKlQp2E) > > > Please don?t let those past 15 years be a waste. > > > Dana > > > > > > > On Jun 10, 2015, at 6:39 PM, daniela florescu wrote: > > > > Dear all, > > > > by now, some of you must be bored of the current discussions and must > ask yourself: > > what the heck is this JSONiq.org stuff ? > > > > I will answer in one sentence. > > > > +++++++++++++++++++++++++++++++++++++++++++++++ > > > > JSONiq is XQuery with ?.? instead of ?/? and ?{? instead of ? > > > ++++++++++++++++++++++++++++++++++++++++++++++++ > > > > > > > > Now, JSONiq has been designed by the Zorba team a couple of years back, > looking at the > > gory details and differences between XML and JSON, and trying to > reconcile them, technically AND > > politically. > > > > JSONq comes in two flavors: JSONiq++ and JSONiq?. > > > > JSONiq++ is a 100% extension (syntactic and semantic ) of XQuery 3.0 > that ALSO includes the JSON concepts: JSON navigation , > > JSON items (objects and arrays) constructors, JSON null and > JSON-specific functions. > > > > JSONiq? is a subset (syntactic and semantic) of JSONiq++, restricted > ONLY to what JSON is concerned about, > > eliminating everything that has to do with XML (e.g. XML navigation and > XML node constructors), plus adding a more > > aesthetically pleasant syntax for JSON navigation, using ?.? . > > > > JSONiq++ is indeed complex, as it inherits both the complexities of XML > and JSON, and has to reconcile them somehow. > > However clunky that is, it is EXTREMELY useful for cases (like Mulesoft) > when you have to integrate between data in XML and JSON. > > I think those cases are more and more frequent. > > > > JSONiq? is designed to be aesthetically and semantically pleasing to the > JSON-only community ? out of which there are plenty, too. > > See MongoDB, CouchDb, etc. > > > > ================= > > > > The Zorba team spent almost a year trying to study the details of the > problem (e.g. different characters sets in JSON vs XML, grammatical > conflicts, > > uses cases and their aesthetics, etc). That was NOT fun work. There > was nothing deep or highly intelligent in that design. > > > > This was stuff that SOMEONE had to do (and I am sorry to say, it was > easier to do outside the W3C standardization meeting rooms). > > > > I think that almost anyone who would start with the same design goals > will end up with the same solution. > > > > > > I wish our efforts were not wasted in vain, and everybody will NOT start > re-inventing the wheel now. > > > > Plus, it would be really nice if the JSON community would not start > investigating the problem of querying semi-strcutured data EXACTLY > > from the same point the XML community started in 1996?. > > > > That would be really bad. > > > > > > Best regards > > Dana > > > > > > > > > > > > > > > > > > > > > > > > > > > > > _______________________________________________ > talk at x-query.com > http://x-query.com/mailman/listinfo/talk > -------------- next part -------------- An HTML attachment was scrubbed... URL: From dflorescu at me.com Thu Jun 11 15:41:50 2015 From: dflorescu at me.com (daniela florescu) Date: Thu, 11 Jun 2015 15:41:50 -0700 Subject: [xquery-talk] ETL for XML !??? Nobody realizes that XML tools even EXIST .... Message-ID: <9376F374-9FE6-48AE-ADD9-4606AD05084D@me.com> Just look at this discussion on Linkedin: https://www.linkedin.com/grp/post/3990648-6013602791098953731 Dana From ihe.onwuka at gmail.com Thu Jun 11 23:50:58 2015 From: ihe.onwuka at gmail.com (Ihe Onwuka) Date: Fri, 12 Jun 2015 02:50:58 -0400 Subject: [xquery-talk] ETL for XML !??? Nobody realizes that XML tools even EXIST .... In-Reply-To: <9376F374-9FE6-48AE-ADD9-4606AD05084D@me.com> References: <9376F374-9FE6-48AE-ADD9-4606AD05084D@me.com> Message-ID: I have had to implement workarounds when trying to deploy XSLT/XQuery on datasets circa 250MB, presumably some hardware jiggery pokery could increase my processing capacity butt there clearly is a limit. With plain text files this was simply a matter of running the transformation on files that had fragmented courtesy of grep, awk and friends, but the XML input required the replication of a homespun mapreduce to get the required result, which to be fair that was a bit more than a straightforward ETL. Point being there was some X(SLT|QUERY) jiggery pokery (Bill McLaren RIP) going on, many would throw in the towel at the first heap error and never get to the stage I got to. Secondly the bash parts of the pipeline which include joins and sorts that aggregate across about 15 files run much much quicker. Hence I started with an XSLT transformation that did everything because it looked like a simple upconversion and ended up with the XSLT transformation reduced to a final step that runs on heavily pre-processed and fragmented files and still takes the bulk of the processing time. I don't know the extent to which the availability of streaming capabilities (both for text and XML) would change that scenario but the fact is that making streaming only available in the enterprise versions of these products has left a lacuna for other products to step in and fill. That's not a criticism and it is not my place or intention to opine on the release strategy of Saxon or any other offering, but it does seem to be a logical conclusion. Of course that's not to say that it would make a blind bit of difference to these people. They are still at circa 1980 on the evolutionary cycle (just discovering that you actually do need a query language) so remember that before you remind them it is not 1995. On Thu, Jun 11, 2015 at 6:41 PM, daniela florescu wrote: > Just look at this discussion on Linkedin: > > https://www.linkedin.com/grp/post/3990648-6013602791098953731 > > Dana > _______________________________________________ > talk at x-query.com > http://x-query.com/mailman/listinfo/talk > -------------- next part -------------- An HTML attachment was scrubbed... URL: From dflorescu at me.com Fri Jun 12 14:16:38 2015 From: dflorescu at me.com (daniela florescu) Date: Fri, 12 Jun 2015 14:16:38 -0700 Subject: [xquery-talk] LinkedIn humor for the weekend (1) Message-ID: Honest reply when I asked why people constantly try to er-invent the XML/JSON wheel, when it is not fun at all to do so?.(plus extremely error prone..:-) ======================= Dana, I suppose you've answered your own question, it's not about the science or technology these days, IT'S BUSINESS. As soon as companies are seeded by investors it becomes about $$ and nothing else. They have to cash out, so of course they're going to come up with their own proprietary query language---it's just another bullet point on the data sheet used to pitch companies into switching over to an enterprise license. ====== And no, this one is not about Mulesoft. It?s Yet-Another-One :-) Have a great weekend everybody, Dana -------------- next part -------------- An HTML attachment was scrubbed... URL: From dflorescu at me.com Fri Jun 12 14:24:07 2015 From: dflorescu at me.com (daniela florescu) Date: Fri, 12 Jun 2015 14:24:07 -0700 Subject: [xquery-talk] Linkedin humor for the weekend (2) Message-ID: <95D7BB0F-73C0-4F76-8991-561248CA66C5@me.com> And this is yet another public and very honest answer when I commented that a ?third party? doing a benchmark should not, in theory, have a business relationship with ANY of the vendors. Otherwise, not credible, so waste of time. ============================================== Daniela - the fact that we are partnered with MarkLogic and Couchbase (so that we can better serve our clients who use those platforms) has no bearing on our ability to conduct benchmarks with independence. ========== I guess it?s not clear to everyone what a ?third party benchmark? usually means in Computer Science :-)) Have a great weekend everyone, best Dana -------------- next part -------------- An HTML attachment was scrubbed... URL: From mike at saxonica.com Sat Jun 13 02:27:01 2015 From: mike at saxonica.com (Michael Kay) Date: Sat, 13 Jun 2015 10:27:01 +0100 Subject: [xquery-talk] Linkedin humor for the weekend (2) In-Reply-To: <95D7BB0F-73C0-4F76-8991-561248CA66C5@me.com> References: <95D7BB0F-73C0-4F76-8991-561248CA66C5@me.com> Message-ID: <3B669676-B09A-41FB-A881-7E21B6E7925F@saxonica.com> All benchmarks are biased. They are less likely to be biased by business relationships than by skills imbalances. You can?t conduct an unbiased benchmark between two products unless you have the same skill and knowledge level in both, and that?s pretty difficult to achieve. Michael Kay Saxonica > On 12 Jun 2015, at 22:24, daniela florescu wrote: > > And this is yet another public and very honest answer when I commented that a ?third party? doing a benchmark > should not, in theory, have a business relationship with ANY of the vendors. Otherwise, not credible, so waste of time. > > > ============================================== > > Daniela - the fact that we are partnered with MarkLogic and Couchbase (so that we can better serve our clients who use those platforms) has no bearing on our ability to conduct benchmarks with independence. > > > ========== > > > I guess it?s not clear to everyone what a ?third party benchmark? usually means in Computer Science :-)) > > > Have a great weekend everyone, best > Dana > _______________________________________________ > talk at x-query.com > http://x-query.com/mailman/listinfo/talk -------------- next part -------------- An HTML attachment was scrubbed... URL: From ihe.onwuka at gmail.com Sat Jun 13 06:17:05 2015 From: ihe.onwuka at gmail.com (Ihe Onwuka) Date: Sat, 13 Jun 2015 09:17:05 -0400 Subject: [xquery-talk] Smiley comments In-Reply-To: <7CB7FDD3-FE9C-4385-8F6C-26BAECB5ECD8@gmail.com> References: <7CB7FDD3-FE9C-4385-8F6C-26BAECB5ECD8@gmail.com> Message-ID: I heard it was Jeni Tennison's idea. On Sat, Jun 13, 2015 at 9:12 AM, Joe Wicentowski wrote: > Hi all, > > On a lighter note, the @xquery twitter account got this question: > > @xquery Were the smiley faces intentional? :) > https://twitter.com/EChan42/status/609465297523838976 > > Can anyone enlighten EChan42 and the seemingly endless stream, in many > different languages, of tweets about this lovable aspect of XQuery? > > Joe > > Sent from my iPhone > > _______________________________________________ > talk at x-query.com > http://x-query.com/mailman/listinfo/talk > -------------- next part -------------- An HTML attachment was scrubbed... URL: From joewiz at gmail.com Sat Jun 13 06:53:31 2015 From: joewiz at gmail.com (Joe Wicentowski) Date: Sat, 13 Jun 2015 09:53:31 -0400 Subject: [xquery-talk] Smiley comments In-Reply-To: References: <7CB7FDD3-FE9C-4385-8F6C-26BAECB5ECD8@gmail.com> Message-ID: Thanks, Ihe. That led me to https://www.progress.com/xquery/resources/tutorials/learning-xquery/xquery---a-guided-tour (a site I'd never seen before), which cites _ XQuery from the Experts: A Guide to the W3C XML Query Language_ (2004) as having said: XQuery uses "smiley faces" to begin and end comments. This cheerful > notation was originally suggested by Jeni Tennison. On Sat, Jun 13, 2015 at 9:17 AM, Ihe Onwuka wrote: > I heard it was Jeni Tennison's idea. > > On Sat, Jun 13, 2015 at 9:12 AM, Joe Wicentowski wrote: > >> Hi all, >> >> On a lighter note, the @xquery twitter account got this question: >> >> @xquery Were the smiley faces intentional? :) >> https://twitter.com/EChan42/status/609465297523838976 >> >> Can anyone enlighten EChan42 and the seemingly endless stream, in many >> different languages, of tweets about this lovable aspect of XQuery? >> >> Joe >> >> Sent from my iPhone >> >> _______________________________________________ >> talk at x-query.com >> http://x-query.com/mailman/listinfo/talk >> > > -------------- next part -------------- An HTML attachment was scrubbed... URL: From adam.retter at googlemail.com Sat Jun 13 07:08:09 2015 From: adam.retter at googlemail.com (Adam Retter) Date: Sat, 13 Jun 2015 15:08:09 +0100 Subject: [xquery-talk] Smiley comments In-Reply-To: References: <7CB7FDD3-FE9C-4385-8F6C-26BAECB5ECD8@gmail.com> Message-ID: Likewise that was my understanding too. On 13 June 2015 at 14:53, Joe Wicentowski wrote: > Thanks, Ihe. That led me to > https://www.progress.com/xquery/resources/tutorials/learning-xquery/xquery---a-guided-tour > (a site I'd never seen before), which cites _ XQuery from the Experts: A > Guide to the W3C XML Query Language_ (2004) as having said: > >> XQuery uses "smiley faces" to begin and end comments. This cheerful >> notation was originally suggested by Jeni Tennison. > > > On Sat, Jun 13, 2015 at 9:17 AM, Ihe Onwuka wrote: >> >> I heard it was Jeni Tennison's idea. >> >> On Sat, Jun 13, 2015 at 9:12 AM, Joe Wicentowski wrote: >>> >>> Hi all, >>> >>> On a lighter note, the @xquery twitter account got this question: >>> >>> @xquery Were the smiley faces intentional? :) >>> https://twitter.com/EChan42/status/609465297523838976 >>> >>> Can anyone enlighten EChan42 and the seemingly endless stream, in many >>> different languages, of tweets about this lovable aspect of XQuery? >>> >>> Joe >>> >>> Sent from my iPhone >>> >>> _______________________________________________ >>> talk at x-query.com >>> http://x-query.com/mailman/listinfo/talk >> >> > > > _______________________________________________ > talk at x-query.com > http://x-query.com/mailman/listinfo/talk -- Adam Retter skype: adam.retter tweet: adamretter http://www.adamretter.org.uk From ihe.onwuka at gmail.com Sat Jun 13 07:40:03 2015 From: ihe.onwuka at gmail.com (Ihe Onwuka) Date: Sat, 13 Jun 2015 10:40:03 -0400 Subject: [xquery-talk] Smiley comments In-Reply-To: References: <7CB7FDD3-FE9C-4385-8F6C-26BAECB5ECD8@gmail.com> Message-ID: It will probably be the best $4.48 you ever spent. http://www.amazon.com/XQuery-Experts-Guide-Query-Language/dp/0321180607/ref=sr_1_2?ie=UTF8&qid=1434206347&sr=8-2&keywords=xquery+for+the+experts On Sat, Jun 13, 2015 at 9:53 AM, Joe Wicentowski wrote: > Thanks, Ihe. That led me to > https://www.progress.com/xquery/resources/tutorials/learning-xquery/xquery---a-guided-tour > (a site I'd never seen before), which cites _ XQuery from the Experts: A > Guide to the W3C XML Query Language_ (2004) as having said: > > XQuery uses "smiley faces" to begin and end comments. This cheerful >> notation was originally suggested by Jeni Tennison. > > > On Sat, Jun 13, 2015 at 9:17 AM, Ihe Onwuka wrote: > >> I heard it was Jeni Tennison's idea. >> >> On Sat, Jun 13, 2015 at 9:12 AM, Joe Wicentowski >> wrote: >> >>> Hi all, >>> >>> On a lighter note, the @xquery twitter account got this question: >>> >>> @xquery Were the smiley faces intentional? :) >>> https://twitter.com/EChan42/status/609465297523838976 >>> >>> Can anyone enlighten EChan42 and the seemingly endless stream, in many >>> different languages, of tweets about this lovable aspect of XQuery? >>> >>> Joe >>> >>> Sent from my iPhone >>> >>> _______________________________________________ >>> talk at x-query.com >>> http://x-query.com/mailman/listinfo/talk >>> >> >> > -------------- next part -------------- An HTML attachment was scrubbed... URL: From mike at saxonica.com Sat Jun 13 08:20:23 2015 From: mike at saxonica.com (Michael Kay) Date: Sat, 13 Jun 2015 16:20:23 +0100 Subject: [xquery-talk] Smiley comments In-Reply-To: <7CB7FDD3-FE9C-4385-8F6C-26BAECB5ECD8@gmail.com> References: <7CB7FDD3-FE9C-4385-8F6C-26BAECB5ECD8@gmail.com> Message-ID: > > Can anyone enlighten EChan42 and the seemingly endless stream, in many different languages, of tweets about this lovable aspect of XQuery? > For the record, here are edited highlights of the discussion which took place between 2nd and 6th December 2002: Jeni Tennison, 2 Dec 2002: The use of "--" in comment syntax in XPath 2.0 means that XSLT users will find it harder to comment-out sections of their code for debugging purposes (since XML comments cannot contain '--'). Michael Kay: Ouch? Just when Scott had persuaded everyone that we needed to support nested comments! Unfortunately, the choice of comment delimiters is one of those things that is both completely arbitrary and highly emotional at the same time. It's not going to be easy to come up with an alternative that a majority prefer. I've always felt that the way one ought to handle this is to make a list of the options (one of which is the status quo) and ask people to put them in order of preference. Here's a candidate: {| .... |} Jim Melton: I'm a huge fan of nested comments, which is highly useful when one needs to comment out a chunk of code that might already contain comments... I am not rabid about the specific syntax of the comments though. Mike's suggestion of {|...|} is acceptable, although I find myself sighing at the "new language, new comment syntax" syndrome ;^} It'd be nice if we could find a comment syntax from some other popular language that would work. Michael Kay: I chose on the following criteria: * don't use any new characters * choose opening and closing sequences that are different * choose opening and closing sequences that "complement" each other * chose an opening sequence that can't appear at the start of an expression {* ... *} fails the last test: a valid query today is: {*:b/b:*} The fact is, it's very hard for us to use the comment syntax of existing language because we use common punctuation characters such as "/" and "*" in rather unusual ways. Jeni Tennison: The survey at: http://merd.net/pixel/language-study/syntax-across-languages/Vrs.html Shows the following syntax for multi-line comments: 1. (* ... *) Beta, Modula-3, OCaml, Pascal, SML 2. /* ... */ Dylan, Oz, B, C, C#, C++, Java, JavaScript, Mercury, PHP, PL/I 3. " ... " Smalltalk 4. { ... } Pascal 5. ( ... ) Forth 6. {- ... -} Haskell 7. #| ... |# Common Lisp Using Mike Kay's criteria: > * don't use any new characters > * choose opening and closing sequences that are different > * choose opening and closing sequences that "complement" each other > * chose an opening sequence that can't appear at the start of an expression 1, 2, 3, 4, 5 and 6 are out because they all fail on at least the last of these. Common Lisp's #|...|# fails on the first of the criteria -- it introduces #. I think that we should avoid any syntax that starts/ends with { because of the problems with that syntax being used at the start/end of an attribute value template. What about using colons in some way? They're existing characters that can't appear at the start or end of an expression (any more, as far as I can tell). For example: (: comment :) /: comment :/ |: comment :| :- comment -: Jonathan Robie: I like either of the following: (: comment :) {: comment :} I think I prefer the first. It looks cheerful with those happy faces on both sides. Jim Melton: I find that I like the first and the last better than the middle two, the |: ... :| alternative next, and the /: ... :/ alternative the least. Scott Boag: > > > (: comment :) I like this best, I guess. The characters are a bit closer together on the keyboard than the alternatives. Michael Rys: Note that we decided to use {} for XQuery specific delimiters: { EXPR } {!-- Comment --} So unless the new comment delimiter starts with { I am not interested. Jeni Tennison: I'd be very happy if it were the case that {}s were, indeed, XQuery-specific delimiters, but currently they're used in both comments and the validate expression in XPath as well as XQuery. I'd prefer XPath not to include any {}s because I think that XSLT users will find {}s in XPaths confusing given that they're used in attribute value templates with a different meaning. NOTE: I haven?t been able to find the minutes of the meeting where the final decision was taken; they may contain further discussion. (The search facility for W3C mailing lists is notoriously poor.) Michael Kay Saxonica From dflorescu at me.com Sat Jun 13 09:20:12 2015 From: dflorescu at me.com (daniela florescu) Date: Sat, 13 Jun 2015 09:20:12 -0700 Subject: [xquery-talk] Linkedin humor for the weekend (2) In-Reply-To: <3B669676-B09A-41FB-A881-7E21B6E7925F@saxonica.com> References: <95D7BB0F-73C0-4F76-8991-561248CA66C5@me.com> <3B669676-B09A-41FB-A881-7E21B6E7925F@saxonica.com> Message-ID: Michael, If this field ever wants to reach a certain level of maturity, it has to start obeying some grown-up rules, not running around like kinder-garden kids screaming at each other : ?my grand?ma is smaller then your grand?ma..? That how it all looks to me from the outside now (e.g. NoSQL X scales to the level of the ? universe? and not a bit less..! :-) And building reliable benchmarks, is one of the grown-up rules of an industry ? if nothing else, but to understand, in a very unclear/nascent market, what is the usage pattern for which each product has been created and optimized for. I agree with you, building benchmarks is very difficult, indeed. That?s why you need a REAL third party. That?s why all the vendors AND their customers have to cooperate, etc. That?s why you need some good will and transparency. I hope one day they?ll be mature enough to do that. Have a great weekend, Dana > On Jun 13, 2015, at 2:27 AM, Michael Kay wrote: > > All benchmarks are biased. They are less likely to be biased by business relationships than by skills imbalances. You can?t conduct an unbiased benchmark between two products unless you have the same skill and knowledge level in both, and that?s pretty difficult to achieve. > > Michael Kay > Saxonica > > >> On 12 Jun 2015, at 22:24, daniela florescu > wrote: >> >> And this is yet another public and very honest answer when I commented that a ?third party? doing a benchmark >> should not, in theory, have a business relationship with ANY of the vendors. Otherwise, not credible, so waste of time. >> >> >> ============================================== >> >> Daniela - the fact that we are partnered with MarkLogic and Couchbase (so that we can better serve our clients who use those platforms) has no bearing on our ability to conduct benchmarks with independence. >> >> >> ========== >> >> >> I guess it?s not clear to everyone what a ?third party benchmark? usually means in Computer Science :-)) >> >> >> Have a great weekend everyone, best >> Dana >> _______________________________________________ >> talk at x-query.com >> http://x-query.com/mailman/listinfo/talk > -------------- next part -------------- An HTML attachment was scrubbed... URL: From ihe.onwuka at gmail.com Sat Jun 13 15:39:42 2015 From: ihe.onwuka at gmail.com (Ihe Onwuka) Date: Sat, 13 Jun 2015 18:39:42 -0400 Subject: [xquery-talk] Linkedin humor for the weekend (2) In-Reply-To: References: <95D7BB0F-73C0-4F76-8991-561248CA66C5@me.com> <3B669676-B09A-41FB-A881-7E21B6E7925F@saxonica.com> Message-ID: On Sat, Jun 13, 2015 at 12:20 PM, daniela florescu wrote: > Michael, > > If this field ever wants to reach a certain level of maturity, it has to > start obeying some > grown-up rules, not running around like kinder-garden kids screaming at > each other : > ?my grand?ma is smaller then your grand?ma..? > > Away from the technical arena what I see in day to day life is the juvenilisation of adults. Middle-aged and elderly people putting their feet on seats on buses and trains (where did they learn that from). The middle aged woman who won Britain's Got Talent by swapping her dogs behind the camera and claiming she didn't think she was doing anything wrong (no I didn't watch it but it was on the news). Times have changed, not for the better, there is a laissez faire attitude to cheats and cheating to the extent the person that blows the whistle is more likely than the cheat to come under attack. -------------- next part -------------- An HTML attachment was scrubbed... URL: From dflorescu at me.com Sat Jun 13 16:35:49 2015 From: dflorescu at me.com (daniela florescu) Date: Sat, 13 Jun 2015 16:35:49 -0700 Subject: [xquery-talk] Linkedin humor for the weekend (2) In-Reply-To: References: <95D7BB0F-73C0-4F76-8991-561248CA66C5@me.com> <3B669676-B09A-41FB-A881-7E21B6E7925F@saxonica.com> Message-ID: <394D3587-B2E6-486B-9821-6F22F81FA8B1@me.com> > > Times have changed, not for the better, Times have changed as result of economical pressure from VC, investors, banks, your rich friends, your successful neighbors, your spouse who wants to buy yacht, who knows !??? etc. Everybody is pushing to make money, more of it, faster, more of it, faster?.. until it reaches a certain level of generalized hysteria when people don?t even understand that what they do is ?.. not OK and not normal. And startups are not immune to that. Silicone Valley startups are the flagship for that attitude. In fact, database startups are the MOST vulnerable to that, given that their technology can help OTHER companies make more money, faster, more of it, faster, more of it, faster?.. A little bit like in this extreme story: https://medium.com/bad-words/the-asshole-factory-71ff808d887c Can I personally stop it ? Can I personally change anything ? Nope. But as Goya used to say ?The sleep of the reason produces monsters?. Have a great weekend everybody Dana From mike at saxonica.com Sun Jun 14 02:36:03 2015 From: mike at saxonica.com (Michael Kay) Date: Sun, 14 Jun 2015 10:36:03 +0100 Subject: [xquery-talk] Linkedin humor for the weekend (2) In-Reply-To: <394D3587-B2E6-486B-9821-6F22F81FA8B1@me.com> References: <95D7BB0F-73C0-4F76-8991-561248CA66C5@me.com> <3B669676-B09A-41FB-A881-7E21B6E7925F@saxonica.com> <394D3587-B2E6-486B-9821-6F22F81FA8B1@me.com> Message-ID: > > In fact, database startups are the MOST vulnerable to that, given that their technology can help > OTHER companies make more money, faster, more of it, faster, more of it, faster?.. > Agreed, the database software industry is about the most vicious example of naked aggressive capitalism that I have seen anywhere. But I don?t think it has got worse since Oracle started trying to wipe out their competitors in the mid 80s. It has always been that bad. Michael Kay Saxonica From wcandillon at gmail.com Mon Jun 15 14:53:54 2015 From: wcandillon at gmail.com (William Candillon) Date: Mon, 15 Jun 2015 23:53:54 +0200 Subject: [xquery-talk] [show xqt] JSONiq and XQuery Development Tools Message-ID: Dear gang, Development tools like Github and CircleCI have completely transformed our software engineering day to day tasks and we wanted to share with you some of the work we have done in order to integrate JSONiq and XQuery with these modern development workflows. The story is available at http://www.28.io/blog/jsoniq-development-tools/ Kind regards, William From adam.retter at googlemail.com Mon Jun 15 15:03:37 2015 From: adam.retter at googlemail.com (Adam Retter) Date: Mon, 15 Jun 2015 23:03:37 +0100 Subject: [xquery-talk] [show xqt] JSONiq and XQuery Development Tools In-Reply-To: References: Message-ID: Impressive :-) As always actually! Good work William and 28. On 15 June 2015 at 22:53, William Candillon wrote: > Dear gang, > > Development tools like Github and CircleCI have completely transformed > our software engineering day to day tasks and we wanted to share with > you some of the work we have done in order to integrate JSONiq and > XQuery with these modern development workflows. The story is available > at http://www.28.io/blog/jsoniq-development-tools/ > > Kind regards, > > William > _______________________________________________ > talk at x-query.com > http://x-query.com/mailman/listinfo/talk -- Adam Retter skype: adam.retter tweet: adamretter http://www.adamretter.org.uk From ihe.onwuka at gmail.com Tue Jun 16 00:21:13 2015 From: ihe.onwuka at gmail.com (Ihe Onwuka) Date: Tue, 16 Jun 2015 08:21:13 +0100 Subject: [xquery-talk] Izzit Bcos I is functional? Message-ID: Probably the wrong place to ask but what are the prime factors behind the resistance to adopt XQuery or it's derivatives thereof as a technology for querying and manipulating semi-structured data. -------------- next part -------------- An HTML attachment was scrubbed... URL: From mike at saxonica.com Tue Jun 16 01:20:34 2015 From: mike at saxonica.com (Michael Kay) Date: Tue, 16 Jun 2015 09:20:34 +0100 Subject: [xquery-talk] Izzit Bcos I is functional? In-Reply-To: References: Message-ID: Yes, it?s the wrong place to ask. But my guess would be: (a) XSLT is well entrenched for doing many of the jobs that could also be done with XQuery. (b) Lots of programmers, given a new job to do, prefer to use the tools they know, such as Java, PHP, or C#, rather than learning a specialized tool (c) In the database arena, there is strong corporate resistance to increasing the variety of database technology in use within an enterprise. (d) Resistance in some quarters to using XML as the automatic solution for long-term storage of ?semi-structured data?. These are actually all (at least in some cases) legitimate objections; but they are all compounded by fear of the unknown (which is also legitimate). Don?t assume that failure to adopt XQuery is because of resistance to adopting XQuery. The reason I haven?t adopted Erlang isn?t because I?m resistant to it; I?ve just never had a requirement that caused me to think ?It?s time I considered Erlang as the solution to this problem?. There are an awful lot of good technologies competing for attention out there and no one has time to look at them all. Michael Kay Saxonica > On 16 Jun 2015, at 08:21, Ihe Onwuka wrote: > > Probably the wrong place to ask but what are the prime factors behind the resistance to adopt XQuery or it's derivatives thereof as a technology for querying and manipulating semi-structured data. > _______________________________________________ > talk at x-query.com > http://x-query.com/mailman/listinfo/talk From mike at saxonica.com Tue Jun 16 02:57:56 2015 From: mike at saxonica.com (Michael Kay) Date: Tue, 16 Jun 2015 10:57:56 +0100 Subject: [xquery-talk] Izzit Bcos I is functional? In-Reply-To: References: Message-ID: <90081E18-FFA1-44E7-B306-406D2D9B4E54@saxonica.com> > > The only answer is that programming is subject to fashions and trends beyond logical understanding. It's an unsatisfactory answer, but it's the only one. > Indeed, some of the most successful languages like Java and PHP succeeded in ways that their original designers never intended. Michael Kay Saxonica From james.fuller.2007 at gmail.com Tue Jun 16 03:17:32 2015 From: james.fuller.2007 at gmail.com (James Fuller) Date: Tue, 16 Jun 2015 12:17:32 +0200 Subject: [xquery-talk] Izzit Bcos I is functional? In-Reply-To: <90081E18-FFA1-44E7-B306-406D2D9B4E54@saxonica.com> References: <90081E18-FFA1-44E7-B306-406D2D9B4E54@saxonica.com> Message-ID: It may seem like fashion, but using a programming language comes with a significant investment before becoming useful in said language ... in that respect I believe programming language adoption is similar to spoken language in that one learns from their direct and closest community. So initial exposure to programming whether it be at home, in academia or work probably is the strongest determining factor for language adoption by the individual. These choices maybe by fiat (teacher chooses to teach it, work enforces it, etc) but lets agree that learning a programming language is significantly harder then putting on any of these outfits. http://www.portlandmercury.com/binary/b4c9/1294341258-men-in-belted-sweaters-3643-1294094830-4.jpg So yes, if you are introduced to PHP, lisp, c, python at your first job then its likely you will learn one of them before learning Objective C. Learning a spoken/written language is also harder then what most people imagine ... akin to learning a musical instrument. Learning is punctuated by local minima of understanding ... a few weeks later breakthroughs are made. I think whatever gets you through these plateau's is also a strong adoption factor ... its easier to stop at every stage, especially if you already know a useful language and can get 'work done'. Adoption may look like fashion (especially with all the recycling going on), but its a lot more complicated then that. J On Tue, Jun 16, 2015 at 11:57 AM, Michael Kay wrote: > > > > The only answer is that programming is subject to fashions and trends > beyond logical understanding. It's an unsatisfactory answer, but it's the > only one. > > > > Indeed, some of the most successful languages like Java and PHP succeeded > in ways that their original designers never intended. > > Michael Kay > Saxonica > > > > > _______________________________________________ > talk at x-query.com > http://x-query.com/mailman/listinfo/talk > -------------- next part -------------- An HTML attachment was scrubbed... URL: From pavel.velikhov at gmail.com Tue Jun 16 08:20:31 2015 From: pavel.velikhov at gmail.com (Pavel Velikhov) Date: Tue, 16 Jun 2015 18:20:31 +0300 Subject: [xquery-talk] Anybody building an XQuery-like processor for JSON in Java? Message-ID: <6AD5668D-DE75-4DEF-A9FF-3074C8978973@gmail.com> We?re are considering building a simple JSON query processor in Java/Scala (for ETL-like processed with JSONs, including schema validation/checking/etc.). Currently we?re eyeing JSONiq. I heard somebody was building a Java implementation of JSONiq for JSONs. Thanks! Pavel Velikhov pavel.velikhov at gmail.com From dflorescu at me.com Tue Jun 16 09:03:08 2015 From: dflorescu at me.com (daniela florescu) Date: Tue, 16 Jun 2015 09:03:08 -0700 Subject: [xquery-talk] Izzit Bcos I is functional? In-Reply-To: References: Message-ID: <8DB1A973-6CBF-482E-85AD-AF91DF0F2369@me.com> Ihe, based on my own personal experience, I could give you the long version of the answer and the short version of the answer. I?ll start with the short one. And I will start with the NON-reason for the non-sucess of Xquery. 1. No, it?s not because it?s functional. Even though, because it?s functional, it will be restricted to be used only by people with CS degrees, and not by random Joes and Janes who write web sites. The way it is designed it is intended to make a population of educated programmers ETREMELY efficient, and NOT to increase the total number of developers to hundreds of millions. When being reproached this fact in the past, my answer was always the same: building a database application should not be for the uneducated. It?s like building a 30 story building, you don?t do that without a architect ad a structural engineer. E.g. if you want to eradicate a grave neurological disease, you don?t lower the bar to allow anyone from the street to perform a neurosurgery, you just make the existing neurosurgents more productive. And BTW, XQuery (like any programming language in 2015) should not be written by hand, by mostly automatically generated by tools, so at the end, who cares if it is functional or not. 2. It?s not because academia doesn?t pay attention. That?s not true. Almost every database class I know finishes with teaching the students XQuery. I taught full XML/XQuery classes myself in both Stanford and Berkeley and the students loved it. It is true that most database professors themselves don?t understand XML and XQuery, but that?s another story?? ============== Here would be my FIRST real reason: 1. XQuery CANNOT be more successful then the problem that it tries to solve, which is XML processing. XML itself is not successful.Period. There is no money in XML. Period. There is a USE CASE in XML as documents, but not enough money in this market. And XML as data is a total flop. XML is hated and avoided by the developers like hell. And that, for good reasons. So, why wouldn?t they use XQuery, when they don?t want to see the face of XML in the first place !? So, you see, it would be unreasonable to expect that XQuery is successful in places where XML is hated. E.G. MarkLogic after 14 years of existence barely managed to pass 100M revenue. DatasTax after 3 years of existence is at more then 300M revenue (and less investment from VCs). It?s ? XML vs. JSON. Documents vs. data. So?. I think it is simply a question of ?. there is no market for XML ??(aka no enough MONEY in the market). (there are plenty of other reasons, of course, but I think this is the main one..) ============= The only way for the ideas behind XQuery to become successful is trough JSON and a language like JSONiq. Because there IS enough money in the market behind JSON? That?s my short answer. I can send you the longer answer, maybe later. Best Dana > On Jun 16, 2015, at 1:20 AM, Michael Kay wrote: > > Yes, it?s the wrong place to ask. But my guess would be: > > (a) XSLT is well entrenched for doing many of the jobs that could also be done with XQuery. > > (b) Lots of programmers, given a new job to do, prefer to use the tools they know, such as Java, PHP, or C#, rather than learning a specialized tool > > (c) In the database arena, there is strong corporate resistance to increasing the variety of database technology in use within an enterprise. > > (d) Resistance in some quarters to using XML as the automatic solution for long-term storage of ?semi-structured data?. > > These are actually all (at least in some cases) legitimate objections; but they are all compounded by fear of the unknown (which is also legitimate). > > Don?t assume that failure to adopt XQuery is because of resistance to adopting XQuery. The reason I haven?t adopted Erlang isn?t because I?m resistant to it; I?ve just never had a requirement that caused me to think ?It?s time I considered Erlang as the solution to this problem?. There are an awful lot of good technologies competing for attention out there and no one has time to look at them all. > > Michael Kay > Saxonica > > >> On 16 Jun 2015, at 08:21, Ihe Onwuka wrote: >> >> Probably the wrong place to ask but what are the prime factors behind the resistance to adopt XQuery or it's derivatives thereof as a technology for querying and manipulating semi-structured data. >> _______________________________________________ >> talk at x-query.com >> http://x-query.com/mailman/listinfo/talk > > > _______________________________________________ > talk at x-query.com > http://x-query.com/mailman/listinfo/talk From dflorescu at me.com Tue Jun 16 09:26:42 2015 From: dflorescu at me.com (daniela florescu) Date: Tue, 16 Jun 2015 09:26:42 -0700 Subject: [xquery-talk] Aggressivity and the Database Bubble WASRe: Linkedin humor for the weekend (2) In-Reply-To: References: <95D7BB0F-73C0-4F76-8991-561248CA66C5@me.com> <3B669676-B09A-41FB-A881-7E21B6E7925F@saxonica.com> <394D3587-B2E6-486B-9821-6F22F81FA8B1@me.com> Message-ID: >> > > Agreed, the database software industry is about the most vicious example of naked aggressive capitalism that I have seen anywhere. > > But I don?t think it has got worse since Oracle started trying to wipe out their competitors in the mid 80s. It has always been that bad. Michael, believe it or not, I think it got worse since the days of Larry Ellison (as bas and aggressive as it was? :-) The first generation of databases grew organically, with their customer base ? they were busy fighting SPLITTING an exiting market which was naturally growing. Those databases were DB2(IBM), Oracle, SQL Sever. None of them had a VC behind it?. The new generation of databases (Cloudera, DataStax, Mongo. CouchDB. MarkLogic?etc) are NOT growing organically. They are all financed by Venture Capitalists. They all took between 100M and 200M, sometimes more, investment money from VCs. (And I can tell you, lending money from VCs is worse then lending money from the mafia?.. if you don?t give it back? they?ll find you ?.) A VC naturally wants his investment returned 50X (or whatever X they want) in a fixed amount of time (2-5 years, or whatever). This is how VC world works. So?. this new generation of databases, being financed by VCs, CANNOT grow naturally and organically with the market?.. Their growth speed is imposed by the VCs, and not by the market growth. They have to pull customers out of their a..s. They have to create artificial customers. They have to go to each other?s throat for the meager number of customers. Hence the general hysteria. =========== Hence all the horrible things that happens right now in the ?database? industry, marketing screams all over the place, idiotic marketing messages (scale to the level of the ?universe?..), bogus benchmarks, query languages that don?t NEED a specification, proprietary syntaxes to cover an existing standard ? because a standard would reduce the value of the company? bullying every single blogger in the industry to say what you want, physically abusing people who dare to say something else, bribing of officials of all kinds?.. Gold rush, here we come again. Science ( temporarely I hope ), left this field. How good a product is irrelevant right now. You can see that by watching the amount of money spent by this generation of databases in marketing and sales vs. engineering. Usually it?s 10X. This was not true for Oracle, even if they did spend a large amount on sales. My hope is that when the database bubble will crash, soon, VCs will finally get disappointed, and finally move away to another field, like locusts, so we can come back and bring some scientific interest into this field. But, yeah, I?ve never seen ANYTHING like what?s going on right now with the database companies in Sillicon Valley?.. Best Dana From pavel.velikhov at gmail.com Tue Jun 16 10:17:24 2015 From: pavel.velikhov at gmail.com (Pavel Velikhov) Date: Tue, 16 Jun 2015 20:17:24 +0300 Subject: [xquery-talk] Aggressivity and the Database Bubble WASRe: Linkedin humor for the weekend (2) In-Reply-To: References: <95D7BB0F-73C0-4F76-8991-561248CA66C5@me.com> <3B669676-B09A-41FB-A881-7E21B6E7925F@saxonica.com> <394D3587-B2E6-486B-9821-6F22F81FA8B1@me.com> Message-ID: Daniela, Its even worse than what you describe, because the vendors have to LIE about the properties of their systems, because they don?t have time to build reliable systems with all the guarantees that the marketing wants. Examples from the ?database? world: - Cassandra for most of their life had DIRTY_WRITES as the highest isolation level. They lost data left and right, new releases would boast new features that were ALL unreliable. When confronted with tests, they accepted some into the test harness, but continued making claims that were so easy to break. And then they wrote a driver for Spark - which was completely broken. That said, at first they claimed to be a universal system with all sorts of workloads. Then, as they stopped scaling beyond simple INSERT/SELECT use-cases, they claimed that?s what the initial design was about. - Elastic Search loses data left and right, had a bug in their consensus mechanism for a long time, claim to have included Jepsen tests in their harness, but didn?t really fix the bugs that Jepsen reported. Documentation for this project is a must read on how not to document your system. - Mongo was breaking left and right on pretty simple queries. Also have a data loss problem. And a bunch of other problems. But we already have our favourite punch lines about Mongo :) Examples from the ?Hadoop? world: - My favourite here is using Hadoop for simple massively parallel workloads, where it performed hundreds of times slower than scripts. With GNU_Parallel out there 90% of current Hadoop jobs can be done faster, will run faster and require much less monitoring than a hadoop cluster. So hope the marketing bubble bursts soon and hope that high quality systems will reemerge. > On 16 Jun 2015, at 19:26, daniela florescu wrote: > >>> >> >> Agreed, the database software industry is about the most vicious example of naked aggressive capitalism that I have seen anywhere. >> >> But I don?t think it has got worse since Oracle started trying to wipe out their competitors in the mid 80s. It has always been that bad. > > > Michael, > > believe it or not, I think it got worse since the days of Larry Ellison (as bas and aggressive as it was? :-) > > The first generation of databases grew organically, with their customer base ? they were busy fighting SPLITTING an exiting market > which was naturally growing. Those databases were DB2(IBM), Oracle, SQL Sever. None of them had a VC behind it?. > > The new generation of databases (Cloudera, DataStax, Mongo. CouchDB. MarkLogic?etc) are NOT growing organically. > > They are all financed by Venture Capitalists. They all took between 100M and 200M, sometimes more, investment money from VCs. > (And I can tell you, lending money from VCs is worse then lending money from the mafia?.. if you don?t give it back? they?ll find you ?.) > > A VC naturally wants his investment returned 50X (or whatever X they want) in a fixed amount of time (2-5 years, or whatever). This is how VC world works. > > So?. this new generation of databases, being financed by VCs, CANNOT grow naturally and organically with the market?.. > > Their growth speed is imposed by the VCs, and not by the market growth. > > They have to pull customers out of their a..s. They have to create artificial customers. > > They have to go to each other?s throat for the meager number of customers. > > Hence the general hysteria. > > =========== > > Hence all the horrible things that happens right now in the ?database? industry, marketing screams all over the place, idiotic marketing messages > (scale to the level of the ?universe?..), bogus benchmarks, query languages that don?t NEED a specification, proprietary syntaxes to cover an existing standard > ? because a standard would reduce the value of the company? bullying every single blogger in the industry to say what you want, physically > abusing people who dare to say something else, bribing of officials of all kinds?.. > > Gold rush, here we come again. > > Science ( temporarely I hope ), left this field. > > How good a product is irrelevant right now. You can see that by watching the amount of money spent by this generation of databases in marketing and sales vs. engineering. > Usually it?s 10X. This was not true for Oracle, even if they did spend a large amount on sales. > > My hope is that when the database bubble will crash, soon, VCs will finally get disappointed, and finally move away to another field, like locusts, so > we can come back and bring some scientific interest into this field. > > But, yeah, I?ve never seen ANYTHING like what?s going on right now with the database companies in Sillicon Valley?.. > > Best > Dana > > > > > > > > > > > > > _______________________________________________ > talk at x-query.com > http://x-query.com/mailman/listinfo/talk ? ?????????, ????? ??????? pavel.velikhov at gmail.com From dflorescu at me.com Tue Jun 16 10:48:44 2015 From: dflorescu at me.com (daniela florescu) Date: Tue, 16 Jun 2015 10:48:44 -0700 Subject: [xquery-talk] Aggressivity and the Database Bubble WASRe: Linkedin humor for the weekend (2) In-Reply-To: References: <95D7BB0F-73C0-4F76-8991-561248CA66C5@me.com> <3B669676-B09A-41FB-A881-7E21B6E7925F@saxonica.com> <394D3587-B2E6-486B-9821-6F22F81FA8B1@me.com> Message-ID: <7EA67B05-CABB-4B0B-9DC1-A82F711499B9@me.com> Yes, Pavel, I know that. And you know that. And a bunch of real database people know that. There are plenty of us. However, our voice gets lost ( and as Ihe said, we are more likely for us to be treated as crazy nuts then anything else?.) in face of the hundreds of millions of dollars that are being poured into marketing of those products. One of my favorite is CouchDb marketing slogan: "N1QL is the FIRST TIME in history when people can query the STRUCTURE of the data.? And yeah, MarkLogic?s CEO?s statement that MarkLogic invented a solution for solving heterogeneous data problem is another favorite of mine too. How does THAT look for you, after the past 25 years of semi-structured databases ? I cannot do anything else then being stunned by how gullible and uneducated people are?. And wait for the bubble to pass? BTW, an interesting related read: https://www.linkedin.com/pulse/linkedin-has-become-wmd-philippe-collard?trk=hp-feed-article-title Best Dana > On Jun 16, 2015, at 10:17 AM, Pavel Velikhov wrote: > > Daniela, > > Its even worse than what you describe, because the vendors have to LIE about the properties of their systems, because they don?t have > time to build reliable systems with all the guarantees that the marketing wants. > > Examples from the ?database? world: > > - Cassandra for most of their life had DIRTY_WRITES as the highest isolation level. They lost data left and right, new releases would boast new features that were ALL unreliable. When confronted with tests, they accepted some into the test harness, but continued making claims that were so easy to break. And then they wrote a driver for Spark - which was completely broken. That said, at first they claimed to be a universal system with all sorts of workloads. Then, as they stopped scaling beyond simple INSERT/SELECT use-cases, they claimed that?s what the initial design was about. > > - Elastic Search loses data left and right, had a bug in their consensus mechanism for a long time, claim to have included Jepsen tests in their harness, but didn?t really fix the bugs that Jepsen reported. Documentation for this project is a must read on how not to document your system. > > - Mongo was breaking left and right on pretty simple queries. Also have a data loss problem. And a bunch of other problems. But we already have our favourite punch lines about Mongo :) > > Examples from the ?Hadoop? world: > > - My favourite here is using Hadoop for simple massively parallel workloads, where it performed hundreds of times slower than scripts. With GNU_Parallel out there 90% of current Hadoop jobs can be done faster, will run faster and require much less monitoring than a hadoop cluster. > > So hope the marketing bubble bursts soon and hope that high quality systems will reemerge. > >> On 16 Jun 2015, at 19:26, daniela florescu wrote: >> >>>> >>> >>> Agreed, the database software industry is about the most vicious example of naked aggressive capitalism that I have seen anywhere. >>> >>> But I don?t think it has got worse since Oracle started trying to wipe out their competitors in the mid 80s. It has always been that bad. >> >> >> Michael, >> >> believe it or not, I think it got worse since the days of Larry Ellison (as bas and aggressive as it was? :-) >> >> The first generation of databases grew organically, with their customer base ? they were busy fighting SPLITTING an exiting market >> which was naturally growing. Those databases were DB2(IBM), Oracle, SQL Sever. None of them had a VC behind it?. >> >> The new generation of databases (Cloudera, DataStax, Mongo. CouchDB. MarkLogic?etc) are NOT growing organically. >> >> They are all financed by Venture Capitalists. They all took between 100M and 200M, sometimes more, investment money from VCs. >> (And I can tell you, lending money from VCs is worse then lending money from the mafia?.. if you don?t give it back? they?ll find you ?.) >> >> A VC naturally wants his investment returned 50X (or whatever X they want) in a fixed amount of time (2-5 years, or whatever). This is how VC world works. >> >> So?. this new generation of databases, being financed by VCs, CANNOT grow naturally and organically with the market?.. >> >> Their growth speed is imposed by the VCs, and not by the market growth. >> >> They have to pull customers out of their a..s. They have to create artificial customers. >> >> They have to go to each other?s throat for the meager number of customers. >> >> Hence the general hysteria. >> >> =========== >> >> Hence all the horrible things that happens right now in the ?database? industry, marketing screams all over the place, idiotic marketing messages >> (scale to the level of the ?universe?..), bogus benchmarks, query languages that don?t NEED a specification, proprietary syntaxes to cover an existing standard >> ? because a standard would reduce the value of the company? bullying every single blogger in the industry to say what you want, physically >> abusing people who dare to say something else, bribing of officials of all kinds?.. >> >> Gold rush, here we come again. >> >> Science ( temporarely I hope ), left this field. >> >> How good a product is irrelevant right now. You can see that by watching the amount of money spent by this generation of databases in marketing and sales vs. engineering. >> Usually it?s 10X. This was not true for Oracle, even if they did spend a large amount on sales. >> >> My hope is that when the database bubble will crash, soon, VCs will finally get disappointed, and finally move away to another field, like locusts, so >> we can come back and bring some scientific interest into this field. >> >> But, yeah, I?ve never seen ANYTHING like what?s going on right now with the database companies in Sillicon Valley?.. >> >> Best >> Dana >> >> >> >> >> >> >> >> >> >> >> >> >> _______________________________________________ >> talk at x-query.com >> http://x-query.com/mailman/listinfo/talk > > ? ?????????, > ????? ??????? > pavel.velikhov at gmail.com > > > _______________________________________________ > talk at x-query.com > http://x-query.com/mailman/listinfo/talk From dflorescu at me.com Tue Jun 16 10:48:44 2015 From: dflorescu at me.com (daniela florescu) Date: Tue, 16 Jun 2015 10:48:44 -0700 Subject: [xquery-talk] Aggressivity and the Database Bubble WASRe: Linkedin humor for the weekend (2) In-Reply-To: References: <95D7BB0F-73C0-4F76-8991-561248CA66C5@me.com> <3B669676-B09A-41FB-A881-7E21B6E7925F@saxonica.com> <394D3587-B2E6-486B-9821-6F22F81FA8B1@me.com> Message-ID: <7EA67B05-CABB-4B0B-9DC1-A82F711499B9@me.com> Yes, Pavel, I know that. And you know that. And a bunch of real database people know that. There are plenty of us. However, our voice gets lost ( and as Ihe said, we are more likely for us to be treated as crazy nuts then anything else?.) in face of the hundreds of millions of dollars that are being poured into marketing of those products. One of my favorite is CouchDb marketing slogan: "N1QL is the FIRST TIME in history when people can query the STRUCTURE of the data.? And yeah, MarkLogic?s CEO?s statement that MarkLogic invented a solution for solving heterogeneous data problem is another favorite of mine too. How does THAT look for you, after the past 25 years of semi-structured databases ? I cannot do anything else then being stunned by how gullible and uneducated people are?. And wait for the bubble to pass? BTW, an interesting related read: https://www.linkedin.com/pulse/linkedin-has-become-wmd-philippe-collard?trk=hp-feed-article-title Best Dana > On Jun 16, 2015, at 10:17 AM, Pavel Velikhov wrote: > > Daniela, > > Its even worse than what you describe, because the vendors have to LIE about the properties of their systems, because they don?t have > time to build reliable systems with all the guarantees that the marketing wants. > > Examples from the ?database? world: > > - Cassandra for most of their life had DIRTY_WRITES as the highest isolation level. They lost data left and right, new releases would boast new features that were ALL unreliable. When confronted with tests, they accepted some into the test harness, but continued making claims that were so easy to break. And then they wrote a driver for Spark - which was completely broken. That said, at first they claimed to be a universal system with all sorts of workloads. Then, as they stopped scaling beyond simple INSERT/SELECT use-cases, they claimed that?s what the initial design was about. > > - Elastic Search loses data left and right, had a bug in their consensus mechanism for a long time, claim to have included Jepsen tests in their harness, but didn?t really fix the bugs that Jepsen reported. Documentation for this project is a must read on how not to document your system. > > - Mongo was breaking left and right on pretty simple queries. Also have a data loss problem. And a bunch of other problems. But we already have our favourite punch lines about Mongo :) > > Examples from the ?Hadoop? world: > > - My favourite here is using Hadoop for simple massively parallel workloads, where it performed hundreds of times slower than scripts. With GNU_Parallel out there 90% of current Hadoop jobs can be done faster, will run faster and require much less monitoring than a hadoop cluster. > > So hope the marketing bubble bursts soon and hope that high quality systems will reemerge. > >> On 16 Jun 2015, at 19:26, daniela florescu wrote: >> >>>> >>> >>> Agreed, the database software industry is about the most vicious example of naked aggressive capitalism that I have seen anywhere. >>> >>> But I don?t think it has got worse since Oracle started trying to wipe out their competitors in the mid 80s. It has always been that bad. >> >> >> Michael, >> >> believe it or not, I think it got worse since the days of Larry Ellison (as bas and aggressive as it was? :-) >> >> The first generation of databases grew organically, with their customer base ? they were busy fighting SPLITTING an exiting market >> which was naturally growing. Those databases were DB2(IBM), Oracle, SQL Sever. None of them had a VC behind it?. >> >> The new generation of databases (Cloudera, DataStax, Mongo. CouchDB. MarkLogic?etc) are NOT growing organically. >> >> They are all financed by Venture Capitalists. They all took between 100M and 200M, sometimes more, investment money from VCs. >> (And I can tell you, lending money from VCs is worse then lending money from the mafia?.. if you don?t give it back? they?ll find you ?.) >> >> A VC naturally wants his investment returned 50X (or whatever X they want) in a fixed amount of time (2-5 years, or whatever). This is how VC world works. >> >> So?. this new generation of databases, being financed by VCs, CANNOT grow naturally and organically with the market?.. >> >> Their growth speed is imposed by the VCs, and not by the market growth. >> >> They have to pull customers out of their a..s. They have to create artificial customers. >> >> They have to go to each other?s throat for the meager number of customers. >> >> Hence the general hysteria. >> >> =========== >> >> Hence all the horrible things that happens right now in the ?database? industry, marketing screams all over the place, idiotic marketing messages >> (scale to the level of the ?universe?..), bogus benchmarks, query languages that don?t NEED a specification, proprietary syntaxes to cover an existing standard >> ? because a standard would reduce the value of the company? bullying every single blogger in the industry to say what you want, physically >> abusing people who dare to say something else, bribing of officials of all kinds?.. >> >> Gold rush, here we come again. >> >> Science ( temporarely I hope ), left this field. >> >> How good a product is irrelevant right now. You can see that by watching the amount of money spent by this generation of databases in marketing and sales vs. engineering. >> Usually it?s 10X. This was not true for Oracle, even if they did spend a large amount on sales. >> >> My hope is that when the database bubble will crash, soon, VCs will finally get disappointed, and finally move away to another field, like locusts, so >> we can come back and bring some scientific interest into this field. >> >> But, yeah, I?ve never seen ANYTHING like what?s going on right now with the database companies in Sillicon Valley?.. >> >> Best >> Dana >> >> >> >> >> >> >> >> >> >> >> >> >> _______________________________________________ >> talk at x-query.com >> http://x-query.com/mailman/listinfo/talk > > ? ?????????, > ????? ??????? > pavel.velikhov at gmail.com > > > _______________________________________________ > talk at x-query.com > http://x-query.com/mailman/listinfo/talk From ihe.onwuka at gmail.com Tue Jun 16 13:01:44 2015 From: ihe.onwuka at gmail.com (Ihe Onwuka) Date: Tue, 16 Jun 2015 16:01:44 -0400 Subject: [xquery-talk] Aggressivity and the Database Bubble WASRe: Linkedin humor for the weekend (2) In-Reply-To: <7EA67B05-CABB-4B0B-9DC1-A82F711499B9@me.com> References: <95D7BB0F-73C0-4F76-8991-561248CA66C5@me.com> <3B669676-B09A-41FB-A881-7E21B6E7925F@saxonica.com> <394D3587-B2E6-486B-9821-6F22F81FA8B1@me.com> <7EA67B05-CABB-4B0B-9DC1-A82F711499B9@me.com> Message-ID: On Tue, Jun 16, 2015 at 1:48 PM, daniela florescu wrote: > Yes, Pavel, I know that. And you know that. And a bunch of real database > people know that. There are plenty of us. > > However, our voice gets lost ( and as Ihe said, we are more likely for us > to be treated as crazy nuts then anything else?.) > in face of the hundreds of millions of dollars that are being poured into > marketing of those products. > > One of my favorite is CouchDb marketing slogan: "N1QL is the FIRST TIME > in history when people can query the STRUCTURE > of the data.? > > And yeah, MarkLogic?s CEO?s statement that MarkLogic invented a solution > for solving heterogeneous data problem is another favorite of > mine too. > > How does THAT look for you, after the past 25 years of semi-structured > databases ? > > I cannot do anything else then being stunned by how gullible and > uneducated people are?. > > And wait for the bubble to pass? > > > I was drawn to this article because I've been approached twice by recruiters from the company that it is about. http://kellblog.com/2011/06/27/why-palantir-makes-my-head-hurt/ *Since it is quite long I have excerpted the relevant bit below.* *"To which for several years I had to say ?it?s all bullshit, it?s all bullshit, it?s a barter transaction and they?re double counting, and it?s all bullshit.?* *It turns out being a naysayer isn?t fun work: for three years you sound like a whining, doubting-Thomas constantly on the back foot, constantly playing defense and then one day you?re proven right . But there?s no joy in it. And the naysaying doesn?t help sell newspapers so you don?t get much press coverage. And, in the end, all people remember is that ?MicroStrategy was pretty cool back in the day? and ?Dave?s a grump.?* -------------- next part -------------- An HTML attachment was scrubbed... URL: From ihe.onwuka at gmail.com Tue Jun 16 13:02:18 2015 From: ihe.onwuka at gmail.com (Ihe Onwuka) Date: Tue, 16 Jun 2015 16:02:18 -0400 Subject: [xquery-talk] Aggressivity and the Database Bubble WASRe: Linkedin humor for the weekend (2) In-Reply-To: References: <95D7BB0F-73C0-4F76-8991-561248CA66C5@me.com> <3B669676-B09A-41FB-A881-7E21B6E7925F@saxonica.com> <394D3587-B2E6-486B-9821-6F22F81FA8B1@me.com> Message-ID: Remember Ingres. Here is the story of what Oracle did to them. http://kellblog.com/2006/04/08/ingres-can-you-ever-go-back/ Undoubtedly you can parse the engineering considerations better than I (see At a product level) but pay attention to what is said in "At the business level" and in particular the reference to failing to understand the tornado. On Tue, Jun 16, 2015 at 12:26 PM, daniela florescu wrote: > > Michael, > > believe it or not, I think it got worse since the days of Larry Ellison > (as bas and aggressive as it was? :-) > > The first generation of databases grew organically, with their customer > base ? they were busy fighting SPLITTING an exiting market > which was naturally growing. Those databases were DB2(IBM), Oracle, SQL > Sever. None of them had a VC behind it?. > > The new generation of databases (Cloudera, DataStax, Mongo. CouchDB. > MarkLogic?etc) are NOT growing organically. > > They are all financed by Venture Capitalists. They all took between 100M > and 200M, sometimes more, investment money from VCs. > (And I can tell you, lending money from VCs is worse then lending money > from the mafia?.. if you don?t give it back? they?ll find you ?.) > > A VC naturally wants his investment returned 50X (or whatever X they want) > in a fixed amount of time (2-5 years, or whatever). This is how VC world > works. > > So?. this new generation of databases, being financed by VCs, CANNOT grow > naturally and organically with the market?.. > > Their growth speed is imposed by the VCs, and not by the market growth. > > They have to pull customers out of their a..s. They have to create > artificial customers. > > They have to go to each other?s throat for the meager number of customers. > > Hence the general hysteria. > > =========== > > Hence all the horrible things that happens right now in the ?database? > industry, marketing screams all over the place, idiotic marketing messages > (scale to the level of the ?universe?..), bogus benchmarks, query > languages that don?t NEED a specification, proprietary syntaxes to cover an > existing standard > ? because a standard would reduce the value of the company? bullying every > single blogger in the industry to say what you want, physically > abusing people who dare to say something else, bribing of officials of all > kinds?.. > > Gold rush, here we come again. > > Science ( temporarely I hope ), left this field. > > How good a product is irrelevant right now. You can see that by watching > the amount of money spent by this generation of databases in marketing and > sales vs. engineering. > Usually it?s 10X. This was not true for Oracle, even if they did spend a > large amount on sales. > > My hope is that when the database bubble will crash, soon, VCs will > finally get disappointed, and finally move away to another field, like > locusts, so > we can come back and bring some scientific interest into this field. > > But, yeah, I?ve never seen ANYTHING like what?s going on right now with > the database companies in Sillicon Valley?.. > > Best > Dana > > > > > > > > > > > > -------------- next part -------------- An HTML attachment was scrubbed... URL: From pavel.velikhov at gmail.com Tue Jun 16 13:13:23 2015 From: pavel.velikhov at gmail.com (Pavel Velikhov) Date: Tue, 16 Jun 2015 23:13:23 +0300 Subject: [xquery-talk] Aggressivity and the Database Bubble WASRe: Linkedin humor for the weekend (2) In-Reply-To: References: <95D7BB0F-73C0-4F76-8991-561248CA66C5@me.com> <3B669676-B09A-41FB-A881-7E21B6E7925F@saxonica.com> <394D3587-B2E6-486B-9821-6F22F81FA8B1@me.com> <7EA67B05-CABB-4B0B-9DC1-A82F711499B9@me.com> Message-ID: <7576BF16-56A3-4518-8BCB-4A427136B456@gmail.com> Found this wonderful law that explains the futility of arguing against bull****: "The amount of energy necessary to refute bull**** is an order of magnitude bigger than to produce it.? ~ Alberto Brandolini Have a nice day! :) > On 16 Jun 2015, at 23:01, Ihe Onwuka wrote: > > On Tue, Jun 16, 2015 at 1:48 PM, daniela florescu > wrote: > > Yes, Pavel, I know that. And you know that. And a bunch of real database people know that. There are plenty of us. > > However, our voice gets lost ( and as Ihe said, we are more likely for us to be treated as crazy nuts then anything else?.) > in face of the hundreds of millions of dollars that are being poured into marketing of those products. > > One of my favorite is CouchDb marketing slogan: "N1QL is the FIRST TIME in history when people can query the STRUCTURE > of the data.? > > And yeah, MarkLogic?s CEO?s statement that MarkLogic invented a solution for solving heterogeneous data problem is another favorite of > mine too. > > How does THAT look for you, after the past 25 years of semi-structured databases ? > > I cannot do anything else then being stunned by how gullible and uneducated people are?. > > And wait for the bubble to pass? > > > I was drawn to this article because I've been approached twice by recruiters from the company that it is about. > > http://kellblog.com/2011/06/27/why-palantir-makes-my-head-hurt/ > Since it is quite long I have excerpted the relevant bit below. > > "To which for several years I had to say ?it?s all bullshit, it?s all bullshit, it?s a barter transaction and they?re double counting, and it?s all bullshit.? > > It turns out being a naysayer isn?t fun work: for three years you sound like a whining, doubting-Thomas constantly on the back foot, constantly playing defense and then one day you?re proven right . But there?s no joy in it. And the naysaying doesn?t help sell newspapers so you don?t get much press coverage. And, in the end, all people remember is that ?MicroStrategy was pretty cool back in the day? and ?Dave?s a grump.? ? ?????????, ????? ??????? pavel.velikhov at gmail.com -------------- next part -------------- An HTML attachment was scrubbed... URL: From dflorescu at me.com Tue Jun 16 13:30:25 2015 From: dflorescu at me.com (daniela florescu) Date: Tue, 16 Jun 2015 13:30:25 -0700 Subject: [xquery-talk] Aggressivity and the Database Bubble WASRe: Linkedin humor for the weekend (2) In-Reply-To: References: <95D7BB0F-73C0-4F76-8991-561248CA66C5@me.com> <3B669676-B09A-41FB-A881-7E21B6E7925F@saxonica.com> <394D3587-B2E6-486B-9821-6F22F81FA8B1@me.com> Message-ID: First, the fact that there EXISTS a ?Technical level? section in this blog is fundamental. (and yes, I am a fan of Kellogg?s blogs, too, even if I don?t agree with him always). First, at that time, technical considerations STILL EXISTED. E.g. could one of you tell me the technical detail implementations between CouchDB and MongoDB !? Huh !? They are both just quickly put together hacks, without any architecture?.and no-one, including their own engineers and their own customers CARES or even KNOWS about the technical details. Tons of my database friends went to work for Mongo and then left in 2-3 months screaming ?. (I wonder if you ask the average MongoDb ?database? developer what a page locking is if you even get an answer?:-) =========== Second, yes, sure business wars always existed and will always exist. And it?s a good thing. Trust me, working at Oracle for 8 years, I?ve seen my share of ?business wars? and related strategies?... But when Kellogg cites Geoffrey Moore?s ?tornado?. "The tornado refers to Geoffrey Moore?s metaphor for the hypergrowth phase of a high-tech, infrastructure market.? I agree that during such a ?tornado?? the best is to acquire as many customers as possible. But Moore refers to a REAL customer growth tornado, not an current ARTIFICIAL growth that is 100% due to the pressure from VCs ? they need to reimburse the money back to the pension funds they took it from in a fixed interval of X years. I am 100% convinced that this ?database bubble? is artificially inflated by VCs billions poured in. More and more articles by Forbes show that ? enterprises play with the new solutions, but few actually deploy those solutions. This is not only, as it was in the 80 and 90, only a matter of who has the best sales team, and gets the EXISTING projects. (and yes, Oracle did..) This artificial bubble pushes vendors to become idiot zombies: create ?customers" out thin air, bullshiting the few who are open to buy new things into believing in aliens, and completely treat them like idiots by ignoring the state of the art. This is not a case of Moore?s tornado. One more day passed? one more day closer to the death of this database bubble? :-) Have a great day, Dana > On Jun 16, 2015, at 1:02 PM, Ihe Onwuka wrote: > > > Remember Ingres. Here is the story of what Oracle did to them. > > http://kellblog.com/2006/04/08/ingres-can-you-ever-go-back/ > > Undoubtedly you can parse the engineering considerations better than I (see At a product level) but pay attention to what is said in "At the business level" and in particular the reference to failing to understand the tornado. > > > On Tue, Jun 16, 2015 at 12:26 PM, daniela florescu > wrote: > > Michael, > > believe it or not, I think it got worse since the days of Larry Ellison (as bas and aggressive as it was? :-) > > The first generation of databases grew organically, with their customer base ? they were busy fighting SPLITTING an exiting market > which was naturally growing. Those databases were DB2(IBM), Oracle, SQL Sever. None of them had a VC behind it?. > > The new generation of databases (Cloudera, DataStax, Mongo. CouchDB. MarkLogic?etc) are NOT growing organically. > > They are all financed by Venture Capitalists. They all took between 100M and 200M, sometimes more, investment money from VCs. > (And I can tell you, lending money from VCs is worse then lending money from the mafia?.. if you don?t give it back? they?ll find you ?.) > > A VC naturally wants his investment returned 50X (or whatever X they want) in a fixed amount of time (2-5 years, or whatever). This is how VC world works. > > So?. this new generation of databases, being financed by VCs, CANNOT grow naturally and organically with the market?.. > > Their growth speed is imposed by the VCs, and not by the market growth. > > They have to pull customers out of their a..s. They have to create artificial customers. > > They have to go to each other?s throat for the meager number of customers. > > Hence the general hysteria. > > =========== > > Hence all the horrible things that happens right now in the ?database? industry, marketing screams all over the place, idiotic marketing messages > (scale to the level of the ?universe?..), bogus benchmarks, query languages that don?t NEED a specification, proprietary syntaxes to cover an existing standard > ? because a standard would reduce the value of the company? bullying every single blogger in the industry to say what you want, physically > abusing people who dare to say something else, bribing of officials of all kinds?.. > > Gold rush, here we come again. > > Science ( temporarely I hope ), left this field. > > How good a product is irrelevant right now. You can see that by watching the amount of money spent by this generation of databases in marketing and sales vs. engineering. > Usually it?s 10X. This was not true for Oracle, even if they did spend a large amount on sales. > > My hope is that when the database bubble will crash, soon, VCs will finally get disappointed, and finally move away to another field, like locusts, so > we can come back and bring some scientific interest into this field. > > But, yeah, I?ve never seen ANYTHING like what?s going on right now with the database companies in Sillicon Valley?.. > > Best > Dana > > > > > > > > > > > > -------------- next part -------------- An HTML attachment was scrubbed... URL: From dflorescu at me.com Tue Jun 16 13:42:39 2015 From: dflorescu at me.com (daniela florescu) Date: Tue, 16 Jun 2015 13:42:39 -0700 Subject: [xquery-talk] Aggressivity and the Database Bubble WASRe: Linkedin humor for the weekend (2) In-Reply-To: References: <95D7BB0F-73C0-4F76-8991-561248CA66C5@me.com> <3B669676-B09A-41FB-A881-7E21B6E7925F@saxonica.com> <394D3587-B2E6-486B-9821-6F22F81FA8B1@me.com> Message-ID: <503AB272-2B0C-492A-A704-AC6EB4891FA2@me.com> And all this comes from a person like me. I spent my ENTIRE CAREER working to see the back of the relational databases?NoSQL if you want. However, this can NOT be done by replacing the relational databases with a pile of bul***t. They can only be replaced with something scientifically solid. That?s why I am so virulent against stupidities in the NoSQL world: the more they say such stupidities, the more they delay the replacement of relational databases with something better. Best regards Dana > On Jun 16, 2015, at 1:30 PM, daniela florescu wrote: > > First, the fact that there EXISTS a ?Technical level? section in this blog is fundamental. > (and yes, I am a fan of Kellogg?s blogs, too, even if I don?t agree with him always). > > First, at that time, technical considerations STILL EXISTED. > > E.g. could one of you tell me the technical detail implementations between CouchDB and MongoDB !? > > Huh !? They are both just quickly put together hacks, without any architecture?.and no-one, including their own engineers and their > own customers CARES or even KNOWS about the technical details. Tons of my database friends went to work for Mongo and then left in 2-3 months > screaming ?. > > (I wonder if you ask the average MongoDb ?database? developer what a page locking is if you even get an answer?:-) > > =========== > > Second, yes, sure business wars always existed and will always exist. And it?s a good thing. > > Trust me, working at Oracle for 8 years, I?ve seen my share of ?business wars? and related strategies?... > > > But when Kellogg cites Geoffrey Moore?s ?tornado?. > > "The tornado refers to Geoffrey Moore?s metaphor for the hypergrowth phase of a high-tech, infrastructure market.? > > I agree that during such a ?tornado?? the best is to acquire as many customers as possible. > > But Moore refers to a REAL customer growth tornado, not an current ARTIFICIAL growth that is 100% due to the pressure from VCs > ? they need to reimburse the money back to the pension funds they took it from in a fixed interval of X years. > > I am 100% convinced that this ?database bubble? is artificially inflated by VCs billions poured in. More and more articles by Forbes show that ? > enterprises play with the new solutions, but few actually deploy those solutions. > > This is not only, as it was in the 80 and 90, only a matter of who has the best sales team, and gets the EXISTING projects. (and yes, Oracle did..) > > This artificial bubble pushes vendors to become idiot zombies: create ?customers" out thin air, bullshiting the few who are open to buy new things into > believing in aliens, and completely treat them like idiots by ignoring the state of the art. > > This is not a case of Moore?s tornado. > > One more day passed? one more day closer to the death of this database bubble? :-) > > Have a great day, > Dana > > > > > > > > > >> On Jun 16, 2015, at 1:02 PM, Ihe Onwuka > wrote: >> >> >> Remember Ingres. Here is the story of what Oracle did to them. >> >> http://kellblog.com/2006/04/08/ingres-can-you-ever-go-back/ >> >> Undoubtedly you can parse the engineering considerations better than I (see At a product level) but pay attention to what is said in "At the business level" and in particular the reference to failing to understand the tornado. >> >> >> On Tue, Jun 16, 2015 at 12:26 PM, daniela florescu > wrote: >> >> Michael, >> >> believe it or not, I think it got worse since the days of Larry Ellison (as bas and aggressive as it was? :-) >> >> The first generation of databases grew organically, with their customer base ? they were busy fighting SPLITTING an exiting market >> which was naturally growing. Those databases were DB2(IBM), Oracle, SQL Sever. None of them had a VC behind it?. >> >> The new generation of databases (Cloudera, DataStax, Mongo. CouchDB. MarkLogic?etc) are NOT growing organically. >> >> They are all financed by Venture Capitalists. They all took between 100M and 200M, sometimes more, investment money from VCs. >> (And I can tell you, lending money from VCs is worse then lending money from the mafia?.. if you don?t give it back? they?ll find you ?.) >> >> A VC naturally wants his investment returned 50X (or whatever X they want) in a fixed amount of time (2-5 years, or whatever). This is how VC world works. >> >> So?. this new generation of databases, being financed by VCs, CANNOT grow naturally and organically with the market?.. >> >> Their growth speed is imposed by the VCs, and not by the market growth. >> >> They have to pull customers out of their a..s. They have to create artificial customers. >> >> They have to go to each other?s throat for the meager number of customers. >> >> Hence the general hysteria. >> >> =========== >> >> Hence all the horrible things that happens right now in the ?database? industry, marketing screams all over the place, idiotic marketing messages >> (scale to the level of the ?universe?..), bogus benchmarks, query languages that don?t NEED a specification, proprietary syntaxes to cover an existing standard >> ? because a standard would reduce the value of the company? bullying every single blogger in the industry to say what you want, physically >> abusing people who dare to say something else, bribing of officials of all kinds?.. >> >> Gold rush, here we come again. >> >> Science ( temporarely I hope ), left this field. >> >> How good a product is irrelevant right now. You can see that by watching the amount of money spent by this generation of databases in marketing and sales vs. engineering. >> Usually it?s 10X. This was not true for Oracle, even if they did spend a large amount on sales. >> >> My hope is that when the database bubble will crash, soon, VCs will finally get disappointed, and finally move away to another field, like locusts, so >> we can come back and bring some scientific interest into this field. >> >> But, yeah, I?ve never seen ANYTHING like what?s going on right now with the database companies in Sillicon Valley?.. >> >> Best >> Dana >> >> >> >> >> >> >> >> >> >> >> >> > -------------- next part -------------- An HTML attachment was scrubbed... URL: From ihe.onwuka at gmail.com Tue Jun 16 15:07:14 2015 From: ihe.onwuka at gmail.com (Ihe Onwuka) Date: Tue, 16 Jun 2015 18:07:14 -0400 Subject: [xquery-talk] Izzit Bcos I is functional? In-Reply-To: <8DB1A973-6CBF-482E-85AD-AF91DF0F2369@me.com> References: <8DB1A973-6CBF-482E-85AD-AF91DF0F2369@me.com> Message-ID: On Tue, Jun 16, 2015 at 12:03 PM, daniela florescu wrote: > Ihe, > > based on my own personal experience, I could give you the long version of > the answer and the short version > of the answer. > > I?ll start with the short one. > > And I will start with the NON-reason for the non-sucess of Xquery. > > 1. No, it?s not because it?s functional. > > Even though, because it?s functional, it will be restricted to be used > only by people with CS degrees, and not by > random Joes and Janes who write web sites. The way it is designed it is > intended to make a population of educated programmers > ETREMELY efficient, and NOT to increase the total number of developers to > hundreds of millions. > > When being reproached this fact in the past, my answer was always the > same: building a database application should not be for the uneducated. > It?s like building a 30 story building, you don?t do that without a > architect ad a structural engineer. > E.g. if you want to eradicate a grave neurological disease, you don?t > lower the bar to allow anyone from the street to perform a neurosurgery, > you just make the existing neurosurgents more productive. > > And BTW, XQuery (like any programming language in 2015) should not be > written by hand, by mostly automatically generated by tools, so at the end, > who cares if it is functional or not. > > 2. It?s not because academia doesn?t pay attention. > > That?s not true. Almost every database class I know finishes with teaching > the students XQuery. I taught full XML/XQuery classes myself in both > Stanford and Berkeley > and the students loved it. It is true that most database professors > themselves don?t understand XML and XQuery, but that?s another story?? > > I'm not sure about that. I know Harvard does but that is part of a web programming course. http://ocw.mit.edu/courses/electrical-engineering-and-computer-science/6-830-database-systems-fall-2010/readings/ http://ocw.mit.edu/courses/civil-and-environmental-engineering/1-264j-database-internet-and-systems-integration-technologies-fall-2013/lecture-notes-exercises/ MIT doesn't, neither does either of the universities I went to. > ============== > > Here would be my FIRST real reason: > > 1. XQuery CANNOT be more successful then the problem that it tries to > solve, which is XML processing. > > XML itself is not successful.Period. > There is no money in XML. Period. > > There is a USE CASE in XML as documents, but not enough money in this > market. > > And XML as data is a total flop. XML is hated and avoided by the > developers like hell. And that, for good reasons. > > What are they. Alot of the ones I have read aren't true and seem to be based on a lack of knowledge about XML > So, why wouldn?t they use XQuery, when they don?t want to see the face of > XML in the first place !? > > So, you see, it would be unreasonable to expect that XQuery is successful > in places where XML is hated. > > E.G. MarkLogic after 14 years of existence barely managed to pass 100M > revenue. DatasTax after 3 years > of existence is at more then 300M revenue (and less investment from VCs). > > It?s ? XML vs. JSON. Documents vs. data. > > Y'see I reckon that if JSON was deployed in many of the domains where XML is, it too would be hated. > So?. I think it is simply a question of ?. there is no market for XML > ??(aka no enough MONEY in the market). > > > (there are plenty of other reasons, of course, but I think this is the > main one..) > > ============= > > The only way for the ideas behind XQuery to become successful is trough > JSON and a language like JSONiq. > > Because there IS enough money in the market behind JSON? > > That?s my short answer. > > I can send you the longer answer, maybe later. > > Eagerly awaited. -------------- next part -------------- An HTML attachment was scrubbed... URL: From dflorescu at me.com Tue Jun 16 15:21:48 2015 From: dflorescu at me.com (daniela florescu) Date: Tue, 16 Jun 2015 15:21:48 -0700 Subject: [xquery-talk] Izzit Bcos I is functional? In-Reply-To: References: <8DB1A973-6CBF-482E-85AD-AF91DF0F2369@me.com> Message-ID: <347EB4FA-A1CC-406A-9370-1160EDF47B64@me.com> > > > I'm not sure about that. I know Harvard does but that is part of a web programming course. > > http://ocw.mit.edu/courses/electrical-engineering-and-computer-science/6-830-database-systems-fall-2010/readings/ > http://ocw.mit.edu/courses/civil-and-environmental-engineering/1-264j-database-internet-and-systems-integration-technologies-fall-2013/lecture-notes-exercises/ Look inside the slides of the database classes? you?ll see XQuery almost everywhere (at the end of the class?). Especially that Stanford does it, and most database professors copy the slides from Stanford. https://lagunita.stanford.edu/courses/DB/XPath/SelfPaced/courseware/ch-querying_xml/seq-vid-xquery_introduction/ (not that the Stanford professors understand much from XML and XQuery ? but that?s a whole new discussion?) > > MIT doesn't, neither does either of the universities I went to. That?s because Stonebreaker is there, and he wouldn?t be caught dead teaching XML. I?ll see if I can make him change his mind about JSON?. :-) The fact that sir TBL is in MIT too doesn?t help at all either, given the fact that he was ?convinced? by a bunch of good willing people that XML is evil. (and the semantic web will cure the hunger of the world and the cancer for sure?) > > > What are they. Alot of the ones I have read aren't true and seem to be based on a lack of knowledge about XML I think I KNOW something about XML ? not that I enjoyed learning it, but I HAD to :-) Want a quick list ? processing instructions, weirdo parsing rules that are inherited from the 1950?s SGML, weirdo design of namespaces, XML Schema anyone !? nillable anyone !? Some early design of Xpath 1.0 (no reserved keywords, semantics of =) I?ll stop here. Only those and that would stop me (as a database person) right there to use XML as a format for data. > > Y'see I reckon that if JSON was deployed in many of the domains where XML is, it too would be hated. Yes, but less. People would STILL have to face the fact that they cannot process JSON with their beloved SQL?. but at least they wouldn?t add insult to injury by adding the weird things I listed above. The bitter pill would be somehow easier to swallow. The database people accept with open arms JSOn right now because they don?t REALLY understand what JSON is. Most of them still look at JSON as a nicer syntax then CSV?..they think it?s flat, or a ?little? nested. The shock will hit them later on :-)))) Best regards Dana -------------- next part -------------- An HTML attachment was scrubbed... URL: From dflorescu at me.com Tue Jun 16 15:30:14 2015 From: dflorescu at me.com (daniela florescu) Date: Tue, 16 Jun 2015 15:30:14 -0700 Subject: [xquery-talk] Izzit Bcos I is functional? In-Reply-To: <347EB4FA-A1CC-406A-9370-1160EDF47B64@me.com> References: <8DB1A973-6CBF-482E-85AD-AF91DF0F2369@me.com> <347EB4FA-A1CC-406A-9370-1160EDF47B64@me.com> Message-ID: > > Especially that Stanford does it, and most database professors copy the slides from Stanford. > https://lagunita.stanford.edu/courses/DB/XPath/SelfPaced/courseware/ch-querying_xml/seq-vid-xquery_introduction/ > > (not that the Stanford professors understand much from XML and XQuery ? but that?s a whole new discussion?) Just a proof that, even if they DO teach XQuery, Stanford professors don?t understand what their are reaching. Just look at the second bullet on the slide: ?each expression operates and returns a sequence of ELEMENTS?. :-)))) Yep, XQuery lacks a little bit of good tutorials and good books, and good teaching material. Marketing, in general. Best Dana -------------- next part -------------- An HTML attachment was scrubbed... URL: From dflorescu at me.com Tue Jun 16 18:51:58 2015 From: dflorescu at me.com (daniela florescu) Date: Tue, 16 Jun 2015 18:51:58 -0700 Subject: [xquery-talk] [show xqt] JSONiq and XQuery Development Tools In-Reply-To: References: Message-ID: Adam, unfortunately, thanks to very poor decisions made by several organizations, and several individuals, both the Zorba team as well as the 28msec team are dissolved. What you see now are just individual efforts. That?s too bad, because they indeed made impressive contributions (JSONiq, Zorba, the first NoSQL query processor running in the cloud, etc). But now the Zorba and 28msec team are both scattered all over the place. Ughhhh. Dana > On Jun 15, 2015, at 3:03 PM, Adam Retter wrote: > > Impressive :-) As always actually! Good work William and 28. > > On 15 June 2015 at 22:53, William Candillon wrote: >> Dear gang, >> >> Development tools like Github and CircleCI have completely transformed >> our software engineering day to day tasks and we wanted to share with >> you some of the work we have done in order to integrate JSONiq and >> XQuery with these modern development workflows. The story is available >> at http://www.28.io/blog/jsoniq-development-tools/ >> >> Kind regards, >> >> William >> _______________________________________________ >> talk at x-query.com >> http://x-query.com/mailman/listinfo/talk > > > > -- > Adam Retter > > skype: adam.retter > tweet: adamretter > http://www.adamretter.org.uk > _______________________________________________ > talk at x-query.com > http://x-query.com/mailman/listinfo/talk From ihe.onwuka at gmail.com Wed Jun 17 00:05:10 2015 From: ihe.onwuka at gmail.com (Ihe Onwuka) Date: Wed, 17 Jun 2015 03:05:10 -0400 Subject: [xquery-talk] Izzit Bcos I is functional? In-Reply-To: <347EB4FA-A1CC-406A-9370-1160EDF47B64@me.com> References: <8DB1A973-6CBF-482E-85AD-AF91DF0F2369@me.com> <347EB4FA-A1CC-406A-9370-1160EDF47B64@me.com> Message-ID: On Tue, Jun 16, 2015 at 6:21 PM, daniela florescu wrote: > > > What are they. Alot of the ones I have read aren't true and seem to be > based on a lack of knowledge about XML > > > I think I KNOW something about XML ? not that I enjoyed learning it, but I > HAD to :-) > > Want a quick list ? processing instructions, weirdo parsing rules that are > inherited from the 1950?s SGML, weirdo design > of namespaces, XML Schema anyone !? nillable anyone !? Some early design > of Xpath 1.0 (no reserved keywords, semantics of =) > I?ll stop here. > > Only those and that would stop me (as a database person) right there to > use XML as a format for data. > > But you can pretty much model the semantic equivalent of JSON data without having to use a Schema, namespace, PI or any traverse any other of these treacherous terrains. Call it XML the Good Parts (Hmmmm where did I get that idea from). JSON is a very expensive over-reaction. There was no need to invent another format and then make in non-interoperable with XML. -------------- next part -------------- An HTML attachment was scrubbed... URL: From ihe.onwuka at gmail.com Wed Jun 17 00:34:58 2015 From: ihe.onwuka at gmail.com (Ihe Onwuka) Date: Wed, 17 Jun 2015 03:34:58 -0400 Subject: [xquery-talk] Izzit Bcos I is functional? In-Reply-To: <347EB4FA-A1CC-406A-9370-1160EDF47B64@me.com> References: <8DB1A973-6CBF-482E-85AD-AF91DF0F2369@me.com> <347EB4FA-A1CC-406A-9370-1160EDF47B64@me.com> Message-ID: I still think you are wildly over-estimating this. Here is the Purdue course. XQuery|Path gets 1 slide in 1 lecture https://www.cs.purdue.edu/homes/ake/cs348/XMLLec1.ppt At UCL the only time I recall XML being mentioned was in the context of setting up an Ant files in the 2nd year Programming course. Databases in general only merited 1/3 of a course http://www.cs.ucl.ac.uk/teaching_learning/syllabus/undergrad/2008_logic_and_database_theory/ There is a 3rd year Databases and MIS course which may well offer more the type of coverage you are suggesting but that is an elective. There is also this https://www.ucl.ac.uk/dis/taught/pg/INSTG037 that does the full XML monty, but that is a PG diploma course and it is not run out of CS. Ironically about 10 years ago UCL was the source of alot of XML related research especially for the financial markets. NB It is also a big part of the BCS Advanced Databases curriculum but again that course is not mandatory. On Tue, Jun 16, 2015 at 6:21 PM, daniela florescu wrote: > >> > I'm not sure about that. I know Harvard does but that is part of a web > programming course. > > > http://ocw.mit.edu/courses/electrical-engineering-and-computer-science/6-830-database-systems-fall-2010/readings/ > > http://ocw.mit.edu/courses/civil-and-environmental-engineering/1-264j-database-internet-and-systems-integration-technologies-fall-2013/lecture-notes-exercises/ > > > Look inside the slides of the database classes? you?ll see XQuery almost > everywhere (at the end of the class?). > > Especially that Stanford does it, and most database professors copy the > slides from Stanford. > > https://lagunita.stanford.edu/courses/DB/XPath/SelfPaced/courseware/ch-querying_xml/seq-vid-xquery_introduction/ > > (not that the Stanford professors understand much from XML and XQuery ? > but that?s a whole new discussion?) > > > > MIT doesn't, neither does either of the universities I went to. > > > That?s because Stonebreaker is there, and he wouldn?t be caught dead > teaching XML. I?ll see if I can make him change his mind > about JSON?. :-) > > The fact that sir TBL is in MIT too doesn?t help at all either, given the > fact that he was ?convinced? by a bunch of good willing people that XML is > evil. (and the semantic web will cure the hunger of the world and the > cancer for sure?) > > > > > What are they. Alot of the ones I have read aren't true and seem to be > based on a lack of knowledge about XML > > > I think I KNOW something about XML ? not that I enjoyed learning it, but I > HAD to :-) > > Want a quick list ? processing instructions, weirdo parsing rules that are > inherited from the 1950?s SGML, weirdo design > of namespaces, XML Schema anyone !? nillable anyone !? Some early design > of Xpath 1.0 (no reserved keywords, semantics of =) > I?ll stop here. > > Only those and that would stop me (as a database person) right there to > use XML as a format for data. > > > Y'see I reckon that if JSON was deployed in many of the domains where XML > is, it too would be hated. > > > Yes, but less. > > People would STILL have to face the fact that they cannot process JSON > with their beloved SQL?. but at least they wouldn?t > add insult to injury by adding the weird things I listed above. > > The bitter pill would be somehow easier to swallow. > > The database people accept with open arms JSOn right now because they > don?t REALLY understand what JSON is. > > Most of them still look at JSON as a nicer syntax then CSV?..they think > it?s flat, or a ?little? nested. > > The shock will hit them later on :-)))) > > Best regards > Dana > > > -------------- next part -------------- An HTML attachment was scrubbed... URL: From mike at saxonica.com Wed Jun 17 00:49:03 2015 From: mike at saxonica.com (Michael Kay) Date: Wed, 17 Jun 2015 08:49:03 +0100 Subject: [xquery-talk] Izzit Bcos I is functional? In-Reply-To: References: <8DB1A973-6CBF-482E-85AD-AF91DF0F2369@me.com> <347EB4FA-A1CC-406A-9370-1160EDF47B64@me.com> Message-ID: > > But you can pretty much model the semantic equivalent of JSON data without having to use a Schema, namespace, PI or any traverse any other of these treacherous terrains. Call it XML the Good Parts (Hmmmm where did I get that idea from). JSON is a very expensive over-reaction. There was no need to invent another format and then make in non-interoperable with XML. > > Actually, I don?t agree. The cost of doing simple things with XML, like configuration files, is far too high (because of all the other things it is capable of that you don?t need for such cases) and there was a very real need for something simpler for that kind of application. Restricting yourself to a subset of XML doesn?t greatly reduce the cost of writing code to process it, you still have to use the same APIs. Perhaps it could have been achieved with some kind of MicroXML, but as a community, we failed to deliver that. Michael Kay Saxonica From ihe.onwuka at gmail.com Wed Jun 17 04:22:54 2015 From: ihe.onwuka at gmail.com (Ihe Onwuka) Date: Wed, 17 Jun 2015 07:22:54 -0400 Subject: [xquery-talk] Izzit Bcos I is functional? In-Reply-To: References: <8DB1A973-6CBF-482E-85AD-AF91DF0F2369@me.com> <347EB4FA-A1CC-406A-9370-1160EDF47B64@me.com> Message-ID: On Wed, Jun 17, 2015 at 8:49 AM, Michael Kay wrote: > > > > But you can pretty much model the semantic equivalent of JSON data > without having to use a Schema, namespace, PI or any traverse any other of > these treacherous terrains. Call it XML the Good Parts (Hmmmm where did I > get that idea from). JSON is a very expensive over-reaction. There was no > need to invent another format and then make in non-interoperable with XML. > > > > > > Actually, I don?t agree. The cost of doing simple things with XML, like > configuration files, is far too high (because of all the other things it is > capable of that you don?t need for such cases) and there was a very real > need for something simpler for that kind of application. But that is not the same as saying that the replacement of XML with JSON as a format for generic data interchange was warranted, and making it not interoperable with XML was spectacularly short sighted. Now true that probably wasn't the intended use case. Sadly the lack of interoperability and the consequent inability to deploy a common set of tools is probably seen as a virtue in that community. > Restricting yourself to a subset of XML doesn?t greatly reduce the cost of > writing code to process it, you still have to use the same APIs. > > When they are done implementing everything with JSON they will find they will have something that will look just like XML, have most if not all of it's atttendant overheads but be even more expensive as it will have been re-implemented from scratch. I'm just waiting for the next straight faced instalment. What NOSQL needs now is a transformation language. -------------- next part -------------- An HTML attachment was scrubbed... URL: From adam.retter at googlemail.com Wed Jun 17 08:15:22 2015 From: adam.retter at googlemail.com (Adam Retter) Date: Wed, 17 Jun 2015 16:15:22 +0100 Subject: [xquery-talk] [show xqt] JSONiq and XQuery Development Tools In-Reply-To: References: Message-ID: > unfortunately, thanks to very poor decisions made by several organizations, and several individuals, > both the Zorba team as well as the 28msec team are dissolved. What you see now are just individual > efforts. > > That?s too bad, because they indeed made impressive contributions (JSONiq, Zorba, > the first NoSQL query processor running in the cloud, etc). > > But now the Zorba and 28msec team are both scattered all over the place. Dana, I am confused, can I assume you mean the original team that worked on Zorba and JSONiq etc? As having spoken to 28msec today, it seems they are very much alive and doing business! -- Adam Retter skype: adam.retter tweet: adamretter http://www.adamretter.org.uk From dflorescu at me.com Wed Jun 17 09:05:53 2015 From: dflorescu at me.com (daniela florescu) Date: Wed, 17 Jun 2015 09:05:53 -0700 Subject: [xquery-talk] [show xqt] JSONiq and XQuery Development Tools In-Reply-To: References: Message-ID: >> >> But now the Zorba and 28msec team are both scattered all over the place. > > Dana, I am confused, can I assume you mean the original team that > worked on Zorba and JSONiq etc? > As having spoken to 28msec today, it seems they are very much alive > and doing business! Adam, Only 3 developers remained out of 35 people, and not the people who wrote the core part of Zorba (and you should know by now how hard it is to write a good query processor - i?s not a walk in the park). I should know because I hired and trained each and every one of them. A piece of software of 1.5 millions lines of code, written over 8 years, with no team to maintain it and evolve it, is not ?alive? anymore. And it?s a very sad story, especially for me. Best Dana From dflorescu at me.com Wed Jun 17 09:26:55 2015 From: dflorescu at me.com (daniela florescu) Date: Wed, 17 Jun 2015 09:26:55 -0700 Subject: [xquery-talk] Izzit Bcos I is functional? In-Reply-To: References: <8DB1A973-6CBF-482E-85AD-AF91DF0F2369@me.com> <347EB4FA-A1CC-406A-9370-1160EDF47B64@me.com> Message-ID: <6B37B1BA-48D1-4AEB-90F3-397B2EB54CA4@me.com> > On Jun 17, 2015, at 12:49 AM, Michael Kay wrote: > >> >> But you can pretty much model the semantic equivalent of JSON data without having to use a Schema, namespace, PI or any traverse any other of these treacherous terrains. Call it XML the Good Parts (Hmmmm where did I get that idea from). JSON is a very expensive over-reaction. There was no need to invent another format and then make in non-interoperable with XML. >> >> > > Actually, I don?t agree. The cost of doing simple things with XML, like configuration files, is far too high (because of all the other things it is capable of that you don?t need for such cases) and there was a very real need for something simpler for that kind of application. Restricting yourself to a subset of XML doesn?t greatly reduce the cost of writing code to process it, you still have to use the same APIs. Perhaps it could have been achieved with some kind of MicroXML, but as a community, we failed to deliver that. I agree with Michael here. There was a need, and the world satisfied it. That?s all. But in any case, the world could not care less about what WE think at this point. Both XML and JSON are here to stay. There are good reasons for each one of them. So, ideally, in the future: (1) the two technologies will not be developed completely independently (users will need to deal with both in the same time, so that would be a terribly expensive exercise for the industry as a whole) and (2) JSON people will learn something from what has been developed in the XML world , and they won?t start from scratch , aka from were XML started in 1996. We can dream, can?t we !?? :-) Best, Dana From christian.gruen at gmail.com Wed Jun 17 09:30:36 2015 From: christian.gruen at gmail.com (=?UTF-8?Q?Christian_Gr=C3=BCn?=) Date: Wed, 17 Jun 2015 18:30:36 +0200 Subject: [xquery-talk] [show xqt] JSONiq and XQuery Development Tools In-Reply-To: References: Message-ID: Hi William, the Github integration is pretty cool! Thanks for updating everyone. All the best, Christian On Mon, Jun 15, 2015 at 11:53 PM, William Candillon wrote: > Dear gang, > > Development tools like Github and CircleCI have completely transformed > our software engineering day to day tasks and we wanted to share with > you some of the work we have done in order to integrate JSONiq and > XQuery with these modern development workflows. The story is available > at http://www.28.io/blog/jsoniq-development-tools/ > > Kind regards, > > William > _______________________________________________ > talk at x-query.com > http://x-query.com/mailman/listinfo/talk From ihe.onwuka at gmail.com Wed Jun 17 09:52:08 2015 From: ihe.onwuka at gmail.com (Ihe Onwuka) Date: Wed, 17 Jun 2015 12:52:08 -0400 Subject: [xquery-talk] Izzit Bcos I is functional? In-Reply-To: <6B37B1BA-48D1-4AEB-90F3-397B2EB54CA4@me.com> References: <8DB1A973-6CBF-482E-85AD-AF91DF0F2369@me.com> <347EB4FA-A1CC-406A-9370-1160EDF47B64@me.com> <6B37B1BA-48D1-4AEB-90F3-397B2EB54CA4@me.com> Message-ID: On Wed, Jun 17, 2015 at 12:26 PM, daniela florescu wrote: > > > On Jun 17, 2015, at 12:49 AM, Michael Kay wrote: > > > >> > >> But you can pretty much model the semantic equivalent of JSON data > without having to use a Schema, namespace, PI or any traverse any other of > these treacherous terrains. Call it XML the Good Parts (Hmmmm where did I > get that idea from). JSON is a very expensive over-reaction. There was no > need to invent another format and then make in non-interoperable with XML. > >> > >> > > > > Actually, I don?t agree. The cost of doing simple things with XML, like > configuration files, is far too high (because of all the other things it is > capable of that you don?t need for such cases) and there was a very real > need for something simpler for that kind of application. Restricting > yourself to a subset of XML doesn?t greatly reduce the cost of writing code > to process it, you still have to use the same APIs. Perhaps it could have > been achieved with some kind of MicroXML, but as a community, we failed to > deliver that. > > I agree with Michael here. There was a need, and the world satisfied it. > That?s all. > > But in any case, the world could not care less about what WE think at this > point. > > Both XML and JSON are here to stay. There are good reasons for each one of > them. > > So, ideally, in the future: > > (1) the two technologies will not be developed completely independently > (users will need to deal with both in the > same time, so that would be a terribly expensive exercise for the > industry as a whole) and > > (2) JSON people will learn something from what has been developed in the > XML world , and they won?t start from scratch , aka > from were XML started in 1996. > > We can dream, can?t we !?? :-) > > Well I have no particular beef with the format itself other than the lack of tools. Now that we have JSONiq I am less bothered about that (assuming one has the opportunity to use it). I agree with your ideals (1 and 2 above) too but it should be evident from the sociology of the JSON community that these things are not going to happen. You have people putting stuff in JSON databases without thinking how are we going to get it out and coming up with half-assed solutions for doing so. This is not progress and this is not good. -------------- next part -------------- An HTML attachment was scrubbed... URL: From mike at saxonica.com Wed Jun 17 10:02:37 2015 From: mike at saxonica.com (Michael Kay) Date: Wed, 17 Jun 2015 18:02:37 +0100 Subject: [xquery-talk] Izzit Bcos I is functional? In-Reply-To: References: <8DB1A973-6CBF-482E-85AD-AF91DF0F2369@me.com> <347EB4FA-A1CC-406A-9370-1160EDF47B64@me.com> <6B37B1BA-48D1-4AEB-90F3-397B2EB54CA4@me.com> Message-ID: > > I agree with your ideals (1 and 2 above) too but it should be evident from the sociology of the JSON community that these things are not going to happen. You have people putting stuff in JSON databases without thinking how are we going to get it out and coming up with half-assed solutions for doing so. This is not progress and this is not good. JSON wasn?t designed for databases any more than XML was. Both were designed for messages. XML at least was designed for long-life messages, while JSON was designed for throwaway messages. I think that doing anything more with JSON than reading and writing it is asking for trouble, unless and until it acquires all the layers on top that will remove its attractive simplicity. Michael Kay Saxonica > > From dflorescu at me.com Wed Jun 17 10:10:02 2015 From: dflorescu at me.com (daniela florescu) Date: Wed, 17 Jun 2015 10:10:02 -0700 Subject: [xquery-talk] Izzit Bcos I is functional? In-Reply-To: References: <8DB1A973-6CBF-482E-85AD-AF91DF0F2369@me.com> <347EB4FA-A1CC-406A-9370-1160EDF47B64@me.com> <6B37B1BA-48D1-4AEB-90F3-397B2EB54CA4@me.com> Message-ID: <287CE1ED-4386-4488-A7D5-69B822A74BA8@me.com> > > > Well I have no particular beef with the format itself other than the lack of tools. Now that we have JSONiq I am less bothered about that (assuming one has the opportunity to use it). Well, JSONiq is only implemented by Zorba (and another implementation in IBM middle tier). And Zorba is a dead piece of code. So, having ?JSONiq? as a specification?...doesn?t mean much, isn?t it ? Unless is adopted by other XQuery processors. (which I cross fingers they will do?) > > I agree with your ideals (1 and 2 above) too but it should be evident from the sociology of the JSON community that these things are not going to happen. Well? nope. Not clear at all. I started working on query languages for XML in 1996. Same as now, the whole industry was for using SQL for querying XML ? including ME, I had a system running, a bunch of PhD students working on that, etc. The decision of the W3C NOT to use SQL for that purpose was taken in 2001. 5 years later. You know how many query languages have been proposed during those 5 years ? Tons: UnQL, XML-QL, etc, etc. Those things need TIME. People need to try SQL first, before they realize it?s a dead end. MarkLogic needs to try Javascript on the server side, before realizes that?s a dead end. The industry moves MUCH, MUCH slower that one can expect. > You have people putting stuff in JSON databases without thinking how are we going to get it out and coming up with half-assed solutions for doing so. This is not progress and this is not good. > Again, patience is golden :-) There will be tons of those half baked solutions (MongoDB?s JSON query language, CouchDB?s..), before people realize that this is not going anywhere?.some of those databases will be acquired, never to be seen again, them or their query languages?.etc. =============== Honestly, I give it 5 years for the JSON query languages to stabilize. 2020 would be my estimate. Even later if there is a database bubble crash in the meantime. Best Dana -------------- next part -------------- An HTML attachment was scrubbed... URL: From dflorescu at me.com Wed Jun 17 10:21:19 2015 From: dflorescu at me.com (daniela florescu) Date: Wed, 17 Jun 2015 10:21:19 -0700 Subject: [xquery-talk] Izzit Bcos I is functional? In-Reply-To: References: <8DB1A973-6CBF-482E-85AD-AF91DF0F2369@me.com> <347EB4FA-A1CC-406A-9370-1160EDF47B64@me.com> <6B37B1BA-48D1-4AEB-90F3-397B2EB54CA4@me.com> Message-ID: . I think that doing anything more with JSON than reading and writing it is asking for trouble, Huh, Michael, I am not sure I agree with you. The same way the world expressed the discomfort with the complexity of XML for a LOOOONG time, before, being unheard, they went ahead and build something to avoid the discomfort? (aka JSON)?... ?.the same way the wold today expresses a HUGE need to actually do MORE with JSON then reading and writing. Aka sophisticated querying and updating. Ignore that huge need? and they?ll come up with SOME solution to satisfy for their need?.. And as Ihe said, I?m not sure that solution will be pretty to look at ?. will be a half baked one. That seems like burying the head in the sand, pretending not to see what the industry needs. (and yes, all technologies start simple at the beginning, until they are not anymore ?that?s Ok) Dana From ihe.onwuka at gmail.com Wed Jun 17 10:47:23 2015 From: ihe.onwuka at gmail.com (Ihe Onwuka) Date: Wed, 17 Jun 2015 13:47:23 -0400 Subject: [xquery-talk] Izzit Bcos I is functional? In-Reply-To: <287CE1ED-4386-4488-A7D5-69B822A74BA8@me.com> References: <8DB1A973-6CBF-482E-85AD-AF91DF0F2369@me.com> <347EB4FA-A1CC-406A-9370-1160EDF47B64@me.com> <6B37B1BA-48D1-4AEB-90F3-397B2EB54CA4@me.com> <287CE1ED-4386-4488-A7D5-69B822A74BA8@me.com> Message-ID: I wish I could agree with you but I think it is different this time. Couple of days ago I saw an update on the Scala group, somebody saying that the upsurge of interest in Spark could be the killer app that catapults Scala into the mainstream. Much as I would like to see it happen for a functional programming language, everybody except Scala dev's knows that the language is just too damn complicated to ever go mainstream. Even if this criticism could not be levelled at Scala, suspend disbelief for a minute and accept that Spark is indeed this killer app, alas it is not going to catapult Scala anywhere because the people employed in that domain will demand that it is delivered in Python and/or R and the people that hire them will acquiesce and say verily so. In the 1990's the bell tolled for the Cobol mainframe programmer. It's not like that now. On the JVM, the message is not adapt to Scala/Clojure or die it's don't worry mate stick to what you know and Java 8 will bail us out. The IT industry has presided over the widepsread and rudimentary amateurisation of software development. So when the right solution comes along it encounters a rearguard resistance from people who depend on the technological status quo for their jobs and who roll out their stock in trade objections (performance usually high up on the list). It's not like 1990 when mainframe programmers were saying I need to learn Unix/C and an Rdb and/or 5 years later I need to learn Java and what they thought to be OOP. Hence 20 years later we are still talking Java, Javascript and SQL and 5 years on they will be looking at Java 10 and still writing Fortran with classes. The industry goes along with it because they can continue to source bodies cheaply. I absolutely agree that what you said should be the way it is goes but I don't see how it is going to happen with the vested agenda's at play. On Wed, Jun 17, 2015 at 1:10 PM, daniela florescu wrote: > >> > Well I have no particular beef with the format itself other than the lack > of tools. Now that we have JSONiq I am less bothered about that (assuming > one has the opportunity to use it). > > > Well, JSONiq is only implemented by Zorba (and another implementation in > IBM middle tier). > > And Zorba is a dead piece of code. > > So, having ?JSONiq? as a specification?...doesn?t mean much, isn?t it ? > Unless is adopted by other XQuery processors. > (which I cross fingers they will do?) > > > > I agree with your ideals (1 and 2 above) too but it should be evident from > the sociology of the JSON community that these things are not going to > happen. > > > Well? nope. Not clear at all. > > I started working on query languages for XML in 1996. > > Same as now, the whole industry was for using SQL for querying XML ? > including ME, I had > a system running, a bunch of PhD students working on that, etc. > > The decision of the W3C NOT to use SQL for that purpose was taken in 2001. > > > 5 years later. You know how many query languages have been proposed during > those 5 years ? > Tons: UnQL, XML-QL, etc, etc. > > Those things need TIME. > > People need to try SQL first, before they realize it?s a dead end. > > MarkLogic needs to try Javascript on the server side, before realizes > that?s a dead end. > > The industry moves MUCH, MUCH slower that one can expect. > > > You have people putting stuff in JSON databases without thinking how are > we going to get it out and coming up with half-assed solutions for doing > so. This is not progress and this is not good. > > > Again, patience is golden :-) > > There will be tons of those half baked solutions (MongoDB?s JSON query > language, CouchDB?s..), before people realize that this > is not going anywhere?.some of those databases will be acquired, never to > be seen again, them or their query languages?.etc. > > =============== > > Honestly, I give it 5 years for the JSON query languages to stabilize. > 2020 would be my estimate. Even later if there is a database bubble crash > in the > meantime. > > Best > Dana > > > > > > > -------------- next part -------------- An HTML attachment was scrubbed... URL: From dflorescu at me.com Wed Jun 17 11:01:51 2015 From: dflorescu at me.com (daniela florescu) Date: Wed, 17 Jun 2015 11:01:51 -0700 Subject: [xquery-talk] Izzit Bcos I is functional? In-Reply-To: References: <8DB1A973-6CBF-482E-85AD-AF91DF0F2369@me.com> <347EB4FA-A1CC-406A-9370-1160EDF47B64@me.com> <6B37B1BA-48D1-4AEB-90F3-397B2EB54CA4@me.com> <287CE1ED-4386-4488-A7D5-69B822A74BA8@me.com> Message-ID: Depends what you call ?mainstream? (or successful) for a programming language?... Is it calculated in (1) #developers ? Or is it calculated in (2) #instances running it ? Or is it calculated in (3) #millions of dollars revenue from it ? ========== A. If (2), the Scala will be a HUGE success ? because of Spark. IBM just offered to put more then 3000 (!! and that?s a LARGE number) of developers on Spark. Cloudera just seemed to have dumped Hadoop to become a Spark reseller. So?. in terms on number of instances running it, Scala WILL be a huge success. (how is Tyrpesafe, the company that does the Scala compiler making money ? that?s another story?) B. If it is (3) ? millions of $$$, I can probably give you the most ?cost-effective? programming language in the world. https://en.wikipedia.org/wiki/K_(programming_language) It?s used for high end financial systems, and a copy of this compiler costs about $1M. Not bad ?. Number of developers writing code in this language ? probably in the 100s?. C. If it in terms of (1) number of developers ?. are we really sure it matters ? Who makes money today out of Javascript ? (arguably the most popular programming language ?) Nobody. ====================== So, which one do you care about ? I care about (2) and (3). Best Dana > On Jun 17, 2015, at 10:47 AM, Ihe Onwuka wrote: > > I wish I could agree with you but I think it is different this time. > > Couple of days ago I saw an update on the Scala group, somebody saying that the upsurge of interest in Spark could be the killer app that catapults Scala into the mainstream. Much as I would like to see it happen for a functional programming language, everybody except Scala dev's knows that the language is just too damn complicated to ever go mainstream. > > Even if this criticism could not be levelled at Scala, suspend disbelief for a minute and accept that Spark is indeed this killer app, alas it is not going to catapult Scala anywhere because the people employed in that domain will demand that it is delivered in Python and/or R and the people that hire them will acquiesce and say verily so. > > In the 1990's the bell tolled for the Cobol mainframe programmer. It's not like that now. On the JVM, the message is not adapt to Scala/Clojure or die it's don't worry mate stick to what you know and Java 8 will bail us out. > > The IT industry has presided over the widepsread and rudimentary amateurisation of software development. So when the right solution comes along it encounters a rearguard resistance from people who depend on the technological status quo for their jobs and who roll out their stock in trade objections (performance usually high up on the list). It's not like 1990 when mainframe programmers were saying I need to learn Unix/C and an Rdb and/or 5 years later I need to learn Java and what they thought to be OOP. Hence 20 years later we are still talking Java, Javascript and SQL and 5 years on they will be looking at Java 10 and still writing Fortran with classes. The industry goes along with it because they can continue to source bodies cheaply. > > I absolutely agree that what you said should be the way it is goes but I don't see how it is going to happen with the vested agenda's at play. > > > > > > > On Wed, Jun 17, 2015 at 1:10 PM, daniela florescu > wrote: >> >> >> Well I have no particular beef with the format itself other than the lack of tools. Now that we have JSONiq I am less bothered about that (assuming one has the opportunity to use it). > > Well, JSONiq is only implemented by Zorba (and another implementation in IBM middle tier). > > And Zorba is a dead piece of code. > > So, having ?JSONiq? as a specification?...doesn?t mean much, isn?t it ? Unless is adopted by other XQuery processors. > (which I cross fingers they will do?) > > >> >> I agree with your ideals (1 and 2 above) too but it should be evident from the sociology of the JSON community that these things are not going to happen. > > Well? nope. Not clear at all. > > I started working on query languages for XML in 1996. > > Same as now, the whole industry was for using SQL for querying XML ? including ME, I had > a system running, a bunch of PhD students working on that, etc. > > The decision of the W3C NOT to use SQL for that purpose was taken in 2001. > > 5 years later. You know how many query languages have been proposed during those 5 years ? > Tons: UnQL, XML-QL, etc, etc. > > Those things need TIME. > > People need to try SQL first, before they realize it?s a dead end. > > MarkLogic needs to try Javascript on the server side, before realizes that?s a dead end. > > The industry moves MUCH, MUCH slower that one can expect. > > >> You have people putting stuff in JSON databases without thinking how are we going to get it out and coming up with half-assed solutions for doing so. This is not progress and this is not good. >> > > Again, patience is golden :-) > > There will be tons of those half baked solutions (MongoDB?s JSON query language, CouchDB?s..), before people realize that this > is not going anywhere?.some of those databases will be acquired, never to be seen again, them or their query languages?.etc. > > =============== > > Honestly, I give it 5 years for the JSON query languages to stabilize. 2020 would be my estimate. Even later if there is a database bubble crash in the > meantime. > > Best > Dana > > > > > > > -------------- next part -------------- An HTML attachment was scrubbed... URL: From dflorescu at me.com Wed Jun 17 13:07:22 2015 From: dflorescu at me.com (daniela florescu) Date: Wed, 17 Jun 2015 13:07:22 -0700 Subject: [xquery-talk] functional languages for data processing Message-ID: <73A46069-33F3-472C-85C3-1AFE83EF23C3@me.com> Ihe, your question started a long thread, that went beyond your original question: is the lack of (greater) adoption of XQuery caused by the fact that it is a functional language ? I told you my opinion that why this is NOT the case. (I still believe that XQuery wasn?t more successful so far simply because there is no money in the XML market? it?s as simple as that.) In fact, I would go much further, and assert here that a data processing language (the processing being complex and the data being complex) pretty much HAS to be functional in nature. Here are my three reasons of why I think so: 1. Functional languages have high expressive power (usually Turing complete) ----------------------------------------------------------------------------------------------------------- Of course, it depends on what the use cases are, but if you talk about complex data processing, at some point you need serious expressive power. For complex processing you need: recursive functions and hight order functions. Note: that?s where SQL fails short. Expressive power is too limited to do complex processing (e.g. serious ETL on semi-structured data) 2. Functional languages are extremely productive. ------------------------------------------------------------------- Any good developer who developed serious programs in a well designed functional language will hardly come back to the lack of productivity of an imperative language. I won?t. E.g. Try to write a simple program that scans a JSON dataset and creates a JSON schema out of it in: JSOniq and Javascript. I did it in JSONiq in 2 hours. Not in a million years can the best developer of Javascript do that in 2 hours. The increase in productivity from an imperative programming language to a functional language is 10X or more, in my humble experience. Note: that?s where imperative languages fail short. 3. Functional languages are optimizable. -------------------------------------------------------- Optimizability (e.g. automatic parallelization, automatic detection and update of indexes, etc) is a fundamental requirement for a data processing language. Data flow analysis is the bread and butter of any query optimizer. Data flow analysis is easily doable on a functional language. It?s almost impossible on an imperative language. Note: again, that?s where imperative languages fail short. 4. Functional languages are easier to generate automatically by tools ?????????????????????????????????????????????? In 2015 we shouldn?t be programming as much from scratch, as we should rely more and more on high level tools to generate the programs for us. It?s much easer to make a tool generate a functional program rather then an imperative one. E.G. try to write a graphical mapping tool, where you drag and drop lines between two schemas and automatically the data conversion program gets automatically generated. I can generate JSOniq easily. I am not sure I can generate Javascript easily. Note: again, here the imperative programming languages fail short. ================ Now, not everything is pink in the functional programming languages land. The main disadvantages I saw in my life are: 1. Yes, they requires higher programming skills. 2. Debugging is much more difficult. (but that?s true for SQL too) 3. In general programs are much more terse, and hence, harder to read, and hence, harder to maintain. But overall, the advantages will win over the disadvantages in the long term, I think. In fact, honestly, I don?t see any other solution to complex data processing of large volume of complex data. But more then happy to explore the possible other options?. Best regards Dana From ihe.onwuka at gmail.com Thu Jun 18 00:07:13 2015 From: ihe.onwuka at gmail.com (Ihe Onwuka) Date: Thu, 18 Jun 2015 03:07:13 -0400 Subject: [xquery-talk] Izzit Bcos I is functional? In-Reply-To: References: <8DB1A973-6CBF-482E-85AD-AF91DF0F2369@me.com> <347EB4FA-A1CC-406A-9370-1160EDF47B64@me.com> <6B37B1BA-48D1-4AEB-90F3-397B2EB54CA4@me.com> <287CE1ED-4386-4488-A7D5-69B822A74BA8@me.com> Message-ID: On Wed, Jun 17, 2015 at 2:01 PM, daniela florescu wrote: > Depends what you call ?mainstream? (or successful) for a programming > language?... > > Is it calculated in (1) #developers ? > > Or is it calculated in (2) #instances running it ? > > Or is it calculated in (3) #millions of dollars revenue from it ? > > ========== > > A. If (2), the Scala will be a HUGE success ? because of Spark. > > IBM just offered to put more then 3000 (!! and that?s a LARGE number) of > developers on Spark. > > Yes on Spark. Not Scala. Spark. Cloudera just seemed to have dumped Hadoop to become a Spark reseller. > > So?. in terms on number of instances running it, Scala WILL be a huge > success. > > Spark supports Java, Python and Scala there is an open source SparkR. Now let me remind you of your opening gambit in the discussion. ************************************************************ "Even though, because it?s functional, it will be restricted to be used only by people with CS degrees, and not by random Joes and Janes who write web sites. The way it is designed it is intended to make a population of educated programmers ETREMELY efficient, and NOT to increase the total number of developers to hundreds of millions. When being reproached this fact in the past, my answer was always the same: building a database application should not be for the uneducated. It?s like building a 30 story building, you don?t do that without a architect ad a structural engineer. E.g. if you want to eradicate a grave neurological disease, you don?t lower the bar to allow anyone from the street to perform a neurosurgery, you just make the existing neurosurgents more productive." ************************************************************* Now you tell me what you think is going to happen. (how is Tyrpesafe, the company that does the Scala compiler making money ? > that?s another story?) > > B. If it is (3) ? millions of $$$, I can probably give you the most > ?cost-effective? programming language in the world. > > https://en.wikipedia.org/wiki/K_(programming_language) > > It?s used for high end financial systems, and a copy of this compiler > costs about $1M. > > Not bad ?. > > Number of developers writing code in this language ? probably in the 100s?. > > C. If it in terms of (1) number of developers ?. are we really sure it > matters ? > > Yes. > Who makes money today out of Javascript ? (arguably the most popular > programming language ?) > > Nobody. > > Loads of people make a living out of it. > ====================== > > So, which one do you care about ? > > I care about (2) and (3). > > If the answer were 2 XML would be deemed to be a raging success. But of XQuery's woes you said "So?. I think it is simply a question of ?. there is no market for XML ??(aka no enough MONEY in the market)." Similarly having loads of instances running Scala has to translate in some meaningful way (beyond making money for Databricks and co). Show me the money. > On Jun 17, 2015, at 10:47 AM, Ihe Onwuka wrote: > > I wish I could agree with you but I think it is different this time. > > Couple of days ago I saw an update on the Scala group, somebody saying > that the upsurge of interest in Spark could be the killer app that > catapults Scala into the mainstream. Much as I would like to see it happen > for a functional programming language, everybody except Scala dev's knows > that the language is just too damn complicated to ever go mainstream. > > Even if this criticism could not be levelled at Scala, suspend disbelief > for a minute and accept that Spark is indeed this killer app, alas it is > not going to catapult Scala anywhere because the people employed in that > domain will demand that it is delivered in Python and/or R and the people > that hire them will acquiesce and say verily so. > > In the 1990's the bell tolled for the Cobol mainframe programmer. It's not > like that now. On the JVM, the message is not adapt to Scala/Clojure or die > it's don't worry mate stick to what you know and Java 8 will bail us out. > > The IT industry has presided over the widepsread and rudimentary > amateurisation of software development. So when the right solution comes > along it encounters a rearguard resistance from people who depend on the > technological status quo for their jobs and who roll out their stock in > trade objections (performance usually high up on the list). It's not like > 1990 when mainframe programmers were saying I need to learn Unix/C and an > Rdb and/or 5 years later I need to learn Java and what they thought to be > OOP. Hence 20 years later we are still talking Java, Javascript and SQL and > 5 years on they will be looking at Java 10 and still writing Fortran with > classes. The industry goes along with it because they can continue to > source bodies cheaply. > > I absolutely agree that what you said should be the way it is goes but I > don't see how it is going to happen with the vested agenda's at play. > > > > > > > On Wed, Jun 17, 2015 at 1:10 PM, daniela florescu > wrote: > >> >>> >> Well I have no particular beef with the format itself other than the lack >> of tools. Now that we have JSONiq I am less bothered about that (assuming >> one has the opportunity to use it). >> >> >> Well, JSONiq is only implemented by Zorba (and another implementation in >> IBM middle tier). >> >> And Zorba is a dead piece of code. >> >> So, having ?JSONiq? as a specification?...doesn?t mean much, isn?t it ? >> Unless is adopted by other XQuery processors. >> (which I cross fingers they will do?) >> >> >> >> I agree with your ideals (1 and 2 above) too but it should be evident >> from the sociology of the JSON community that these things are not going to >> happen. >> >> >> Well? nope. Not clear at all. >> >> I started working on query languages for XML in 1996. >> >> Same as now, the whole industry was for using SQL for querying XML ? >> including ME, I had >> a system running, a bunch of PhD students working on that, etc. >> >> The decision of the W3C NOT to use SQL for that purpose was taken in >> 2001. >> >> 5 years later. You know how many query languages have been proposed >> during those 5 years ? >> Tons: UnQL, XML-QL, etc, etc. >> >> Those things need TIME. >> >> People need to try SQL first, before they realize it?s a dead end. >> >> MarkLogic needs to try Javascript on the server side, before realizes >> that?s a dead end. >> >> The industry moves MUCH, MUCH slower that one can expect. >> >> >> You have people putting stuff in JSON databases without thinking how are >> we going to get it out and coming up with half-assed solutions for doing >> so. This is not progress and this is not good. >> >> >> Again, patience is golden :-) >> >> There will be tons of those half baked solutions (MongoDB?s JSON query >> language, CouchDB?s..), before people realize that this >> is not going anywhere?.some of those databases will be acquired, never >> to be seen again, them or their query languages?.etc. >> >> =============== >> >> Honestly, I give it 5 years for the JSON query languages to stabilize. >> 2020 would be my estimate. Even later if there is a database bubble crash >> in the >> meantime. >> >> Best >> Dana >> >> >> >> >> >> >> > > -------------- next part -------------- An HTML attachment was scrubbed... URL: From mike at saxonica.com Thu Jun 18 02:47:26 2015 From: mike at saxonica.com (Michael Kay) Date: Thu, 18 Jun 2015 10:47:26 +0100 Subject: [xquery-talk] Izzit Bcos I is functional? In-Reply-To: References: <8DB1A973-6CBF-482E-85AD-AF91DF0F2369@me.com> <347EB4FA-A1CC-406A-9370-1160EDF47B64@me.com> <6B37B1BA-48D1-4AEB-90F3-397B2EB54CA4@me.com> <287CE1ED-4386-4488-A7D5-69B822A74BA8@me.com> Message-ID: <1F43C44E-004C-4409-864B-8B97CB1B3172@saxonica.com> > > "Even though, because it?s functional, it will be restricted to be used only by people with CS degrees, and not by > random Joes and Janes who write web sites. Many people have reported that to use XSLT successfully, you either have to have a CS degree, or you have to be a non-programmer. The people who struggle are those who want it to be like the only programming language they have used in the past. Functional programming comes much more naturally to non-programmers than to those whose minds have been warped by imperative programming. Having said that, we do our best in XSLT to hide the technicalities: a non-programmer isn?t going to think of the apply-templates mechanism as a recursive descent with polymorphic function despatch, and they aren?t going to think of xsl:iterate as a fold operation taking a function as its argument. Michael Kay Saxonica -------------- next part -------------- An HTML attachment was scrubbed... URL: From ihe.onwuka at gmail.com Thu Jun 18 03:23:12 2015 From: ihe.onwuka at gmail.com (Ihe Onwuka) Date: Thu, 18 Jun 2015 06:23:12 -0400 Subject: [xquery-talk] Izzit Bcos I is functional? In-Reply-To: <1F43C44E-004C-4409-864B-8B97CB1B3172@saxonica.com> References: <8DB1A973-6CBF-482E-85AD-AF91DF0F2369@me.com> <347EB4FA-A1CC-406A-9370-1160EDF47B64@me.com> <6B37B1BA-48D1-4AEB-90F3-397B2EB54CA4@me.com> <287CE1ED-4386-4488-A7D5-69B822A74BA8@me.com> <1F43C44E-004C-4409-864B-8B97CB1B3172@saxonica.com> Message-ID: On Thu, Jun 18, 2015 at 5:47 AM, Michael Kay wrote: > > "Even though, because it?s functional, it will be restricted to be used > only by people with CS degrees, and not by > random Joes and Janes who write web sites. > > > > Many people have reported that to use XSLT successfully, you either have > to have a CS degree, or you have to be a non-programmer. > I learnt XSLT before my CS degree, my conceptual understanding hasn't changed, but back then I would not have been able to grok you the recursion sometimes needed for things like string handling in XSLT 1.0. All a degree does in this context is increase the likelihood that you have been exposed to some sort of functional programming and I believe it is still possible to get through most degree programmes without encountering it. > The people who struggle are those who want it to be like the only > programming language they have used in the past. Functional programming > comes much more naturally to non-programmers than to those whose minds have > been warped by imperative programming. > > True. This is the dilemma for Scala (or should be). They always want people already steeped in the Java ecosystem and that makes sense but the same people come from the population that will have the most difficulty adapting to Functional programming and that makes no sense. > Having said that, we do our best in XSLT to hide the technicalities: a > non-programmer isn?t going to think of the apply-templates mechanism as a > recursive descent with polymorphic function despatch, and they aren?t going > to think of xsl:iterate as a fold operation taking a function as its > argument. > > It's how it's presented to the experienced programmer that is the issue. My metaphor is that an XSLT processor converts an XML document to a stream of events which you have to write handlers for in the form of template rules. However that only covers XSLT's push paradigm and although I'd like to say push is all you need I don't think it's true, sometimes you have to pull. -------------- next part -------------- An HTML attachment was scrubbed... URL: From ihe.onwuka at gmail.com Thu Jun 18 03:39:06 2015 From: ihe.onwuka at gmail.com (Ihe Onwuka) Date: Thu, 18 Jun 2015 06:39:06 -0400 Subject: [xquery-talk] Izzit Bcos I is functional? In-Reply-To: References: <8DB1A973-6CBF-482E-85AD-AF91DF0F2369@me.com> <347EB4FA-A1CC-406A-9370-1160EDF47B64@me.com> <6B37B1BA-48D1-4AEB-90F3-397B2EB54CA4@me.com> <287CE1ED-4386-4488-A7D5-69B822A74BA8@me.com> <1F43C44E-004C-4409-864B-8B97CB1B3172@saxonica.com> Message-ID: On Thu, Jun 18, 2015 at 6:23 AM, Ihe Onwuka wrote: > > >> It's how it's presented to the experienced programmer that is the issue. > My metaphor is that an XSLT processor converts an XML document to a stream > of events which you have to write handlers for in the form of template > rules. However that only covers XSLT's push paradigm and although I'd like > to say push is all you need I don't think it's true, sometimes you have to > pull. > I should have added that the processor has built in event handlers so you only need to write handlers for required functionality that is at variance with the default for that node type. A non-programmer has no problem accepting this but it is alien to the experienced programmer for processing that he has not explicitly controlled to occur and it screws them up because they like to step through code with debuggers. In fact that is often their prime modus operandi -------------- next part -------------- An HTML attachment was scrubbed... URL: From pavel.velikhov at gmail.com Thu Jun 18 03:49:56 2015 From: pavel.velikhov at gmail.com (Pavel Velikhov) Date: Thu, 18 Jun 2015 13:49:56 +0300 Subject: [xquery-talk] Izzit Bcos I is functional? In-Reply-To: References: <8DB1A973-6CBF-482E-85AD-AF91DF0F2369@me.com> <347EB4FA-A1CC-406A-9370-1160EDF47B64@me.com> <6B37B1BA-48D1-4AEB-90F3-397B2EB54CA4@me.com> <287CE1ED-4386-4488-A7D5-69B822A74BA8@me.com> <1F43C44E-004C-4409-864B-8B97CB1B3172@saxonica.com> Message-ID: <2080249F-7954-4BC0-8E57-1BF89B69696B@gmail.com> Well, SQL is a functional language too (if you ignore the various sublanguages for stored procedures). And I have seem many students struggle with it. They are used to assigning values in loops and the whole concept of SQL is alien to them. But in the end all experienced engineers master it without a problem. (Even though the % of people that can use GroupBy/Having, Window, Cube and outerjoins is tiny). At some point the understand that they *have* to learn, and that just does it. > On 18 Jun 2015, at 13:39, Ihe Onwuka wrote: > > > > On Thu, Jun 18, 2015 at 6:23 AM, Ihe Onwuka > wrote: > > > It's how it's presented to the experienced programmer that is the issue. My metaphor is that an XSLT processor converts an XML document to a stream of events which you have to write handlers for in the form of template rules. However that only covers XSLT's push paradigm and although I'd like to say push is all you need I don't think it's true, sometimes you have to pull. > > I should have added that the processor has built in event handlers so you only need to write handlers for required functionality that is at variance with the default for that node type. > > A non-programmer has no problem accepting this but it is alien to the experienced programmer for processing that he has not explicitly controlled to occur and it screws them up because they like to step through code with debuggers. In fact that is often their prime modus operandi > _______________________________________________ > talk at x-query.com > http://x-query.com/mailman/listinfo/talk ? ?????????, ????? ??????? pavel.velikhov at gmail.com -------------- next part -------------- An HTML attachment was scrubbed... URL: From dflorescu at me.com Thu Jun 18 09:23:24 2015 From: dflorescu at me.com (daniela florescu) Date: Thu, 18 Jun 2015 09:23:24 -0700 Subject: [xquery-talk] Izzit Bcos I is functional? In-Reply-To: References: <8DB1A973-6CBF-482E-85AD-AF91DF0F2369@me.com> <347EB4FA-A1CC-406A-9370-1160EDF47B64@me.com> <6B37B1BA-48D1-4AEB-90F3-397B2EB54CA4@me.com> <287CE1ED-4386-4488-A7D5-69B822A74BA8@me.com> Message-ID: Ihe, the discussion starts to take too many threads for my brain the be able to wrap around it. But I?ll answer some of the questions that came up in your emails, one by one. 1. Scala WILL be used. Spark is implemented in Scala. So there will be millions of Scala instances running. If ... Typesafe (the company who does the Scala compiler) will make money out of this: I would say no. I followed their business plan?. and honestly, I am not impressed. I think they have very good engineers but no clue how to turn this into money. And that?s unfortunate because they COULD make money out of it, 2. About what?s more important for the success of a programming language: #installations, # developers or #millions$$. Well, it?s subjective. Honestly, all I care is that (a) there is an important problem that people need to solve and (b) that programming language is the best tool to solve that problem. According to this, yes, XSLT and XQuery do the job. And, also, I don?t think either XSLT or XQuery or JSOniq are the kind of languages that increase the number of developers to millions. 3. The idea that we need ?millions of developers? gets me crazy. No, we don?t. We just need smarter people with better tools. (A good tool like Oxygen has more effect on the success of XQuery then anything we cold have done to design it better?.) E.g. today there was an article that made the tour of the Internet: "US needs 5 million data scientists by 2017.? Now contrast that with the little experiment that I was running recently: here is the simplest statistical problem you can imagine. You have 3 boxes and 6 balls: 3 white and 3 back. You put the balls in the boxes, 2 in each. I take one ball out of one box and it is black. What is the probability that the secod ball in the same box is also black ? I asked this question to CTOs of data science companies, Phd in math, Phd In CS, the head of machine learning at Google, hordes of ?data scientists?. Out of tens of people I asked, I got only TWO correct answers: both where Phd in physics. (not the CTOs, not the head of machine learning..) Now, tell me : if US hires 5 million (!!) data scientists in the next 2 years, what?s the probability that ANY good data science, and some reliable results come out of that! ? You know the story: garbage in, garbage out ? So, no I don?t believe that hiring hordes of uneducated developers helps. (maybe it?s my ex-communist snobbish view concerning the education, or lack thereof..) Just hire less developers, but smarter ones, and give them very good tools to do their job, that?s all. 4. However, even I don?t believe that we need millions of developers writing XQuery, the question still remains: Did we do the best we can to market XQuery ? Of course not. Books are scarce, the little material is badly written, there are no classes, etc. The W3C XQuery web site had ?to be added..? for 8 YEARS !!!!! (don?t even get me started ?) The community is split, and instead of getting together to try to make a common effort to market their common interest, they each one fights for showing off THEIR muscles, etc. The XQuery community spent no efforts into marketing, and unfortunately a programming language, like any product, needs MARKETING. The SQL community spent TONS of efforts for marketing it? long ago?.and now you can see the results. Scala community spends TONS of efforts for marketing. Etc. Etc. Well. I am not sure how to solve that, other then to open my (big) mouth every time I get a chance. (and yes, usually the results is? "Dana is grumpy" :-) A more community-based effort would be needed to better explain to the world what XQuery is and what they can do with it. And yes the fact that MarkLogic pretends that they?ve never heard of XQuery in their life and sells this as ?their? technology to their customers doesn?t help XQuery either. (and honestly, I think it?s dumb business mistake for them too?.but who am I to judge....). =========== A separate email about the market of XQuery. Best Dana > On Jun 18, 2015, at 12:07 AM, Ihe Onwuka wrote: > > > On Wed, Jun 17, 2015 at 2:01 PM, daniela florescu > wrote: > Depends what you call ?mainstream? (or successful) for a programming language?... > > Is it calculated in (1) #developers ? > > Or is it calculated in (2) #instances running it ? > > Or is it calculated in (3) #millions of dollars revenue from it ? > > ========== > > A. If (2), the Scala will be a HUGE success ? because of Spark. > > IBM just offered to put more then 3000 (!! and that?s a LARGE number) of developers on Spark. > > > Yes on Spark. Not Scala. Spark. > > Cloudera just seemed to have dumped Hadoop to become a Spark reseller. > > So?. in terms on number of instances running it, Scala WILL be a huge success. > > > Spark supports Java, Python and Scala there is an open source SparkR. > > Now let me remind you of your opening gambit in the discussion. > > ************************************************************ > "Even though, because it?s functional, it will be restricted to be used only by people with CS degrees, and not by > random Joes and Janes who write web sites. The way it is designed it is intended to make a population of educated programmers > ETREMELY efficient, and NOT to increase the total number of developers to hundreds of millions. > > When being reproached this fact in the past, my answer was always the same: building a database application should not be for the uneducated. > It?s like building a 30 story building, you don?t do that without a architect ad a structural engineer. > E.g. if you want to eradicate a grave neurological disease, you don?t lower the bar to allow anyone from the street to perform a neurosurgery, > you just make the existing neurosurgents more productive." > ************************************************************* > > Now you tell me what you think is going to happen. > > (how is Tyrpesafe, the company that does the Scala compiler making money ? that?s another story?) > > B. If it is (3) ? millions of $$$, I can probably give you the most ?cost-effective? programming language in the world. > > https://en.wikipedia.org/wiki/K_(programming_language) > > It?s used for high end financial systems, and a copy of this compiler costs about $1M. > > Not bad ?. > > Number of developers writing code in this language ? probably in the 100s?. > > C. If it in terms of (1) number of developers ?. are we really sure it matters ? > > > Yes. > > > Who makes money today out of Javascript ? (arguably the most popular programming language ?) > > Nobody. > > > Loads of people make a living out of it. > > ====================== > > So, which one do you care about ? > > I care about (2) and (3). > > > If the answer were 2 XML would be deemed to be a raging success. But of XQuery's woes you said "So?. I think it is simply a question of ?. there is no market for XML ??(aka no enough MONEY in the market)." > > Similarly having loads of instances running Scala has to translate in some meaningful way (beyond making money for Databricks and co). Show me the money. > > >> On Jun 17, 2015, at 10:47 AM, Ihe Onwuka > wrote: >> >> I wish I could agree with you but I think it is different this time. >> >> Couple of days ago I saw an update on the Scala group, somebody saying that the upsurge of interest in Spark could be the killer app that catapults Scala into the mainstream. Much as I would like to see it happen for a functional programming language, everybody except Scala dev's knows that the language is just too damn complicated to ever go mainstream. >> >> Even if this criticism could not be levelled at Scala, suspend disbelief for a minute and accept that Spark is indeed this killer app, alas it is not going to catapult Scala anywhere because the people employed in that domain will demand that it is delivered in Python and/or R and the people that hire them will acquiesce and say verily so. >> >> In the 1990's the bell tolled for the Cobol mainframe programmer. It's not like that now. On the JVM, the message is not adapt to Scala/Clojure or die it's don't worry mate stick to what you know and Java 8 will bail us out. >> >> The IT industry has presided over the widepsread and rudimentary amateurisation of software development. So when the right solution comes along it encounters a rearguard resistance from people who depend on the technological status quo for their jobs and who roll out their stock in trade objections (performance usually high up on the list). It's not like 1990 when mainframe programmers were saying I need to learn Unix/C and an Rdb and/or 5 years later I need to learn Java and what they thought to be OOP. Hence 20 years later we are still talking Java, Javascript and SQL and 5 years on they will be looking at Java 10 and still writing Fortran with classes. The industry goes along with it because they can continue to source bodies cheaply. >> >> I absolutely agree that what you said should be the way it is goes but I don't see how it is going to happen with the vested agenda's at play. >> >> >> >> >> >> >> On Wed, Jun 17, 2015 at 1:10 PM, daniela florescu > wrote: >>> >>> >>> Well I have no particular beef with the format itself other than the lack of tools. Now that we have JSONiq I am less bothered about that (assuming one has the opportunity to use it). >> >> Well, JSONiq is only implemented by Zorba (and another implementation in IBM middle tier). >> >> And Zorba is a dead piece of code. >> >> So, having ?JSONiq? as a specification?...doesn?t mean much, isn?t it ? Unless is adopted by other XQuery processors. >> (which I cross fingers they will do?) >> >> >>> >>> I agree with your ideals (1 and 2 above) too but it should be evident from the sociology of the JSON community that these things are not going to happen. >> >> Well? nope. Not clear at all. >> >> I started working on query languages for XML in 1996. >> >> Same as now, the whole industry was for using SQL for querying XML ? including ME, I had >> a system running, a bunch of PhD students working on that, etc. >> >> The decision of the W3C NOT to use SQL for that purpose was taken in 2001. >> >> 5 years later. You know how many query languages have been proposed during those 5 years ? >> Tons: UnQL, XML-QL, etc, etc. >> >> Those things need TIME. >> >> People need to try SQL first, before they realize it?s a dead end. >> >> MarkLogic needs to try Javascript on the server side, before realizes that?s a dead end. >> >> The industry moves MUCH, MUCH slower that one can expect. >> >> >>> You have people putting stuff in JSON databases without thinking how are we going to get it out and coming up with half-assed solutions for doing so. This is not progress and this is not good. >>> >> >> Again, patience is golden :-) >> >> There will be tons of those half baked solutions (MongoDB?s JSON query language, CouchDB?s..), before people realize that this >> is not going anywhere?.some of those databases will be acquired, never to be seen again, them or their query languages?.etc. >> >> =============== >> >> Honestly, I give it 5 years for the JSON query languages to stabilize. 2020 would be my estimate. Even later if there is a database bubble crash in the >> meantime. >> >> Best >> Dana >> >> >> >> >> >> >> > > -------------- next part -------------- An HTML attachment was scrubbed... URL: From dflorescu at me.com Thu Jun 18 10:19:17 2015 From: dflorescu at me.com (daniela florescu) Date: Thu, 18 Jun 2015 10:19:17 -0700 Subject: [xquery-talk] the market of XQuery Message-ID: XQuery is supposed to solve the problem of processing XML data. So far so good. I claim that the market for XML processing RIGHT NOW is not that big. But it has chances to grow?. But first let;s define what I call ?market". There are several factors that influence a ?market": (A) the volume of users who need the product (B) the acute-ness of the need (do they need it really badly, or a little) (C) how much money the customers themselves have ? the last two will influence the price (D) how repeatable/consistent is the need (E) the availability of the products that solve the need. For an ?ideal" market for a product, ideally you need the first four to be big, and the fifth to be low. ============ Now there are some distinct areas where XML processing is needed. Let?s look at each one of them and the factors above for XQuery. Also, there is also a matter of timing, aka, wether the market is ?mature? enough or not, or maybe there is potential for growth of the market in the future, even if market low right now. (1) XML as documents. ==================== (A) low to medium (B) high (C) low (D) high (E) high (XSLT does a better job then XQuery at this, and there are plenty of good open source XSLT processors). Overall score: not good. Maturity of the market: high. Not likely that from now on, the market will explode. Will probably grow, but linearly. (2) XML as data ============== "XML as data" is mostly used to send XML messages from system to system. (XBRL, HL7, etc). Note: sending messages in those formats COULD NOT have happen until there were standardized SCHEMAS in those verticals. Most of those verticals JUST standardized XML schemas and hence, probably we?ll see this fragment growing fast after that. (A) low right now, but growing fast (B) low (C) high (D) high (E) low Overall score: not good now, but very good changes that this will grow fast quickly, as fast as XBRL, HL7, etc, will start being used large scale. Maturity of the market: low now, but likely to explode in the future. That would explain why you didn?t see XQuery being used until now in that sector. The company that is most likely to take over this market: SPLUNK. (and later on, when they?ll figure out that they need Big Data ALSO for XML: Spark, Hadoop, etc) (3) XQuery as an integration/orchestration language between systems on the Web =============================================================== That would be one of the main usages of XQuery. (A) high (B) high (C) high (D) very low (E) low Overall score: good one. This COULD be one of the first growth areas for XML and XQuery. However, data integration is more a problem of services rather then licenses, and hence it?s hard to make money out of it. (There is a good old saying: ?once you?ve seen a data integration problem, well, you seen only ONE data integration problem?. It?s not a repeatable process most of the time? hence the services.. hence not repeatable revenue?. ?. hence not good margins. Well, only a company with a very good strategy can make a business success in this area. The companies that are most likely to take over in this area: Informatica, Mulesoft, etc. However, in this economical conjecture, it?s very likely that in order to avoid the competition, they?ll avoid standards and use some proprietary concoctions of their own. =========================== That?s my 5 cents analysis of where the XQuery market is right now. If we start talking about JSON, that?s a whole new problem. I think the market of JSON data processing is much bigger, and growing much faster. Best Dana From dflorescu at me.com Thu Jun 18 11:00:17 2015 From: dflorescu at me.com (daniela florescu) Date: Thu, 18 Jun 2015 11:00:17 -0700 Subject: [xquery-talk] the market of XQuery In-Reply-To: References: Message-ID: <18E9CC61-3C37-4C1F-90A8-B84D11D02CA2@me.com> > > (3) XQuery as an integration/orchestration language between systems on the Web > =============================================================== > > That would be one of the main usages of XQuery. > > (A) high > (B) high > (C) high > (D) very low > (E) low > > Overall score: good one. > > This COULD be one of the first growth areas for XML and XQuery. > > However, data integration is more a problem of services rather then licenses, and hence it?s hard to make > money out of it. (There is a good old saying: ?once you?ve seen a data integration problem, well, you seen > only ONE data integration problem?. It?s not a repeatable process most of the time? hence the services.. > hence not repeatable revenue?. > > ?. hence not good margins. > > Well, only a company with a very good strategy can make a business success in this area. However, I forgot to mention one thing: in this area there is a misalignment between XQuery and the need. Aka, bad product/market fit. In order to satisfy the data integration/orchestration need, XQuery needs two extensions : (a) a scripting extension and (b) good support for JSON (as data on the web will come in two flavors, XML and JSON) So, will we see XQuery successful here ? Yes, maybe, who knows, some proprietary extensions of it ? Best Dana From dflorescu at me.com Thu Jun 18 11:33:42 2015 From: dflorescu at me.com (daniela florescu) Date: Thu, 18 Jun 2015 11:33:42 -0700 Subject: [xquery-talk] JSON support everywhere.... Message-ID: <73510C16-2DA7-45E3-B2F5-38E39C1C51E8@me.com> https://vividcortex.com/blog/2015/06/02/json-support-postgres-mysql-mongodb-sql-server/ From mike at saxonica.com Thu Jun 18 13:54:26 2015 From: mike at saxonica.com (Michael Kay) Date: Thu, 18 Jun 2015 21:54:26 +0100 Subject: [xquery-talk] the market of XQuery In-Reply-To: References: Message-ID: > On 18 Jun 2015, at 18:19, daniela florescu wrote: > > XQuery is supposed to solve the problem of processing XML data. > > So far so good. > > I claim that the market for XML processing RIGHT NOW is not that big. XML only became ubiquitous because it was cheap: it grew on the back of free software (either open source, or given away by the likes of Microsoft). Measured by the number of users, the market for XML software is immense. Measured by the amount of money, it is quite modest, because all those users who adopted XML at zero cost need a big incentive to start spending money. And of course when software is free, the decision to adopt is made by developers, but once money is involved, you have to start making a business case to people who have no idea what the benefits are. I know some very large and profitable organizations where the developers have been trying for years to get the management to part with a few thousand dollars, but haven?t been able to get the message across. Of course, one response to that is to create a highly paid sales force, but then you have to raise the price to the hundred thousand level to pay their bonuses. Michael Kay Saxonica From ihe.onwuka at gmail.com Thu Jun 18 15:15:07 2015 From: ihe.onwuka at gmail.com (Ihe Onwuka) Date: Thu, 18 Jun 2015 18:15:07 -0400 Subject: [xquery-talk] Izzit Bcos I is functional? In-Reply-To: References: <8DB1A973-6CBF-482E-85AD-AF91DF0F2369@me.com> <347EB4FA-A1CC-406A-9370-1160EDF47B64@me.com> <6B37B1BA-48D1-4AEB-90F3-397B2EB54CA4@me.com> <287CE1ED-4386-4488-A7D5-69B822A74BA8@me.com> Message-ID: On Thu, Jun 18, 2015 at 12:23 PM, daniela florescu wrote: > Ihe, > > the discussion starts to take too many threads for my brain the be able to > wrap around it. > But I?ll answer some of the questions that came up in your emails, one by > one. > > 1. Scala WILL be used. Spark is implemented in Scala. So there will be > millions of Scala instances > running. > > Scala is a language for which you do need a CS degree. When I say that I don't literally mean you need a degree but you need knowledge that you are less likely to have encountered if you have not done a CS degree. In general functional programming is something you need to learn at college or at least from an academic, not from other developers and especially not from non-academics who have written books because they don't know what to teach or how to teach it. So where are these Scala programmers going to come from. Well they need to come from the universities but I don't think universities will produce them because universities don't like failing students. Back in the 90's FP was on the 1st year curriculum at UCL. I asked my tutor why it got removed, he said too many students were failing it and passing the 1st year programming course was mandatory to getting to year 2, so they changed it. Happily they have reverted and now teach Haskell in year one. Programming Scala will be a bloody hard course I don't think enough students could/would get through it (stayed tune for another post on this). > If ... Typesafe (the company who does the Scala compiler) will make money > out of this: I would say no. > I followed their business plan?. and honestly, I am not impressed. I think > they have very good engineers but no clue > how to turn this into money. And that?s unfortunate because they COULD > make money out of it, > > 2. About what?s more important for the success of a programming language: > #installations, # developers or #millions$$. > > Well, it?s subjective. > > Honestly, all I care is that (a) there is an important problem that people > need to solve and (b) that programming language is the > best tool to solve that problem. > > According to this, yes, XSLT and XQuery do the job. > > And, also, I don?t think either XSLT or XQuery or JSOniq are the kind of > languages that increase the number of developers to millions. > Agree. > > 3. The idea that we need ?millions of developers? gets me crazy. No, we > don?t. We just need smarter people with better tools. > (A good tool like Oxygen has more effect on the success of XQuery then > anything we cold have done to design it better?.) > > Agree. > E.g. today there was an article that made the tour of the Internet: "US > needs 5 million data scientists by 2017.? > > Now contrast that with the little experiment that I was running recently: > here is the simplest statistical problem you can imagine. > > You have 3 boxes and 6 balls: 3 white and 3 back. You put the balls in the > boxes, 2 in each. I take one ball out of one box and it is black. > What is the probability that the secod ball in the same box is also black ? > > I asked this question to CTOs of data science companies, Phd in math, Phd > In CS, the head of machine learning at Google, hordes of ?data scientists?. > > Out of tens of people I asked, I got only TWO correct answers: both where > Phd in physics. (not the CTOs, not the head of machine learning..) > Pick a Box A. Sampling is without replaceent. Chance of 1st ball being black = 3/6 = 1/2 Chance of 2nd ball being black = 2/5. Chance of both being blank = 1//2 * 2/5 = 1/5. BUT there are 2 ways for Box A to have 2 black balls a). Box B could have zero black and Box C 1 black or b) Box C could have zero black and Box B 1 white. So multiply by 2 Se P (Box A has 2 black balls) = 1/5 * 2 = 2/5. BUT there is only a one in 3 chance of selecting Box A Final answer = 2/5 * 1/3 = 2/15 I settle for partial credit. > Now, tell me : if US hires 5 million (!!) data scientists in the next 2 > years, what?s the probability that ANY good data science, and some reliable > results come out of that! ? > > You know the story: garbage in, garbage out ? > > So, no I don?t believe that hiring hordes of uneducated developers helps. > (maybe it?s my ex-communist snobbish view concerning the education, or lack > thereof..) > > Just hire less developers, but smarter ones, and give them very good tools > to do their job, that?s all. > Agreed On Thu, Jun 18, 2015 at 12:23 PM, daniela florescu wrote: > Ihe, > > the discussion starts to take too many threads for my brain the be able to > wrap around it. > But I?ll answer some of the questions that came up in your emails, one by > one. > > 1. Scala WILL be used. Spark is implemented in Scala. So there will be > millions of Scala instances > running. > > If ... Typesafe (the company who does the Scala compiler) will make money > out of this: I would say no. > I followed their business plan?. and honestly, I am not impressed. I think > they have very good engineers but no clue > how to turn this into money. And that?s unfortunate because they COULD > make money out of it, > > 2. About what?s more important for the success of a programming language: > #installations, # developers or #millions$$. > > Well, it?s subjective. > > Honestly, all I care is that (a) there is an important problem that people > need to solve and (b) that programming language is the > best tool to solve that problem. > > According to this, yes, XSLT and XQuery do the job. > > And, also, I don?t think either XSLT or XQuery or JSOniq are the kind of > languages that increase the number of developers to millions. > > 3. The idea that we need ?millions of developers? gets me crazy. No, we > don?t. We just need smarter people with better tools. > (A good tool like Oxygen has more effect on the success of XQuery then > anything we cold have done to design it better?.) > > E.g. today there was an article that made the tour of the Internet: "US > needs 5 million data scientists by 2017.? > > Now contrast that with the little experiment that I was running recently: > here is the simplest statistical problem you can imagine. > > You have 3 boxes and 6 balls: 3 white and 3 back. You put the balls in the > boxes, 2 in each. I take one ball out of one box and it is black. > What is the probability that the secod ball in the same box is also black ? > > I asked this question to CTOs of data science companies, Phd in math, Phd > In CS, the head of machine learning at Google, hordes of ?data scientists?. > > Out of tens of people I asked, I got only TWO correct answers: both where > Phd in physics. (not the CTOs, not the head of machine learning..) > > Now, tell me : if US hires 5 million (!!) data scientists in the next 2 > years, what?s the probability that ANY good data science, and some reliable > results come out of that! ? > > You know the story: garbage in, garbage out ? > > So, no I don?t believe that hiring hordes of uneducated developers helps. > (maybe it?s my ex-communist snobbish view concerning the education, or lack > thereof..) > > Just hire less developers, but smarter ones, and give them very good tools > to do their job, that?s all. > > 4. However, even I don?t believe that we need millions of developers > writing XQuery, the question still remains: > > Did we do the best we can to market XQuery ? Of course not. Books are > scarce, the little material is badly written, there are no classes, etc. > > The W3C XQuery web site had ?to be added..? for 8 YEARS !!!!! (don?t even > get me started ?) > > The community is split, and instead of getting together to try to make a > common effort to market their common interest, they each one fights for > showing off THEIR muscles, etc. > > The XQuery community spent no efforts into marketing, and unfortunately a > programming language, like any product, needs MARKETING. > > The SQL community spent TONS of efforts for marketing it? long ago?.and > now you can see the results. > > Scala community spends TONS of efforts for marketing. Etc. Etc. > > Well. I am not sure how to solve that, other then to open my (big) mouth > every time I get a chance. (and yes, usually the results is? "Dana is > grumpy" :-) > > A more community-based effort would be needed to better explain to the > world what XQuery is and what they can do with it. > > And yes the fact that MarkLogic pretends that they?ve never heard of > XQuery in their life and sells this as ?their? technology > to their customers doesn?t help XQuery either. (and honestly, I think > it?s dumb business mistake for them too?.but who am I to judge....). > > > > =========== > > > > A separate email about the market of XQuery. > > Best > Dana > > > > > > > > > > > > > > > > > > > > > > > > > > > > > On Jun 18, 2015, at 12:07 AM, Ihe Onwuka wrote: > > > On Wed, Jun 17, 2015 at 2:01 PM, daniela florescu > wrote: > >> Depends what you call ?mainstream? (or successful) for a programming >> language?... >> >> Is it calculated in (1) #developers ? >> >> Or is it calculated in (2) #instances running it ? >> >> Or is it calculated in (3) #millions of dollars revenue from it ? >> >> ========== >> >> A. If (2), the Scala will be a HUGE success ? because of Spark. >> >> IBM just offered to put more then 3000 (!! and that?s a LARGE number) of >> developers on Spark. >> >> > Yes on Spark. Not Scala. Spark. > > Cloudera just seemed to have dumped Hadoop to become a Spark reseller. >> >> So?. in terms on number of instances running it, Scala WILL be a huge >> success. >> >> > Spark supports Java, Python and Scala there is an open source SparkR. > > Now let me remind you of your opening gambit in the discussion. > > ************************************************************ > "Even though, because it?s functional, it will be restricted to be used > only by people with CS degrees, and not by > random Joes and Janes who write web sites. The way it is designed it is > intended to make a population of educated programmers > ETREMELY efficient, and NOT to increase the total number of developers to > hundreds of millions. > > When being reproached this fact in the past, my answer was always the > same: building a database application should not be for the uneducated. > It?s like building a 30 story building, you don?t do that without a > architect ad a structural engineer. > E.g. if you want to eradicate a grave neurological disease, you don?t > lower the bar to allow anyone from the street to perform a neurosurgery, > you just make the existing neurosurgents more productive." > ************************************************************* > > Now you tell me what you think is going to happen. > > (how is Tyrpesafe, the company that does the Scala compiler making money ? >> that?s another story?) >> >> B. If it is (3) ? millions of $$$, I can probably give you the most >> ?cost-effective? programming language in the world. >> >> https://en.wikipedia.org/wiki/K_(programming_language) >> >> It?s used for high end financial systems, and a copy of this compiler >> costs about $1M. >> >> Not bad ?. >> >> Number of developers writing code in this language ? probably in the >> 100s?. >> >> C. If it in terms of (1) number of developers ?. are we really sure it >> matters ? >> >> > Yes. > > > >> Who makes money today out of Javascript ? (arguably the most popular >> programming language ?) >> >> Nobody. >> >> > Loads of people make a living out of it. > > >> ====================== >> >> So, which one do you care about ? >> >> I care about (2) and (3). >> >> > If the answer were 2 XML would be deemed to be a raging success. But of > XQuery's woes you said "So?. I think it is simply a question of ?. there > is no market for XML ??(aka no enough MONEY in the market)." > > Similarly having loads of instances running Scala has to translate in some > meaningful way (beyond making money for Databricks and co). Show me the > money. > > > >> On Jun 17, 2015, at 10:47 AM, Ihe Onwuka wrote: >> >> I wish I could agree with you but I think it is different this time. >> >> Couple of days ago I saw an update on the Scala group, somebody saying >> that the upsurge of interest in Spark could be the killer app that >> catapults Scala into the mainstream. Much as I would like to see it happen >> for a functional programming language, everybody except Scala dev's knows >> that the language is just too damn complicated to ever go mainstream. >> >> Even if this criticism could not be levelled at Scala, suspend disbelief >> for a minute and accept that Spark is indeed this killer app, alas it is >> not going to catapult Scala anywhere because the people employed in that >> domain will demand that it is delivered in Python and/or R and the people >> that hire them will acquiesce and say verily so. >> >> In the 1990's the bell tolled for the Cobol mainframe programmer. It's >> not like that now. On the JVM, the message is not adapt to Scala/Clojure or >> die it's don't worry mate stick to what you know and Java 8 will bail us >> out. >> >> The IT industry has presided over the widepsread and rudimentary >> amateurisation of software development. So when the right solution comes >> along it encounters a rearguard resistance from people who depend on the >> technological status quo for their jobs and who roll out their stock in >> trade objections (performance usually high up on the list). It's not like >> 1990 when mainframe programmers were saying I need to learn Unix/C and an >> Rdb and/or 5 years later I need to learn Java and what they thought to be >> OOP. Hence 20 years later we are still talking Java, Javascript and SQL and >> 5 years on they will be looking at Java 10 and still writing Fortran with >> classes. The industry goes along with it because they can continue to >> source bodies cheaply. >> >> I absolutely agree that what you said should be the way it is goes but I >> don't see how it is going to happen with the vested agenda's at play. >> >> >> >> >> >> >> On Wed, Jun 17, 2015 at 1:10 PM, daniela florescu >> wrote: >> >>> >>>> >>> Well I have no particular beef with the format itself other than the >>> lack of tools. Now that we have JSONiq I am less bothered about that >>> (assuming one has the opportunity to use it). >>> >>> >>> Well, JSONiq is only implemented by Zorba (and another implementation in >>> IBM middle tier). >>> >>> And Zorba is a dead piece of code. >>> >>> So, having ?JSONiq? as a specification?...doesn?t mean much, isn?t it ? >>> Unless is adopted by other XQuery processors. >>> (which I cross fingers they will do?) >>> >>> >>> >>> I agree with your ideals (1 and 2 above) too but it should be evident >>> from the sociology of the JSON community that these things are not going to >>> happen. >>> >>> >>> Well? nope. Not clear at all. >>> >>> I started working on query languages for XML in 1996. >>> >>> Same as now, the whole industry was for using SQL for querying XML ? >>> including ME, I had >>> a system running, a bunch of PhD students working on that, etc. >>> >>> The decision of the W3C NOT to use SQL for that purpose was taken in >>> 2001. >>> >>> 5 years later. You know how many query languages have been proposed >>> during those 5 years ? >>> Tons: UnQL, XML-QL, etc, etc. >>> >>> Those things need TIME. >>> >>> People need to try SQL first, before they realize it?s a dead end. >>> >>> MarkLogic needs to try Javascript on the server side, before realizes >>> that?s a dead end. >>> >>> The industry moves MUCH, MUCH slower that one can expect. >>> >>> >>> You have people putting stuff in JSON databases without thinking how are >>> we going to get it out and coming up with half-assed solutions for doing >>> so. This is not progress and this is not good. >>> >>> >>> Again, patience is golden :-) >>> >>> There will be tons of those half baked solutions (MongoDB?s JSON query >>> language, CouchDB?s..), before people realize that this >>> is not going anywhere?.some of those databases will be acquired, never >>> to be seen again, them or their query languages?.etc. >>> >>> =============== >>> >>> Honestly, I give it 5 years for the JSON query languages to stabilize. >>> 2020 would be my estimate. Even later if there is a database bubble crash >>> in the >>> meantime. >>> >>> Best >>> Dana >>> >>> >>> >>> >>> >>> >>> >> >> > > -------------- next part -------------- An HTML attachment was scrubbed... URL: From ihe.onwuka at gmail.com Thu Jun 18 21:55:56 2015 From: ihe.onwuka at gmail.com (Ihe Onwuka) Date: Fri, 19 Jun 2015 00:55:56 -0400 Subject: [xquery-talk] Izzit Bcos I is functional? In-Reply-To: References: <8DB1A973-6CBF-482E-85AD-AF91DF0F2369@me.com> <347EB4FA-A1CC-406A-9370-1160EDF47B64@me.com> <6B37B1BA-48D1-4AEB-90F3-397B2EB54CA4@me.com> <287CE1ED-4386-4488-A7D5-69B822A74BA8@me.com> Message-ID: On Thu, Jun 18, 2015 at 6:13 PM, Ihe Onwuka wrote: > >> Pick a Box A. > > Sampling is without replaceent. > Chance of 1st ball being black = 3/6 = 1/2 > Chance of 2nd ball being black = 2/5. > > Chance of both being blank = 1//2 * 2/5 = 1/5. > > BUT there are 2 ways for Box A to have 2 black balls > > a). Box B could have zero black and Box C 1 black or > b) Box C could have zero black and Box B 1 white. > So multiply by 2 > > Se P (Box A has 2 black balls) = 1/5 * 2 = 2/5. > > BUT there is only a one in 3 chance of selecting Box A > > Final answer = 2/5 * 1/3 = 2/15 > > I settle for partial credit. > > Good thing I only aimed for partial credit as I got it wrong and I guess it is because I over-elaborated. If you've seen 1 black ball there are 5 other possible balls to choose from only 2 of which are black. No need to multiply the probability of picking that box (1/3) because that is given information. So by sampling without replacement the probability is 2/5. Final answer. -------------- next part -------------- An HTML attachment was scrubbed... URL: From ihe.onwuka at gmail.com Thu Jun 18 23:40:19 2015 From: ihe.onwuka at gmail.com (Ihe Onwuka) Date: Fri, 19 Jun 2015 02:40:19 -0400 Subject: [xquery-talk] Izzit Bcos I is functional? In-Reply-To: References: <8DB1A973-6CBF-482E-85AD-AF91DF0F2369@me.com> <347EB4FA-A1CC-406A-9370-1160EDF47B64@me.com> <6B37B1BA-48D1-4AEB-90F3-397B2EB54CA4@me.com> <287CE1ED-4386-4488-A7D5-69B822A74BA8@me.com> Message-ID: On Thu, Jun 18, 2015 at 12:23 PM, daniela florescu wrote: > > Now, tell me : if US hires 5 million (!!) data scientists in the next 2 > years, what?s the probability that ANY good data science, and some reliable > results come out of that! ? > > You know the story: garbage in, garbage out ? > > So, no I don?t believe that hiring hordes of uneducated developers helps. > (maybe it?s my ex-communist snobbish view concerning the education, or lack > thereof..) > > This came into my feed this morning and I thought ere we go, another piece of clickbait but I still couldn't resist. Actually a very very good article. See myth 1. http://www.infoworld.com/article/2936947/big-data/debunked-9-big-data-and-hadoop-myths.html -------------- next part -------------- An HTML attachment was scrubbed... URL: From ihe.onwuka at gmail.com Fri Jun 19 03:43:27 2015 From: ihe.onwuka at gmail.com (Ihe Onwuka) Date: Fri, 19 Jun 2015 06:43:27 -0400 Subject: [xquery-talk] Izzit Bcos I is functional? In-Reply-To: References: <8DB1A973-6CBF-482E-85AD-AF91DF0F2369@me.com> <347EB4FA-A1CC-406A-9370-1160EDF47B64@me.com> <6B37B1BA-48D1-4AEB-90F3-397B2EB54CA4@me.com> Message-ID: On Wed, Jun 17, 2015 at 1:02 PM, Michael Kay wrote: > > > > I agree with your ideals (1 and 2 above) too but it should be evident > from the sociology of the JSON community that these things are not going to > happen. You have people putting stuff in JSON databases without thinking > how are we going to get it out and coming up with half-assed solutions for > doing so. This is not progress and this is not good. > > JSON wasn?t designed for databases any more than XML was. Both were > designed for messages. XML at least was designed for long-life messages, > while JSON was designed for throwaway messages. > > > I think XML is a bit more useful than that. It's a natural fit for data scraped from the web and if you buy into the tools it has a value as a staging format because it is easily convertible. -------------- next part -------------- An HTML attachment was scrubbed... URL: From ihe.onwuka at gmail.com Fri Jun 19 03:59:39 2015 From: ihe.onwuka at gmail.com (Ihe Onwuka) Date: Fri, 19 Jun 2015 06:59:39 -0400 Subject: [xquery-talk] Izzit Bcos I is functional? In-Reply-To: <5580FEA5.5000309@utwente.nl> References: <8DB1A973-6CBF-482E-85AD-AF91DF0F2369@me.com> <347EB4FA-A1CC-406A-9370-1160EDF47B64@me.com> <5580FEA5.5000309@utwente.nl> Message-ID: Maurice, Can you relate, or is it different in the Netherlands. I can't remember why I got it from but it is very well written. I'm a university lecturer in Computer Science, I teach a second year module in programming. I've spent my Christmas "holidays" marking the end-of-term test I set for my students. Every year it's the same - no more than a third of them are showing the sort of ability I would want in anyone doing a coding job. One-third of them are so poor at programming that one would be surprised to hear they had spent more than a couple of weeks supposedly learning about it, never mind half-way through a degree in it. This is the hidden issue, which academics moan about in private but don't like to say in public. It's not just me or where I teach, the same occurs everywhere. If you really test them on decent programming skills, you get a huge failure rate. In this country it's thought bad to fail students, so mostly we find ways of getting them through even though they don't really have the skills. My advice to any employer looking for real programming skills is don't just look at the degree class, look at the module grades, and don't take on anyone whose 2i or 1st has been gained by good grades in other modules balancing weak grade in the programming modules. But even with the programming modules, check out how the assessment was done. One issue does seem to be natural ability - some have got it, some haven't. We've not found a good way to work out who has it when we recruit the students, and league table pressure now means we are forced to recruit the students with the highest A-level grades regardless of anything else, and A-level grades certainly are NOT a good test of natural ability for coding. There's some correlation with the grade in A-level Maths, that's about it. However, these days when all the pressure is to recruit high grade students because that pushes us up the league tables, central admin won't let us take on applicants with reasonable A-level maths and outside interests which suggest genuine coding ability rather than applicants with just higher grades in other subjects. But another issue is lack of student discipline. Too many of them just don't realise how to learn this stuff properly, you have to practice, practice, practice. Too many of them are stuck in the mentality that to do well all that is needed is to "revise" in the week before the exam. Unfortunately, we have a culture which puts forward the impression that tests and exams are "memory dumps". I keep telling my students it isn't like that for our subject, they don't believe me. I see this in their test and exam answers, where you so often see something which completely misses the point written down because it's something they've memorised and they've dumped it on paper in response to a trigger word in the question. Note also, if the assessment is more through coursework than exams, a large proportion of what is submitted will not be the students' own work. It may not be actual copying, but it is often "We discussed it together" i.e. one of them did the work, and the others made cosmetic fiddles and claimed they were just helped by the discussion. Or some friend or relative did it for them, etc. So I would say, if assessment is not largely exam based, don't take them on even if they do have high grades in the programming modules. This is also why I have no faith in "MOOC"s, as most of the seem to have assessment based on memorisation and multiple choice rather than deep analysis of real skills. Sure, you can automate marking of really simple introductory programming exercises, but anything beyond 1st year coding, you can't, because automated marking won't test subtle issues such as good style or solving a problem in a particular way. I set tests and exams with an emphasis on writing actual code and showing deep understanding, but it doesn't make me popular, and it doesn't lead to a high pass rate. Many others succumb to the pressure, and set tests and exams with questions which are multiple-choice and centre on memorising definitions rather than solving coding problems. That makes it MUCH easier to mark, and you get a higher pass rate as well. If I had done that I wouldn't have my wife nagging me "It's Christmas - why are you doing work?", and I wouldn't have my boss nagging me "Why does your module have such a high failure rate?" and I wouldn't have my student nagging me "Why are you so tough on us?". On Wed, Jun 17, 2015 at 12:59 AM, Maurice van Keulen wrote: > Just to confirm, at the University of Twente (Netherlands), we teach > XML/XQuery alongside Relational/SQL to the first year bachelor students > computer science. This is their 'foundations of databases' course. One of > the main reasons is to teach them that there is structured, semi-structured > and unstructured data which are best processed with different technologies. > Regarding XQuery, my end goal is that they can develop their first web > services with RESTXQ (using BaseX), just to make them realize how much more > productive they can become when embracing such technology. > > Regards, > Maurice van Keulen > P.S. @Daniela,Ihe: loving your discussions!!! > > > On 17/06/15 00:21, daniela florescu wrote: > > >> > I'm not sure about that. I know Harvard does but that is part of a web > programming course. > > > http://ocw.mit.edu/courses/electrical-engineering-and-computer-science/6-830-database-systems-fall-2010/readings/ > > http://ocw.mit.edu/courses/civil-and-environmental-engineering/1-264j-database-internet-and-systems-integration-technologies-fall-2013/lecture-notes-exercises/ > > > Look inside the slides of the database classes? you?ll see XQuery almost > everywhere (at the end of the class?). > > Especially that Stanford does it, and most database professors copy the > slides from Stanford. > > https://lagunita.stanford.edu/courses/DB/XPath/SelfPaced/courseware/ch-querying_xml/seq-vid-xquery_introduction/ > > (not that the Stanford professors understand much from XML and XQuery ? > but that?s a whole new discussion?) > > > > MIT doesn't, neither does either of the universities I went to. > > > That?s because Stonebreaker is there, and he wouldn?t be caught dead > teaching XML. I?ll see if I can make him change his mind > about JSON?. :-) > > The fact that sir TBL is in MIT too doesn?t help at all either, given > the fact that he was ?convinced? by a bunch of good willing people that XML > is > evil. (and the semantic web will cure the hunger of the world and the > cancer for sure?) > > > > > What are they. Alot of the ones I have read aren't true and seem to be > based on a lack of knowledge about XML > > > I think I KNOW something about XML ? not that I enjoyed learning it, but > I HAD to :-) > > Want a quick list ? processing instructions, weirdo parsing rules that > are inherited from the 1950?s SGML, weirdo design > of namespaces, XML Schema anyone !? nillable anyone !? Some early design > of Xpath 1.0 (no reserved keywords, semantics of =) > I?ll stop here. > > Only those and that would stop me (as a database person) right there to > use XML as a format for data. > > > Y'see I reckon that if JSON was deployed in many of the domains where > XML is, it too would be hated. > > > Yes, but less. > > People would STILL have to face the fact that they cannot process JSON > with their beloved SQL?. but at least they wouldn?t > add insult to injury by adding the weird things I listed above. > > The bitter pill would be somehow easier to swallow. > > The database people accept with open arms JSOn right now because they > don?t REALLY understand what JSON is. > > Most of them still look at JSON as a nicer syntax then CSV?..they think > it?s flat, or a ?little? nested. > > The shock will hit them later on :-)))) > > Best regards > Dana > > > > > _______________________________________________talk at x-query.comhttp://x-query.com/mailman/listinfo/talk > > > -- > ----------------------------------------------------------------------- > Dr.ir. M. van Keulen - Associate Professor Data Management Technology > Univ of Twente, Dept of EEMCS, POBox 217, 7500 AE Enschede, Netherlands > Email: m.vankeulen at utwente.nl, Phone: +31534893688, Fax: +31534892927 > Room: Zilverling 2013, WWW: http://www.cs.utwente.nl/~keulen > > -------------- next part -------------- An HTML attachment was scrubbed... URL: From gkholman at CraneSoftwrights.com Fri Jun 19 05:07:50 2015 From: gkholman at CraneSoftwrights.com (G. Ken Holman) Date: Fri, 19 Jun 2015 08:07:50 -0400 Subject: [xquery-talk] Learning this stuff (Re: Izzit Bcos I is functional?) In-Reply-To: References: <8DB1A973-6CBF-482E-85AD-AF91DF0F2369@me.com> <347EB4FA-A1CC-406A-9370-1160EDF47B64@me.com> <5580FEA5.5000309@utwente.nl> Message-ID: <7.0.1.0.2.20150619074011.023555e0@wheresmymailserver.com> I'm not a university lecture, but I do (did) teach hands-on XSLT and XQuery. At 2015-06-19 06:59 -0400, Ihe Onwuka wrote: >Every year it's the same - no more than a third of them are showing >the sort of ability I would want in anyone doing a coding job. I can testify to that in the students who showed up at my classes. >But another issue is lack of student discipline. > >Too many of them just don't realise how to learn this stuff >properly, you have to practice, practice, practice. What I learned at the University of Waterloo was how to learn, not what to learn. For example, every week in the programming languages class the assignment due was in a different programming language. The point wasn't learning the programming language, but to learn how to learn a new programming language. As Ihe says, that takes a lot of practice, and learning a new programming language every week provided exactly that: practice in learning. And I'm pleased (relieved) to say I've never had to use SNOBOL in the real world. >Too many of them are stuck in the mentality that to do well all that >is needed is to "revise" in the week before the exam. I graduated in 1981, SGML was finalized in 1983 and I didn't start working with it until 1989. So there was no opportunity to learn markup when I was in university (though perhaps I should have paid a bit more attention in the computer grammar class). Whatever students cram in for the exam is likely not going to be useful years later. But how they learned (by not cramming) will hold them in good stead regardless of the problems their employers are asking them to solve. >If I had done that I wouldn't have my wife nagging me "It's >Christmas - why are you doing work?", and I wouldn't have my boss >nagging me "Why does your module have such a high failure rate?" and >I wouldn't have my student nagging me "Why are you so tough on us?". I bet not so tough as an employer with a customer deadline! I acknowledge this may be seen as veering off topic, but as I exit the scene I am not holding a lot of promise that these wonderful technologies are going to be wielded at all well in the foreseeable future. In my (limited) perspective I fail to see what stepping back to accommodate JSON is bringing to the party. I liked what I read earlier in this thread (or was it another?) that JSON is only ephemeral and XML can be persistent. Fine by me, then, if JSON is solving a different problem than what I've been solving. But I feel it falls short in addressing the problems that XML addresses, so I worry when I read of people replacing XML with JSON for everything. I think the industry needs to listen to people like Maurice and Ihe and focus not on changing the technologies that are there, but to focus on getting them better applied as they are. That is where I think energy needs to be spent. . . . . . . . . . Ken -- Check our site for free XML, XSLT, XSL-FO and UBL developer resources | Free 5-hour lecture: http://www.CraneSoftwrights.com/links/video.htm | Crane Softwrights Ltd. http://www.CraneSoftwrights.com/q/ | G. Ken Holman mailto:gkholman at CraneSoftwrights.com | Google+ profile: http://plus.google.com/+GKenHolman-Crane/about | Legal business disclaimers: http://www.CraneSoftwrights.com/legal | --- This email has been checked for viruses by Avast antivirus software. https://www.avast.com/antivirus From ihe.onwuka at gmail.com Fri Jun 19 07:59:00 2015 From: ihe.onwuka at gmail.com (Ihe Onwuka) Date: Fri, 19 Jun 2015 10:59:00 -0400 Subject: [xquery-talk] Learning this stuff (Re: Izzit Bcos I is functional?) In-Reply-To: <7.0.1.0.2.20150619074011.023555e0@wheresmymailserver.com> References: <8DB1A973-6CBF-482E-85AD-AF91DF0F2369@me.com> <347EB4FA-A1CC-406A-9370-1160EDF47B64@me.com> <5580FEA5.5000309@utwente.nl> <7.0.1.0.2.20150619074011.023555e0@wheresmymailserver.com> Message-ID: On Fri, Jun 19, 2015 at 8:07 AM, G. Ken Holman < gkholman at cranesoftwrights.com> wrote: > > > I think the industry needs to listen to people like Maurice and Ihe and > focus not on changing the technologies that are there, but to focus on > getting them better applied as they are. That is where I think energy > needs to be spent. > > I am being given too much credit here. I am not a lecturer, the piece was written by somebody else, I just pasted it here, but of course I heartily agree with what it says and what you said also. -------------- next part -------------- An HTML attachment was scrubbed... URL: From dflorescu at me.com Fri Jun 19 11:04:10 2015 From: dflorescu at me.com (daniela florescu) Date: Fri, 19 Jun 2015 11:04:10 -0700 Subject: [xquery-talk] Izzit Bcos I is functional? In-Reply-To: References: <8DB1A973-6CBF-482E-85AD-AF91DF0F2369@me.com> <347EB4FA-A1CC-406A-9370-1160EDF47B64@me.com> <6B37B1BA-48D1-4AEB-90F3-397B2EB54CA4@me.com> Message-ID: > > JSON wasn?t designed for databases any more than XML was. Both were designed for messages. XML at least was designed for long-life messages, while JSON was designed for throwaway messages. I agree that both were (originally) designed for messages. But I don?t think it has anything to do with the level of persistence or their lifetime. Let?s ignore for a second why they were created in the first place, and let?s look at how are they used now ? very often the original intent is not the final use. And, of course, both are used in more circumstances then simple messaging, but let?s focus on the message use case. XML is now used as a message format between INDEPENDENT systems (e.g UBS wants to talk to Bank of America). They have NO CHOICE then to use XML is this case, because: - they need a standard (if things go wrong? who?s fault it is !?) - they need a pre-agreed schema ( otherwise how do they know they understand each other ?) JSON is of no use in this case, at least for now, because (a) not a standard and (b) doesn?t have a schema JSON is used today as a message format between client/server parts of the SAME system. There speed is the main requirement, and XML is too heavy in size and parsing time, so it is of no use. ========== In both cases, those messages will be logged, and hence persist somewhere. Nobody throws away data those days, of a variety of reasons? big data analysis (or at least the hope for it..), audit, security, etc. So, no, I don?t think XML vs. JSON is a matter of persistence vs. not. Best regards, have a great weekend Dana -------------- next part -------------- An HTML attachment was scrubbed... URL: From ihe.onwuka at gmail.com Sat Jun 20 00:50:21 2015 From: ihe.onwuka at gmail.com (Ihe Onwuka) Date: Sat, 20 Jun 2015 03:50:21 -0400 Subject: [xquery-talk] Izzit Bcos I is functional? In-Reply-To: References: <8DB1A973-6CBF-482E-85AD-AF91DF0F2369@me.com> <347EB4FA-A1CC-406A-9370-1160EDF47B64@me.com> <6B37B1BA-48D1-4AEB-90F3-397B2EB54CA4@me.com> Message-ID: On Fri, Jun 19, 2015 at 2:04 PM, daniela florescu wrote: > > > In both cases, those messages will be logged, and hence persist somewhere. > > Nobody throws away data those days, of a variety of reasons? big data > analysis (or at least the hope for it..), audit, security, etc. > > > So, no, I don?t think XML vs. JSON is a matter of persistence vs. not. > > But it usually the case that the format in which the data comes at you is not suitable for the purpose you want to use it. So whereas you may want to persist it, it doesn't follow that it should be analyzed in the same form, ergo it doesn't follow that you should/must build a data manipulation framework on top of that format (in this case we are talking about JSON). What you can do instead is transform it into a format that already has the necessary tools support hence we have usually seen this stuff being sucked into spreadsheets and relational databases. OK that stops being feasible with "Big Data" and semi-structured data, but if it takes as long as you say to build a query language for semi-structured data then clearly that's not really viable. The question is are the so-called SQL++ hacks good enough. Personally I think it is madness to take a punt on ropey unproven software if there is a working alternative. As for Big Data. The idea that we must have something that sucks everything up is not IMO broadly applicable it's just people lacking the appropriate skills to pre-process the data aping Google irrespective that they are not solving the same type of problem. -------------- next part -------------- An HTML attachment was scrubbed... URL: From wcandillon at gmail.com Sun Jun 21 09:22:09 2015 From: wcandillon at gmail.com (William Candillon) Date: Sun, 21 Jun 2015 18:22:09 +0200 Subject: [xquery-talk] parsing xml fragments In-Reply-To: <08D07B10-3740-4348-BD64-955E793ACF67@varioweb.ch> References: <08D07B10-3740-4348-BD64-955E793ACF67@varioweb.ch> Message-ID: Have you considered parsing the description as html? Here's an example with Zorba: http://try-zorba.28.io/queries/xquery/KZc4M47%2BQ948k2%2FR8GneS%2BtP%2Fgs%3D On Sun, Jun 21, 2015 at 6:15 PM, Leo Studer wrote: > Hello > > I tried the following > > declare variable $feed := > doc("http://www.meteotest.ch/meteotest-extras/rss/rss-sio.xml")//item/description/string(); > > > { > parse-xml-fragment($feed)/*} > > > > to use the weather infos from this feed. > Unfortunately parse-xml-fragment($feed) does not work since & is used in a > URL. Is there a easy way to do that? > > Thanks in advance > Leo > > _______________________________________________ > talk at x-query.com > http://x-query.com/mailman/listinfo/talk From wcandillon at gmail.com Sun Jun 21 09:22:48 2015 From: wcandillon at gmail.com (William Candillon) Date: Sun, 21 Jun 2015 18:22:48 +0200 Subject: [xquery-talk] parsing xml fragments In-Reply-To: References: <08D07B10-3740-4348-BD64-955E793ACF67@varioweb.ch> Message-ID: And the result serialized as html: http://tryzorba.28.io/query.jq?id=KZc4M47%2BQ948k2%2FR8GneS%2BtP%2Fgs%3D&format=html On Sun, Jun 21, 2015 at 6:22 PM, William Candillon wrote: > Have you considered parsing the description as html? > Here's an example with Zorba: > http://try-zorba.28.io/queries/xquery/KZc4M47%2BQ948k2%2FR8GneS%2BtP%2Fgs%3D > > On Sun, Jun 21, 2015 at 6:15 PM, Leo Studer wrote: >> Hello >> >> I tried the following >> >> declare variable $feed := >> doc("http://www.meteotest.ch/meteotest-extras/rss/rss-sio.xml")//item/description/string(); >> >> >> { >> parse-xml-fragment($feed)/*} >> >> >> >> to use the weather infos from this feed. >> Unfortunately parse-xml-fragment($feed) does not work since & is used in a >> URL. Is there a easy way to do that? >> >> Thanks in advance >> Leo >> >> _______________________________________________ >> talk at x-query.com >> http://x-query.com/mailman/listinfo/talk From leo.studer at varioweb.ch Sun Jun 21 11:22:42 2015 From: leo.studer at varioweb.ch (Leo Studer) Date: Sun, 21 Jun 2015 20:22:42 +0200 Subject: [xquery-talk] parsing xml fragments In-Reply-To: <0B4DA2E3-4D2C-4820-873C-1C048414A91A@exist-db.org> References: <08D07B10-3740-4348-BD64-955E793ACF67@varioweb.ch> <0B4DA2E3-4D2C-4820-873C-1C048414A91A@exist-db.org> Message-ID: <69AB80D4-8C04-44EF-9C8F-7050401ACA44@varioweb.ch> Yes, $feed contains the expected info, no namespace issue here? Try it out. BaseX does not report an error however the code does not work and Saxon reports Engine name: Saxon-PE XQuery 9.6.0.5 Severity: fatal Description: FODC0006: First argument to parse-xml-fragment() is not a well-formed and namespace-well-formed XML fragment. XML parser reported: org.xml.sax.SAXParseException: The reference to entity "service" must end with the ';' delimiter. > On 21.06.2015, at 19:10, Dannes Wessels wrote: > > Does the doc()//item/... expression return anything? I expect a namespace issue here... > > Cheers > > Dannes > > > -- > www.exist-db.org > > On 21 Jun 2015, at 17:15, Leo Studer > wrote: > >> Hello >> >> I tried the following >> >> declare variable $feed := doc("http://www.meteotest.ch/meteotest-extras/rss/rss-sio.xml ")//item/description/string(); >> >> >> { >> parse-xml-fragment($feed)/*} >> >> >> >> to use the weather infos from this feed. >> Unfortunately parse-xml-fragment($feed) does not work since & is used in a URL. Is there a easy way to do that? >> >> Thanks in advance >> Leo >> _______________________________________________ >> talk at x-query.com >> http://x-query.com/mailman/listinfo/talk _______________________________________________ > talk at x-query.com > http://x-query.com/mailman/listinfo/talk -------------- next part -------------- An HTML attachment was scrubbed... URL: From leo.studer at varioweb.ch Sun Jun 21 11:33:00 2015 From: leo.studer at varioweb.ch (Leo Studer) Date: Sun, 21 Jun 2015 20:33:00 +0200 Subject: [xquery-talk] parsing xml fragments In-Reply-To: References: <08D07B10-3740-4348-BD64-955E793ACF67@varioweb.ch> Message-ID: <6118F470-F0A1-451B-843C-E479874262DF@varioweb.ch> Yes, this would be the expected result, however the proposed solution does not work here. > On 21.06.2015, at 18:22, William Candillon wrote: > > And the result serialized as html: > http://tryzorba.28.io/query.jq?id=KZc4M47%2BQ948k2%2FR8GneS%2BtP%2Fgs%3D&format=html > > On Sun, Jun 21, 2015 at 6:22 PM, William Candillon wrote: >> Have you considered parsing the description as html? >> Here's an example with Zorba: >> http://try-zorba.28.io/queries/xquery/KZc4M47%2BQ948k2%2FR8GneS%2BtP%2Fgs%3D >> >> On Sun, Jun 21, 2015 at 6:15 PM, Leo Studer wrote: >>> Hello >>> >>> I tried the following >>> >>> declare variable $feed := >>> doc("http://www.meteotest.ch/meteotest-extras/rss/rss-sio.xml")//item/description/string(); >>> >>> >>> { >>> parse-xml-fragment($feed)/*} >>> >>> >>> >>> to use the weather infos from this feed. >>> Unfortunately parse-xml-fragment($feed) does not work since & is used in a >>> URL. Is there a easy way to do that? >>> >>> Thanks in advance >>> Leo >>> >>> _______________________________________________ >>> talk at x-query.com >>> http://x-query.com/mailman/listinfo/talk > _______________________________________________ > talk at x-query.com > http://x-query.com/mailman/listinfo/talk From leo.studer at varioweb.ch Sun Jun 21 13:15:51 2015 From: leo.studer at varioweb.ch (Leo Studer) Date: Sun, 21 Jun 2015 22:15:51 +0200 Subject: [xquery-talk] parsing xml fragments In-Reply-To: <69AB80D4-8C04-44EF-9C8F-7050401ACA44@varioweb.ch> References: <08D07B10-3740-4348-BD64-955E793ACF67@varioweb.ch> <0B4DA2E3-4D2C-4820-873C-1C048414A91A@exist-db.org> <69AB80D4-8C04-44EF-9C8F-7050401ACA44@varioweb.ch> Message-ID: I think this is a bug of parse-xml-fragment() since the string passed in $feed is a wellformed escaped xml fragment. The xQuery-processor is trying to replace & by & which makes no sense and produces like that an error ;-( What do the experts say ? Blessings Leo > On 21.06.2015, at 20:22, Leo Studer wrote: > > Yes, $feed contains the expected info, no namespace issue here? > > Try it out. > BaseX does not report an error however the code does not work and Saxon reports > > Engine name: Saxon-PE XQuery 9.6.0.5 > Severity: fatal > Description: FODC0006: First argument to parse-xml-fragment() is not a well-formed and namespace-well-formed XML fragment. XML parser reported: org.xml.sax.SAXParseException: The reference to entity "service" must end with the ';' delimiter. > > >> On 21.06.2015, at 19:10, Dannes Wessels > wrote: >> >> Does the doc()//item/... expression return anything? I expect a namespace issue here... >> >> Cheers >> >> Dannes >> >> >> -- >> www.exist-db.org >> >> On 21 Jun 2015, at 17:15, Leo Studer > wrote: >> >>> Hello >>> >>> I tried the following >>> >>> declare variable $feed := doc("http://www.meteotest.ch/meteotest-extras/rss/rss-sio.xml ")//item/description/string(); >>> >>> >>> { >>> parse-xml-fragment($feed)/*} >>> >>> >>> >>> to use the weather infos from this feed. >>> Unfortunately parse-xml-fragment($feed) does not work since & is used in a URL. Is there a easy way to do that? >>> >>> Thanks in advance >>> Leo >>> _______________________________________________ >>> talk at x-query.com >>> http://x-query.com/mailman/listinfo/talk _______________________________________________ >> talk at x-query.com >> http://x-query.com/mailman/listinfo/talk > > _______________________________________________ > talk at x-query.com > http://x-query.com/mailman/listinfo/talk -------------- next part -------------- An HTML attachment was scrubbed... URL: From leo.studer at varioweb.ch Sun Jun 21 13:33:39 2015 From: leo.studer at varioweb.ch (Leo Studer) Date: Sun, 21 Jun 2015 22:33:39 +0200 Subject: [xquery-talk] parsing xml fragments In-Reply-To: <55871E4E.3070801@oxygenxml.com> References: <08D07B10-3740-4348-BD64-955E793ACF67@varioweb.ch> <55871E4E.3070801@oxygenxml.com> Message-ID: Hi George thanks for your thoughts. I thought the same in the beginning. And when you look in the source $feed there it is escaped but parse-xml-fragment does the mess? Always Leo > On 21.06.2015, at 22:27, George Bina wrote: > > Hi Leo, > > You have ampersand unescaped: > > > >> >> { >> /parse-xml-fragment/(*$feed*)/*} >> >> >> >> to use the weather infos from this feed. >> Unfortunately /parse-xml-fragment/(*$feed*) does not work since & is >> used in a URL. Is there a easy way to do that? From davidc at nag.co.uk Sun Jun 21 13:47:44 2015 From: davidc at nag.co.uk (David Carlisle) Date: Sun, 21 Jun 2015 21:47:44 +0100 Subject: [xquery-talk] parsing xml fragments In-Reply-To: References: <08D07B10-3740-4348-BD64-955E793ACF67@varioweb.ch> <55871E4E.3070801@oxygenxml.com> Message-ID: <558722F0.300@nag.co.uk> On 21/06/2015 21:33, Leo Studer wrote: > Hi George > > thanks for your thoughts. I thought the same in the beginning. And > when you look in the source $feed there it is escaped but > parse-xml-fragment does the mess? > > Always Leo It looks to me as if the string is not well formed. You have essentially ]]> So the input XML document is well formed but the string you are passing to the xml parser is which is not well formed. the input should be ]]> If you know all your ampersands are not escaped, and you can't fix the source documents you could use a regexp-replace to escape them before parsing parse-xml-fragment(replace($feed,'&','&amp;')) David ________________________________ The Numerical Algorithms Group Ltd is a company registered in England and Wales with company number 1249803. The registered office is: Wilkinson House, Jordan Hill Road, Oxford OX2 8DR, United Kingdom. This e-mail has been scanned for all viruses by Microsoft Office 365. ________________________________ From leo.studer at varioweb.ch Sun Jun 21 14:32:16 2015 From: leo.studer at varioweb.ch (Leo Studer) Date: Sun, 21 Jun 2015 23:32:16 +0200 Subject: [xquery-talk] parsing xml fragments In-Reply-To: <558722F0.300@nag.co.uk> References: <08D07B10-3740-4348-BD64-955E793ACF67@varioweb.ch> <55871E4E.3070801@oxygenxml.com> <558722F0.300@nag.co.uk> Message-ID: <6377FD03-CF1F-4B0D-843B-865CA7101FAC@varioweb.ch> Hi David thanks for your input, which solves my problem in a easy (strange) way ;-) Always Leo > > ]]> > > If you know all your ampersands are not escaped, and you can't fix the > source documents you could use a regexp-replace to escape them before > parsing > > parse-xml-fragment(replace($feed,'&','&amp;')) > From jhunter at servlets.com Mon Jun 22 03:34:40 2015 From: jhunter at servlets.com (Jason Hunter) Date: Mon, 22 Jun 2015 18:34:40 +0800 Subject: [xquery-talk] Izzit Bcos I is functional? In-Reply-To: <8DB1A973-6CBF-482E-85AD-AF91DF0F2369@me.com> References: <8DB1A973-6CBF-482E-85AD-AF91DF0F2369@me.com> Message-ID: > DatasTax after 3 yearsof existence is at more then 300M revenue (and less investment from VCs). I was curious about this figure. Did DataStax really make it close to $300m in revenue? http://www.datanami.com/2014/09/04/datastax-nabs-106-million-sets-sites-international-expansion/ -- During that period, it more than doubled the number of employees to more than 350, and it increased its annual revenue run rate by more than 125 percent. ?The valuation of the company is over $830 million, which is more than double the valuation of the company 12 months ago,? Pfeil said. The privately held company doesn?t share revenue figures. -- If the company's valuation is $830m and it grew by 125% in the year before, then we can deduce revenue is nowhere close to $300m/yr. It wouldn't even be above $100m/yr. They raised $190m in VC so far. -jh- From wcandillon at gmail.com Mon Jun 22 05:23:30 2015 From: wcandillon at gmail.com (William Candillon) Date: Mon, 22 Jun 2015 14:23:30 +0200 Subject: [xquery-talk] [show xqt] A modern data warehouse, open source, written in JSONiq Message-ID: https://github.com/28msec/cellstore Written in 15k of lines JSONiq code (and 20k for the test suite), the CellStore is an implementation of a modern data warehousing paradigm designed by Ghislain Fourny (http://arxiv.org/pdf/1410.0600.pdf). Cell stores are an extremely efficient solution to perform analytical tasks on top of XML and JSON data lakes. Too often we see XML users trying to fit their data back into traditional OLAP solutions and it always breaks our hearts. We wanted to build OLAP commodities that directly work on top of data lakes. And the CellStore is what we came up with. The relational world has SQL for queries and OLAP for analytics. We have JSONiq/XQuery for queries and the CellStore for analytics. The cell store model defines the notion of cell as an atom of data. A cell contains a value and a set of dimensional coordinates that are string-value pairs. Cells can be stored on any type of physical storage. Whereas traditional analytical processing tools can only support hundreds of fixed dimensions and thus need to ETL the data to analyze, cell stores support an unbounded number of dimensions. There is no need for fixed hypercubes to be designed up front. Hypercubes are not the schema. Hypercubes are the queries. We're focused on financial use cases at the moment but the technology can be used for any vertical. Kind regards, William From dflorescu at me.com Mon Jun 22 09:20:07 2015 From: dflorescu at me.com (daniela florescu) Date: Mon, 22 Jun 2015 09:20:07 -0700 Subject: [xquery-talk] MarkLogic is reinventing XQuery (AGAIN ! ) Message-ID: <1EA2FD45-AB7F-410A-A1FC-B08B8EF70E12@me.com> Good job, guys, seems that you, at MarkLogic, you are re-inventing XQuery and it?s advantages ?...every week ! :-)) https://www.linkedin.com/pulse/five-so-stupid-marklogic-tricks-kurt-cagle?trk=hp-feed-article-title-like I give a special cookie to someone who spots the non-standard XQuery features in this article ?something actually INVENTED by MarkLogic. Yet the name of XQuery is ?. nowhere to be seen. Guy, please for God?s sake? have some decency. This is not your work?. it?s the work of tens of people from tons of companies. A little bit of decency?..thanks Dana -------------- next part -------------- An HTML attachment was scrubbed... URL: From dflorescu at me.com Mon Jun 22 09:25:27 2015 From: dflorescu at me.com (daniela florescu) Date: Mon, 22 Jun 2015 09:25:27 -0700 Subject: [xquery-talk] Izzit Bcos I is functional? In-Reply-To: References: <8DB1A973-6CBF-482E-85AD-AF91DF0F2369@me.com> Message-ID: Jason, I have their financial analysis slides, but honestly I am not sure if I am supposed to make them public. (I guess you just have to wait until THEY make them public). About the valuation, I have no idea. Not everybody likes to have a 10X valuation, which is clearly a sign of tech bubble over-evaluation. (and actually such over-evaluations can be very harmful to companies later on if things don?t turn up as expected) But I do not know exactly the story with their latest evaluation. Best Dana > On Jun 22, 2015, at 3:34 AM, Jason Hunter wrote: > >> DatasTax after 3 yearsof existence is at more then 300M revenue (and less investment from VCs). > > I was curious about this figure. Did DataStax really make it close to $300m in revenue? > > http://www.datanami.com/2014/09/04/datastax-nabs-106-million-sets-sites-international-expansion/ > > -- > During that period, it more than doubled the number of employees to more than 350, and it increased its annual revenue run rate by more than 125 percent. ?The valuation of the company is over $830 million, which is more than double the valuation of the company 12 months ago,? Pfeil said. The privately held company doesn?t share revenue figures. > -- > > If the company's valuation is $830m and it grew by 125% in the year before, then we can deduce revenue is nowhere close to $300m/yr. It wouldn't even be above $100m/yr. > > They raised $190m in VC so far. > > -jh- > > > _______________________________________________ > talk at x-query.com > http://x-query.com/mailman/listinfo/talk From dflorescu at me.com Mon Jun 22 10:00:16 2015 From: dflorescu at me.com (daniela florescu) Date: Mon, 22 Jun 2015 10:00:16 -0700 Subject: [xquery-talk] MarkLogic is reinventing XQuery (AGAIN ! ) In-Reply-To: <1EA2FD45-AB7F-410A-A1FC-B08B8EF70E12@me.com> References: <1EA2FD45-AB7F-410A-A1FC-B08B8EF70E12@me.com> Message-ID: I stand corrected. Someone DID find something non-XQuery standard in there, and reclaimed the cookie. There is an ?unquote? function somewhere there, and I don?t THINK this is standard. I guess that MarkLogic DID invent something after all !! Good job, MarkLogic. Keep up the good work ! :-))) Dana > On Jun 22, 2015, at 9:20 AM, daniela florescu wrote: > > Good job, guys, seems that you, at MarkLogic, you are re-inventing XQuery > and it?s advantages ?...every week ! :-)) > > https://www.linkedin.com/pulse/five-so-stupid-marklogic-tricks-kurt-cagle?trk=hp-feed-article-title-like > > I give a special cookie to someone who spots the non-standard XQuery features in this article > ?something actually INVENTED by MarkLogic. > > Yet the name of XQuery is ?. nowhere to be seen. > > Guy, please for God?s sake? have some decency. > > This is not your work?. it?s the work of tens of people from tons of companies. > > A little bit of decency?..thanks > Dana > _______________________________________________ > talk at x-query.com > http://x-query.com/mailman/listinfo/talk -------------- next part -------------- An HTML attachment was scrubbed... URL: From dflorescu at me.com Mon Jun 22 10:18:36 2015 From: dflorescu at me.com (daniela florescu) Date: Mon, 22 Jun 2015 10:18:36 -0700 Subject: [xquery-talk] MarkLogic is reinventing XQuery (AGAIN ! ) In-Reply-To: References: <1EA2FD45-AB7F-410A-A1FC-B08B8EF70E12@me.com> Message-ID: <6CDB971F-6189-469F-A64A-2B5BC1BD488F@me.com> And a note for Kurt Cagle. Dear Kurt, Just because you can it doesn?t mean you should. ( ? use linkedin as WMD ? Weapon of Mass Disinformation). https://www.linkedin.com/pulse/linkedin-has-become-wmd-philippe-collard?trk=hp-feed-article-title-publish It?s beneath you and your scientific abilities. It?s enough garbage out there already on the web, let?s not add to it, please. Thank you, best regards Dana > On Jun 22, 2015, at 10:00 AM, daniela florescu wrote: > > I stand corrected. Someone DID find something non-XQuery standard in there, and reclaimed the > cookie. > > There is an ?unquote? function somewhere there, and I don?t THINK this is standard. > > I guess that MarkLogic DID invent something after all !! > > Good job, MarkLogic. Keep up the good work ! :-))) > Dana > > > >> On Jun 22, 2015, at 9:20 AM, daniela florescu > wrote: >> >> Good job, guys, seems that you, at MarkLogic, you are re-inventing XQuery >> and it?s advantages ?...every week ! :-)) >> >> https://www.linkedin.com/pulse/five-so-stupid-marklogic-tricks-kurt-cagle?trk=hp-feed-article-title-like >> >> I give a special cookie to someone who spots the non-standard XQuery features in this article >> ?something actually INVENTED by MarkLogic. >> >> Yet the name of XQuery is ?. nowhere to be seen. >> >> Guy, please for God?s sake? have some decency. >> >> This is not your work?. it?s the work of tens of people from tons of companies. >> >> A little bit of decency?..thanks >> Dana >> _______________________________________________ >> talk at x-query.com >> http://x-query.com/mailman/listinfo/talk > > _______________________________________________ > talk at x-query.com > http://x-query.com/mailman/listinfo/talk -------------- next part -------------- An HTML attachment was scrubbed... URL: From ihe.onwuka at gmail.com Tue Jun 23 00:15:54 2015 From: ihe.onwuka at gmail.com (Ihe Onwuka) Date: Tue, 23 Jun 2015 03:15:54 -0400 Subject: [xquery-talk] Does XQuery fit anywhere in this landscape. Message-ID: https://www.youtube.com/watch?v=9K0SWs1mOD0 By implication it puts the kibosh on SQL as the basis of a solution for the future. -------------- next part -------------- An HTML attachment was scrubbed... URL: From dflorescu at me.com Tue Jun 23 08:51:54 2015 From: dflorescu at me.com (daniela florescu) Date: Tue, 23 Jun 2015 08:51:54 -0700 Subject: [xquery-talk] Does XQuery fit anywhere in this landscape. In-Reply-To: References: Message-ID: Ihe, I had discussions with Michael Stonebreaker for 20 years about about the fact that XML ?exists? or not. With Jim Gray too, before he disappeared. They were both extremely supportive for me, yet were both thinking that I am crazy to waste my research career on XML. Stonebreaker?s opinion: he doesn?t believe that XML ?exists? in industry. So he will not mention it, because it doesn?t exist :-) But you have to remember that Stonebreaker is a database person. Probably he will not understand the facet of XML which is ?XML as documents?. It took me and the other database people involved in XQuery years before we swallowed it. (Don Chamberlin of SQL fame famously once said ?who in the world would care about such a corner case as mixed content !?"). Don?t blame the database people that they don?t ?get? XML. On one hand, it has never been explained to them properly. And again, Stonebreaker, being a database person, he will look at ?XML as data? aspect of the story. And this today is INDEED non-existing in industry, or almost. Or, when t is, it is mostly for log analysis. ============ JSON will completely change the landscape, in surprising ways, that none of us can predict. And no, I trust that Michael Stonebreaker is too smart to believe that SQL is a solution to process JSON. But time will tell. Best regards Dana > On Jun 23, 2015, at 12:15 AM, Ihe Onwuka wrote: > > https://www.youtube.com/watch?v=9K0SWs1mOD0 > > By implication it puts the kibosh on SQL as the basis of a solution for the future. > _______________________________________________ > talk at x-query.com > http://x-query.com/mailman/listinfo/talk -------------- next part -------------- An HTML attachment was scrubbed... URL: From ihe.onwuka at gmail.com Tue Jun 23 09:14:50 2015 From: ihe.onwuka at gmail.com (Ihe Onwuka) Date: Tue, 23 Jun 2015 12:14:50 -0400 Subject: [xquery-talk] Does XQuery fit anywhere in this landscape. In-Reply-To: References: Message-ID: Well he didn't comment on SQL for JSON per se but saying that RDBMS are sub-optimal for everything is a tacit repudiation of SQL is it not? He buys into the notion that there will be swarms of data scientists doing clever things with data which will need a different language. I am continually surprised that people this smart believe that there is such a pool of people to draw from. He is right that statistical packages suck at data management but that won't isn't going to deter the R community. Do you see XQuery fitting anywhere in this vision. It has potential as a pipeling technology as does for that matter SQL. I think it will always be problematic to do analytics on the source data because it is too dirty. On Tue, Jun 23, 2015 at 11:51 AM, daniela florescu wrote: > Ihe, > > > I had discussions with Michael Stonebreaker for 20 years about about the > fact that > XML ?exists? or not. With Jim Gray too, before he disappeared. They were > both extremely > supportive for me, yet were both thinking that I am crazy to waste my > research career on XML. > > Stonebreaker?s opinion: he doesn?t believe that XML ?exists? in industry. > > So he will not mention it, because it doesn?t exist :-) > > But you have to remember that Stonebreaker is a database person. Probably > he will not > understand the facet of XML which is ?XML as documents?. It took me and > the other database > people involved in XQuery years before we swallowed it. (Don Chamberlin of > SQL fame > famously once said ?who in the world would care about such a corner case > as mixed content !?"). > > Don?t blame the database people that they don?t ?get? XML. On one hand, it > has never been explained > to them properly. > > And again, Stonebreaker, being a database person, he will look at ?XML as > data? aspect of the story. > And this today is INDEED non-existing in industry, or almost. Or, when t > is, it is mostly for log analysis. > > ============ > > JSON will completely change the landscape, in surprising ways, that none > of us can predict. > > And no, I trust that Michael Stonebreaker is too smart to believe that SQL > is a solution to process JSON. > > But time will tell. > > Best regards > Dana > > > > > > On Jun 23, 2015, at 12:15 AM, Ihe Onwuka wrote: > > https://www.youtube.com/watch?v=9K0SWs1mOD0 > > By implication it puts the kibosh on SQL as the basis of a solution for > the future. > _______________________________________________ > talk at x-query.com > http://x-query.com/mailman/listinfo/talk > > > -------------- next part -------------- An HTML attachment was scrubbed... URL: From pavel.velikhov at gmail.com Tue Jun 23 09:28:56 2015 From: pavel.velikhov at gmail.com (Pavel Velikhov) Date: Tue, 23 Jun 2015 19:28:56 +0300 Subject: [xquery-talk] Does XQuery fit anywhere in this landscape. In-Reply-To: References: Message-ID: I see a bit use-case for JSONiq every day: its data integration, cleaning, sanity checking, publishing. More and more people are building data-driven products, i.e. data that is productised in APIs and then used in simple Web Apps. They start with dirty data that nicely fits into JSON paradigm, and then goes thought lots of stages, before it?s exported by API, this time definitely in JSON format. There are many steps to collect, clean, refine, transform, merge, etc., and all of them will need to operate on the structure of the data, not just the fields. So schemas are a must, all sorts of schema operations are extremely useful (compute statistics on what the common values for such and such fields are, how many JSONs contain this field)?. Right now there are no good tools for doing this, so actually I?m trying to start such a project (no fancy JSONiq processing, just basic interpreter, but with schema operations). > On 23 Jun 2015, at 19:14, Ihe Onwuka wrote: > > Well he didn't comment on SQL for JSON per se but saying that RDBMS are sub-optimal for everything is a tacit repudiation of SQL is it not? > > He buys into the notion that there will be swarms of data scientists doing clever things with data which will need a different language. I am continually surprised that people this smart believe that there is such a pool of people to draw from. > > He is right that statistical packages suck at data management but that won't isn't going to deter the R community. > > Do you see XQuery fitting anywhere in this vision. It has potential as a pipeling technology as does for that matter SQL. I think it will always be problematic to do analytics on the source data because it is too dirty. > > On Tue, Jun 23, 2015 at 11:51 AM, daniela florescu > wrote: > Ihe, > > > I had discussions with Michael Stonebreaker for 20 years about about the fact that > XML ?exists? or not. With Jim Gray too, before he disappeared. They were both extremely > supportive for me, yet were both thinking that I am crazy to waste my research career on XML. > > Stonebreaker?s opinion: he doesn?t believe that XML ?exists? in industry. > > So he will not mention it, because it doesn?t exist :-) > > But you have to remember that Stonebreaker is a database person. Probably he will not > understand the facet of XML which is ?XML as documents?. It took me and the other database > people involved in XQuery years before we swallowed it. (Don Chamberlin of SQL fame > famously once said ?who in the world would care about such a corner case as mixed content !?"). > > Don?t blame the database people that they don?t ?get? XML. On one hand, it has never been explained > to them properly. > > And again, Stonebreaker, being a database person, he will look at ?XML as data? aspect of the story. > And this today is INDEED non-existing in industry, or almost. Or, when t is, it is mostly for log analysis. > > ============ > > JSON will completely change the landscape, in surprising ways, that none of us can predict. > > And no, I trust that Michael Stonebreaker is too smart to believe that SQL is a solution to process JSON. > > But time will tell. > > Best regards > Dana > > > > > >> On Jun 23, 2015, at 12:15 AM, Ihe Onwuka > wrote: >> >> https://www.youtube.com/watch?v=9K0SWs1mOD0 >> >> By implication it puts the kibosh on SQL as the basis of a solution for the future. >> _______________________________________________ >> talk at x-query.com >> http://x-query.com/mailman/listinfo/talk > > _______________________________________________ > talk at x-query.com > http://x-query.com/mailman/listinfo/talk ? ?????????, ????? ??????? pavel.velikhov at gmail.com -------------- next part -------------- An HTML attachment was scrubbed... URL: From dflorescu at me.com Tue Jun 23 09:52:44 2015 From: dflorescu at me.com (daniela florescu) Date: Tue, 23 Jun 2015 09:52:44 -0700 Subject: [xquery-talk] Does XQuery fit anywhere in this landscape. In-Reply-To: References: Message-ID: > On Jun 23, 2015, at 9:14 AM, Ihe Onwuka wrote: > > Well he didn't comment on SQL for JSON per se but saying that RDBMS are sub-optimal for everything is a tacit repudiation of SQL is it not? No, because he said exploitively that the *internals* of a database will be different (columnar, main memory, streaming, etc)?.. the programming language will STILL be SQL. Or at least for all those databases for whom the data model is STILL relational. > > He buys into the notion that there will be swarms of data scientists doing clever things with data which will need a different language. Yes. SQL clearly doesn?t solve the R use cases. So yes, R is on the ?acceptable OTHER languages? list. But that?s not clear that what we (aka the XML community see) as ?normal? data processing use cases will be considered necessary use cases for the JSON/NoSQL community. E.g. scanning the data and automatically extracting a schema. Is this an acceptable use case for JSON ? Or not ? If yes, then XQuery has a chance, because XQuery can do that and SQL cannot. If no, people will stick to what they know : SQL. > > He is right that statistical packages suck at data management but that won't isn't going to deter the R community. Yes, the R implementations (I looked at them in details about 2 years ago) have NO IDEA about how to deal with large volumes of data, so probably a mix between data technologies and database technologies is necessary. However, don?t underestimate companies like Oracle. They are not dummies, and the know what the market wants. R is supported natively inside the Oracle database now. I think that Stonebreaker exaggerates when he says that relational databases will disappear in 10 years. Well? I don?t think this will happen so quickly. > > Do you see XQuery fitting anywhere in this vision. It has potential as a pipeling technology as does for that matter SQL. I think it will always be problematic to do analytics on the source data because it is too dirty. XQuery COULD be a very good ?glue? language between data in various formats (CSV, Excel, PDF, HTML, XML, JSON, relational, whatever). But I say ?COULD? not ?CAN?. It needs many extensions to be good at that: scripting, support for JSON, modules to support a variety of data formats and data processing services. Best regards Dana P.S. > I am continually surprised that people this smart believe that there is such a pool of data scientists people to draw from. Me too. I fell down from my chair when I saw the article saying that US needs 5 million data scientists in the next 2 years, aka, about 5% of the US working population. Not sure if this for laughing, or for crying. [[ aka, we will not have cashiers at Safeway anymore ?cause they are all data scientists?.]] Someone up there doing the math in this article doesn?t understand jack nothing about numbers and statistics ??. And all this while: http://www.nature.com/news/irreproducible-biology-research-costs-put-at-28-billion-per-year-1.17711?utm_content=buffer95bfb&utm_medium=social&utm_source=linkedin.com&utm_campaign=buffer God knows how many medicines are wrongly given to sick people, because nobody knows how to do a proper case study ? REALLY scary ? but that?s another discussion. Again the same discussion comes up: DON?T look for 5 million data scientists. Just do with a smaller number of smart ones, but GIVE THEM BETTER TOOLS and AUTOMATIZE THE PROCESS. But hey, how can you stop such a wold wide enthusiasm for ?data scientists? !?? Logic doesn?t do it?. > > On Tue, Jun 23, 2015 at 11:51 AM, daniela florescu > wrote: > Ihe, > > > I had discussions with Michael Stonebreaker for 20 years about about the fact that > XML ?exists? or not. With Jim Gray too, before he disappeared. They were both extremely > supportive for me, yet were both thinking that I am crazy to waste my research career on XML. > > Stonebreaker?s opinion: he doesn?t believe that XML ?exists? in industry. > > So he will not mention it, because it doesn?t exist :-) > > But you have to remember that Stonebreaker is a database person. Probably he will not > understand the facet of XML which is ?XML as documents?. It took me and the other database > people involved in XQuery years before we swallowed it. (Don Chamberlin of SQL fame > famously once said ?who in the world would care about such a corner case as mixed content !?"). > > Don?t blame the database people that they don?t ?get? XML. On one hand, it has never been explained > to them properly. > > And again, Stonebreaker, being a database person, he will look at ?XML as data? aspect of the story. > And this today is INDEED non-existing in industry, or almost. Or, when t is, it is mostly for log analysis. > > ============ > > JSON will completely change the landscape, in surprising ways, that none of us can predict. > > And no, I trust that Michael Stonebreaker is too smart to believe that SQL is a solution to process JSON. > > But time will tell. > > Best regards > Dana > > > > > >> On Jun 23, 2015, at 12:15 AM, Ihe Onwuka > wrote: >> >> https://www.youtube.com/watch?v=9K0SWs1mOD0 >> >> By implication it puts the kibosh on SQL as the basis of a solution for the future. >> _______________________________________________ >> talk at x-query.com >> http://x-query.com/mailman/listinfo/talk > -------------- next part -------------- An HTML attachment was scrubbed... URL: From mike at saxonica.com Tue Jun 23 10:04:14 2015 From: mike at saxonica.com (Michael Kay) Date: Tue, 23 Jun 2015 18:04:14 +0100 Subject: [xquery-talk] Does XQuery fit anywhere in this landscape. In-Reply-To: References: Message-ID: <43A05E4A-CA57-4563-A988-922A055EF70B@saxonica.com> > > Don?t blame the database people that they don?t ?get? XML. On one hand, it has never been explained > to them properly. > Long before XML (about 1990, I think) I submitted a VLDB paper about a database/repository holding software engineering artifacts whose structure/schema was defined in BNF. Two of the reviewers gave it 9/10, two of them gave it 2/10. So yes: the traditional database research community, of whom Stonebraker was for many years the high priest, has problems understanding data outside their traditional customer/orders/suppliers domain. Michael Kay Saxonica From dflorescu at me.com Tue Jun 23 10:16:34 2015 From: dflorescu at me.com (daniela florescu) Date: Tue, 23 Jun 2015 10:16:34 -0700 Subject: [xquery-talk] Does XQuery fit anywhere in this landscape. In-Reply-To: <43A05E4A-CA57-4563-A988-922A055EF70B@saxonica.com> References: <43A05E4A-CA57-4563-A988-922A055EF70B@saxonica.com> Message-ID: <0AE334D4-CFE8-4F75-A4F0-FEA23A66FEBC@me.com> > On Jun 23, 2015, at 10:04 AM, Michael Kay wrote: > >> >> Don?t blame the database people that they don?t ?get? XML. On one hand, it has never been explained >> to them properly. >> > > Long before XML (about 1990, I think) I submitted a VLDB paper about a database/repository holding software engineering artifacts whose structure/schema was defined in BNF. Two of the reviewers gave it 9/10, two of them gave it 2/10. So yes: the traditional database research community, of whom Stonebraker was for many years the high priest, has problems understanding data outside their traditional customer/orders/suppliers domain. Yes, Michael, you are right. I was for many years one of ?them". It wasn?t easy for me to understand the ?other? side of the story. (and with me, many other database people like Don Chamberlin, etc) This mixture of knowledge and mixture of communities with strong beliefs is not easy to do AT ALL. That?s why I don?t expect miracles and I don?t expect masses of database people to suddenly see the ?light? and suddenly jump on XQuery or JSONiq. What WILL convince them though is a strong use case, a vertical where tons of money can be made. Think AI/machine learning. For how many decades those guys were working in their corner, ignored and humored ??until SUDDENLY, Google realized that they can make LOTS OF MONEY with their work !? What XQuery or JSONiq need right now are strong use cases. Stuff that can be done with XQuery or JSONiq, but cannot be done otherwise. Best regards Dana From dflorescu at me.com Tue Jun 23 10:38:00 2015 From: dflorescu at me.com (daniela florescu) Date: Tue, 23 Jun 2015 10:38:00 -0700 Subject: [xquery-talk] Does XQuery fit anywhere in this landscape. In-Reply-To: <43A05E4A-CA57-4563-A988-922A055EF70B@saxonica.com> References: <43A05E4A-CA57-4563-A988-922A055EF70B@saxonica.com> Message-ID: <4BE95FBD-AE3F-40A1-B4BA-2DF4A3D61ABC@me.com> > > Long before XML (about 1990, I think) I submitted a VLDB paper about a database/repository holding software engineering artifacts whose structure/schema was defined in BNF. Two of the reviewers gave it 9/10, two of them gave it 2/10. So yes: the traditional database research community, of whom Stonebraker was for many years the high priest, has problems understanding data outside their traditional customer/orders/suppliers domain. There is something else Michael. Unfortunately, your ideas were way TOO EARLY for people to understand them. As they say in business: ?being too early is the same of being wrong?. In business timing is everything. (and research in CS is often a comic parody of the industry, not a real scientific field..) The questions are: 1. if you take the exact same paper and submit it today to VLDB, will they understand it now ? (my bet is STILL not) 2. if not VLDB, is there a community who does understand it ? (my bet is JSON community is still too young to get it, unfortunately) If not those, who else ? Which community, or which vertical WOULD get that paper now ? Dana From dflorescu at me.com Tue Jun 23 10:43:30 2015 From: dflorescu at me.com (daniela florescu) Date: Tue, 23 Jun 2015 10:43:30 -0700 Subject: [xquery-talk] Does XQuery fit anywhere in this landscape. In-Reply-To: References: Message-ID: Me and you both, Pavel. But remember, we both worked in XML data processing for 15 years at least. Our understanding of processing of semi-structured data is very different from the ?normal? data processing people. But maybe this (XQuery) community can put together the efforts into some common result ? Best regards Dana > On Jun 23, 2015, at 9:28 AM, Pavel Velikhov wrote: > > I see a bit use-case for JSONiq every day: its data integration, cleaning, sanity checking, publishing. > More and more people are building data-driven products, i.e. data that is productised in APIs and then used in simple Web Apps. > They start with dirty data that nicely fits into JSON paradigm, and then goes thought lots of stages, before it?s exported by API, this time definitely in JSON format. > There are many steps to collect, clean, refine, transform, merge, etc., and all of them will need to operate on the structure of the data, not just the fields. > So schemas are a must, all sorts of schema operations are extremely useful (compute statistics on what the common values for such and such fields are, how many JSONs contain this field)?. > > Right now there are no good tools for doing this, so actually I?m trying to start such a project (no fancy JSONiq processing, just basic interpreter, but with schema operations). > >> On 23 Jun 2015, at 19:14, Ihe Onwuka > wrote: >> >> Well he didn't comment on SQL for JSON per se but saying that RDBMS are sub-optimal for everything is a tacit repudiation of SQL is it not? >> >> He buys into the notion that there will be swarms of data scientists doing clever things with data which will need a different language. I am continually surprised that people this smart believe that there is such a pool of people to draw from. >> >> He is right that statistical packages suck at data management but that won't isn't going to deter the R community. >> >> Do you see XQuery fitting anywhere in this vision. It has potential as a pipeling technology as does for that matter SQL. I think it will always be problematic to do analytics on the source data because it is too dirty. >> >> On Tue, Jun 23, 2015 at 11:51 AM, daniela florescu > wrote: >> Ihe, >> >> >> I had discussions with Michael Stonebreaker for 20 years about about the fact that >> XML ?exists? or not. With Jim Gray too, before he disappeared. They were both extremely >> supportive for me, yet were both thinking that I am crazy to waste my research career on XML. >> >> Stonebreaker?s opinion: he doesn?t believe that XML ?exists? in industry. >> >> So he will not mention it, because it doesn?t exist :-) >> >> But you have to remember that Stonebreaker is a database person. Probably he will not >> understand the facet of XML which is ?XML as documents?. It took me and the other database >> people involved in XQuery years before we swallowed it. (Don Chamberlin of SQL fame >> famously once said ?who in the world would care about such a corner case as mixed content !?"). >> >> Don?t blame the database people that they don?t ?get? XML. On one hand, it has never been explained >> to them properly. >> >> And again, Stonebreaker, being a database person, he will look at ?XML as data? aspect of the story. >> And this today is INDEED non-existing in industry, or almost. Or, when t is, it is mostly for log analysis. >> >> ============ >> >> JSON will completely change the landscape, in surprising ways, that none of us can predict. >> >> And no, I trust that Michael Stonebreaker is too smart to believe that SQL is a solution to process JSON. >> >> But time will tell. >> >> Best regards >> Dana >> >> >> >> >> >>> On Jun 23, 2015, at 12:15 AM, Ihe Onwuka > wrote: >>> >>> https://www.youtube.com/watch?v=9K0SWs1mOD0 >>> >>> By implication it puts the kibosh on SQL as the basis of a solution for the future. >>> _______________________________________________ >>> talk at x-query.com >>> http://x-query.com/mailman/listinfo/talk >> >> _______________________________________________ >> talk at x-query.com >> http://x-query.com/mailman/listinfo/talk > > ? ?????????, > ????? ??????? > pavel.velikhov at gmail.com -------------- next part -------------- An HTML attachment was scrubbed... URL: From dflorescu at me.com Tue Jun 23 11:04:20 2015 From: dflorescu at me.com (daniela florescu) Date: Tue, 23 Jun 2015 11:04:20 -0700 Subject: [xquery-talk] actually, nobody KNOWS about XQuery .... Message-ID: Ihe, you asked why XQuery is not more popular. Here is another striking answer to your question: NOBODY KNOWS IT EXISTS. Just look at this example. https://www.linkedin.com/pulse/sql-vs-discrepancy-somil-asthana?trk=hp-feed-article-title-like I quote: "Indisputably, there may be people who are working on Non Relational Algebra and Non Tuple Relational Calculus, its just that we do not know them.? [[[Can someone just answer this guy, so I don?t have to insult him/her !? Because I feel a really strong urge?.I?ll try to breathe and do some meditation?.]]] In fact, I know that this is not his/her limitation. It?s our OWN failure to explain to the world what XQuery is, what it does, and what is good at. Best regards Dana P.S. And after that, please DON?T ask me why I am SO pissed off at MarkLogic who pretend they never ate the garlic, not does their mouth smell of garlic?.. They MADE all their money out of the power of XQuery (expressiveness, productivity, etc), yet they pretend they?ve never heard of it?. That?s something that REALLY gets me angry. And this will come back to bait them on the business side very badly too. Oracle would have NEVER done the same thing about SQL?..just saying. -------------- next part -------------- An HTML attachment was scrubbed... URL: From ihe.onwuka at gmail.com Tue Jun 23 12:13:53 2015 From: ihe.onwuka at gmail.com (Ihe Onwuka) Date: Tue, 23 Jun 2015 15:13:53 -0400 Subject: [xquery-talk] actually, nobody KNOWS about XQuery .... In-Reply-To: References: Message-ID: On Tue, Jun 23, 2015 at 2:04 PM, daniela florescu wrote: > Ihe, > > you asked why XQuery is not more popular. > > I'd rather put it that I asked why people are so resistant to using it for the domain for which it is optimal (querying semi-structured data). > Here is another striking answer to your question: NOBODY KNOWS IT EXISTS. > > Just look at this example. > > > https://www.linkedin.com/pulse/sql-vs-discrepancy-somil-asthana?trk=hp-feed-article-title-like > > I quote: "Indisputably, there may be people who are working on Non > Relational > Algebra and Non Tuple Relational Calculus, its just that we do not know > them.? > > This is where I take slight issue with G Ken Holman's post last week on learning stuff, 99% of which I wholeheartedly agree with. He said university taught him how to learn not what to learn but I think going to university should give you an awareness of what you ought to know, ergo it should have some bearing on what to learn. I did my degree as a mature student. Before university I would approach a problem by solving it the tools I already knew, hence I wrote a validation test harness in VBScript that I later learned could have been encoded as an XML Schema. I also learned the skill of learning what not to learn. Before university I would learn a tool only to subsequently reflect that it is not something that I shouldn't be using. Now I can sense it early on. I bought Norm Matloff's the Art of R and by chapter 2 it was on it's way back to Amazon Trade-Ins because it was stark staring obvious to me that this might be a language for statisticians but it certainly wasn't one for a computer scientist. This excellent talk pretty much ratifies all my hunches and I am chuffed that I did not have to discover these things experentially. https://www.youtube.com/watch?v=6S9r_YbqHy8 It worries me when I hear that the likes of Oracle and (I think) IBM are going to start pushing this language. So returning to this chap. My initial instinct is that he is one of the many statisticians and/or accountants running around telling people how to program (see previous remark about how IT has presided over it's amateurisation). Alas his educational background is in computing so what we have is a well educated fellow who lacks awareness of what he ought to know. This should not be that surprising though as people in this industry are notorious for letting others do their thinking for them - hence Thoughtworks have an audience for their pontifications about what technologies should be adopted when and other self appointed guru's regularly surface on the WMD site taking on subjects way beyond the realm of their actual expertise to a receptive uncritical audience. > [[[Can someone just answer this guy, so I don?t have to insult him/her !? > Because I feel a really strong urge?.I?ll try to breathe and do some > meditation?.]]] > > In fact, I know that this is not his/her limitation. > > It?s our OWN failure to explain to the world what XQuery is, what it does, > and what is good at. > > For a language that was not meant to be specific to XML it got too tightly coupled to it's initial concrete actualisation. Now that association is a liability because of the effectiveness of JSON propaganda which keeps giving the impression that you don't need any other format to an industry in which too many people are happy to let others do their thinking for them. Additionally too many devs are beholden to the Jedi Mind Trick of learning and adopting language libraries without realising that for the same effort they could learn a DSL that would be much more powerful tool for the job at hand (and I don't just mean that wrt to data management). > Best regards > Dana > > > P.S. And after that, please DON?T ask me why I am SO pissed off at > MarkLogic who pretend they never ate the garlic, not does > their mouth smell of garlic?.. > > They MADE all their money out of the power of XQuery (expressiveness, > productivity, etc), yet they pretend they?ve never heard of it?. > > That?s something that REALLY gets me angry. > > And this will come back to bait them on the business side very badly too. > > Oracle would have NEVER done the same thing about SQL?..just saying. > > Quite possibly. I mentioned before that IBM never bet against SQL when it was pushing DB2 so it would not surprise me if MarkLogic's stance manifests as a strategic error. -------------- next part -------------- An HTML attachment was scrubbed... URL: From dflorescu at me.com Tue Jun 23 14:31:19 2015 From: dflorescu at me.com (daniela florescu) Date: Tue, 23 Jun 2015 14:31:19 -0700 Subject: [xquery-talk] SQL vs. XQuery (aka FOR vs FROM and RETURn vs. SELECT) In-Reply-To: References: Message-ID: <0F4FA788-3CB0-4FDC-BAEE-322147809174@me.com> One thing that did strike me is the link cited in one of the comments about this article: http://queue.acm.org/detail.cfm?id=1961297 Just look at the examples. Does everyone see what I see !? :-) Those are just FLWOR expressions, with FOR spelled as FROM and RETURN spelled as SELECT. Can we PLEASE add those as synonyms in the XQuery grammar before you close XQuery 3.1 !? Otherwise we?ll hear for another 100 years that XQuery has nothing to do with SQL while THIS language describe in this paper DOES. (sic!) It?s dumb, but that?s how it is. Pretty please !??? Thanks Dana > On Jun 23, 2015, at 11:04 AM, daniela florescu wrote: > > Ihe, > > you asked why XQuery is not more popular. > > Here is another striking answer to your question: NOBODY KNOWS IT EXISTS. > > Just look at this example. > > https://www.linkedin.com/pulse/sql-vs-discrepancy-somil-asthana?trk=hp-feed-article-title-like > > I quote: "Indisputably, there may be people who are working on Non Relational > Algebra and Non Tuple Relational Calculus, its just that we do not know them.? > > [[[Can someone just answer this guy, so I don?t have to insult him/her !? > Because I feel a really strong urge?.I?ll try to breathe and do some meditation?.]]] > > In fact, I know that this is not his/her limitation. > > It?s our OWN failure to explain to the world what XQuery is, what it does, and what is good at. > > Best regards > Dana > > > P.S. And after that, please DON?T ask me why I am SO pissed off at MarkLogic who pretend they never ate the garlic, not does > their mouth smell of garlic?.. > > They MADE all their money out of the power of XQuery (expressiveness, productivity, etc), yet they pretend they?ve never heard of it?. > > That?s something that REALLY gets me angry. > > And this will come back to bait them on the business side very badly too. > > Oracle would have NEVER done the same thing about SQL?..just saying. > > > > -------------- next part -------------- An HTML attachment was scrubbed... URL: From dflorescu at me.com Tue Jun 23 14:56:24 2015 From: dflorescu at me.com (daniela florescu) Date: Tue, 23 Jun 2015 14:56:24 -0700 Subject: [xquery-talk] SQL vs. XQuery (aka FOR vs FROM and RETURn vs. SELECT) In-Reply-To: References: <0F4FA788-3CB0-4FDC-BAEE-322147809174@me.com> Message-ID: Pavel, I hope you don?t mind that I forward your personal email to the main list. Thanks for the links. Yes, I am of course aware of the history of it, but I don?t think everyone else is. (I even gave feedback to Erik Meijer before he submitted this proposal to Bill Gates?. and I lost a beer with him because we bet who among the two of us knows XML Schema better ? and he did :-). This reinforces the ideas that: 1. the principles of XQuery are orthogonal to XML itself and 2. spelling FROM and SELECT seems to matter to people A LOT. Best regards Dana > On Jun 23, 2015, at 2:44 PM, Pavel Minaev wrote: > > FWIW, "this language" is actually LINQ: > > https://msdn.microsoft.com/en-us/library/bb397896(v=vs.140).aspx > > Which, ironically, came out of an earlier Microsoft project called C? (and specifically, the subset of it called X#), which was basically an attempt to graft a subset of XQuery onto C#: > > https://msdn.microsoft.com/en-us/library/ms974195.aspx > > It became LINQ after it dropped ties to XDM and was generalized to operate on arbitrary CLI object graphs instead. > > On Tue, Jun 23, 2015 at 2:31 PM, daniela florescu > wrote: > One thing that did strike me is the link cited in one of the comments about this article: > > http://queue.acm.org/detail.cfm?id=1961297 > > Just look at the examples. > > Does everyone see what I see !? :-) > > Those are just FLWOR expressions, with FOR spelled as FROM and RETURN spelled > as SELECT. > > Can we PLEASE add those as synonyms in the XQuery grammar before you close XQuery 3.1 !? > > Otherwise we?ll hear for another 100 years that XQuery has nothing to do with SQL while THIS language > describe in this paper DOES. (sic!) > > It?s dumb, but that?s how it is. > > Pretty please !??? > > Thanks > Dana > > > >> On Jun 23, 2015, at 11:04 AM, daniela florescu > wrote: >> >> Ihe, >> >> you asked why XQuery is not more popular. >> >> Here is another striking answer to your question: NOBODY KNOWS IT EXISTS. >> >> Just look at this example. >> >> https://www.linkedin.com/pulse/sql-vs-discrepancy-somil-asthana?trk=hp-feed-article-title-like >> >> I quote: "Indisputably, there may be people who are working on Non Relational >> Algebra and Non Tuple Relational Calculus, its just that we do not know them.? >> >> [[[Can someone just answer this guy, so I don?t have to insult him/her !? >> Because I feel a really strong urge?.I?ll try to breathe and do some meditation?.]]] >> >> In fact, I know that this is not his/her limitation. >> >> It?s our OWN failure to explain to the world what XQuery is, what it does, and what is good at. >> >> Best regards >> Dana >> >> >> P.S. And after that, please DON?T ask me why I am SO pissed off at MarkLogic who pretend they never ate the garlic, not does >> their mouth smell of garlic?.. >> >> They MADE all their money out of the power of XQuery (expressiveness, productivity, etc), yet they pretend they?ve never heard of it?. >> >> That?s something that REALLY gets me angry. >> >> And this will come back to bait them on the business side very badly too. >> >> Oracle would have NEVER done the same thing about SQL?..just saying. >> >> >> >> > > > _______________________________________________ > talk at x-query.com > http://x-query.com/mailman/listinfo/talk > -------------- next part -------------- An HTML attachment was scrubbed... URL: From dflorescu at me.com Tue Jun 23 15:03:59 2015 From: dflorescu at me.com (daniela florescu) Date: Tue, 23 Jun 2015 15:03:59 -0700 Subject: [xquery-talk] What's wrong with the name "XQuery" WAS: SQL vs. XQuery (aka FOR vs FROM and RETURn vs. SELECT) In-Reply-To: References: <0F4FA788-3CB0-4FDC-BAEE-322147809174@me.com> Message-ID: <761A71BD-3D42-4027-A6C0-CC2C5BEBC4EA@me.com> > > 1. the principles of XQuery are orthogonal to XML itself and My colleague and friend Donald Kossmann used to tell his students : ?there are two wrong things with the name XQuery: the ?X? and the ?Query?. The ?X? because it?s not only for XML, it?s for semi-structured data in general, and the ?Query? because it?s not only a query language, it?s a general data processing language. :-) Best Dana From int19h at gmail.com Tue Jun 23 15:07:58 2015 From: int19h at gmail.com (Pavel Minaev) Date: Tue, 23 Jun 2015 15:07:58 -0700 Subject: [xquery-talk] SQL vs. XQuery (aka FOR vs FROM and RETURn vs. SELECT) In-Reply-To: References: <0F4FA788-3CB0-4FDC-BAEE-322147809174@me.com> Message-ID: I don't mind at all. And of course XQuery (well, the parts that are not tied to XDM) is orthogonal to XML. The way I see it, FLWOR syntax (as well as LINQ etc) is basically just a very fancy sequence comprehension, and obviously sequences and trees aren't XML-specific at all. FWIW, back when I first saw XQuery (which was after LINQ for me), I remember being somewhat surprised at the choice of "return" especially for a keyword. It's not that it was unclear what it did, and the mapping to the more familiar syntax was obvious. It's just that it implies some transfer of control traditionally, which is obviously not the case here. "yield", as used in Scala and F#, made a lot more sense. I don't mind "for" as much, on the other hand, seeing how it's pretty commonly used for sequence comprehensions elsewhere (Python, Scala, F# ...). I think the main reason why LINQ used "from" instead is to induce a sense of familiarity for those coming from SQL background, which was 99% of its target audience. Side note: I don't think that standalone query languages make much sense now that integrated syntax for sequence comprehensions has become mainstream for high-level languages. It's just too much effort to do explicit interop from, say, Java, C# and JS, to XQuery or JSONiq, and it introduces a new syntax for concepts which are already represented in the host language, with said syntax being constrained to one narrow domain (XML/JSON). I think that the way forward is going to be more like LINQ - taking (hopefully!) the lessons learned from dedicated query languages and seamlessly integrating them into the language such that they can work on its native data model, and mapping XML, JSON etc to that model as transparently as possible. On Tue, Jun 23, 2015 at 2:56 PM, daniela florescu wrote: > Pavel, I hope you don?t mind that I forward your personal email to the > main list. > > Thanks for the links. > > Yes, I am of course aware of the history of it, but I don?t think everyone > else is. > > (I even gave feedback to Erik Meijer before he submitted this proposal to > Bill Gates?. and I lost > a beer with him because we bet who among the two of us knows XML Schema > better ? and he did :-). > > This reinforces the ideas that: > > 1. the principles of XQuery are orthogonal to XML itself and > > 2. spelling FROM and SELECT seems to matter to people A LOT. > > Best regards > Dana > > > On Jun 23, 2015, at 2:44 PM, Pavel Minaev wrote: > > FWIW, "this language" is actually LINQ: > > https://msdn.microsoft.com/en-us/library/bb397896(v=vs.140).aspx > > Which, ironically, came out of an earlier Microsoft project called C? (and > specifically, the subset of it called X#), which was basically an attempt > to graft a subset of XQuery onto C#: > > https://msdn.microsoft.com/en-us/library/ms974195.aspx > > It became LINQ after it dropped ties to XDM and was generalized to operate > on arbitrary CLI object graphs instead. > > On Tue, Jun 23, 2015 at 2:31 PM, daniela florescu > wrote: > >> One thing that did strike me is the link cited in one of the comments >> about this article: >> >> http://queue.acm.org/detail.cfm?id=1961297 >> >> Just look at the examples. >> >> Does everyone see what I see !? :-) >> >> Those are just FLWOR expressions, with FOR spelled as FROM and RETURN >> spelled >> as SELECT. >> >> Can we PLEASE add those as synonyms in the XQuery grammar before you >> close XQuery 3.1 !? >> >> Otherwise we?ll hear for another 100 years that XQuery has nothing to do >> with SQL while THIS language >> describe in this paper DOES. (sic!) >> >> It?s dumb, but that?s how it is. >> >> Pretty please !??? >> >> Thanks >> Dana >> >> >> >> On Jun 23, 2015, at 11:04 AM, daniela florescu wrote: >> >> Ihe, >> >> you asked why XQuery is not more popular. >> >> Here is another striking answer to your question: NOBODY KNOWS IT EXISTS. >> >> Just look at this example. >> >> >> https://www.linkedin.com/pulse/sql-vs-discrepancy-somil-asthana?trk=hp-feed-article-title-like >> >> I quote: "Indisputably, there may be people who are working on Non >> Relational >> Algebra and Non Tuple Relational Calculus, its just that we do not know >> them.? >> >> [[[Can someone just answer this guy, so I don?t have to insult him/her !? >> Because I feel a really strong urge?.I?ll try to breathe and do some >> meditation?.]]] >> >> In fact, I know that this is not his/her limitation. >> >> It?s our OWN failure to explain to the world what XQuery is, what it >> does, and what is good at. >> >> Best regards >> Dana >> >> >> P.S. And after that, please DON?T ask me why I am SO pissed off at >> MarkLogic who pretend they never ate the garlic, not does >> their mouth smell of garlic?.. >> >> They MADE all their money out of the power of XQuery (expressiveness, >> productivity, etc), yet they pretend they?ve never heard of it?. >> >> That?s something that REALLY gets me angry. >> >> And this will come back to bait them on the business side very badly too. >> >> Oracle would have NEVER done the same thing about SQL?..just saying. >> >> >> >> >> >> >> _______________________________________________ >> talk at x-query.com >> http://x-query.com/mailman/listinfo/talk >> > > > -------------- next part -------------- An HTML attachment was scrubbed... URL: From dflorescu at me.com Tue Jun 23 15:35:34 2015 From: dflorescu at me.com (daniela florescu) Date: Tue, 23 Jun 2015 15:35:34 -0700 Subject: [xquery-talk] Sequence comprehension WAS: SQL vs. XQuery (aka FOR vs FROM and RETURn vs. SELECT) In-Reply-To: References: <0F4FA788-3CB0-4FDC-BAEE-322147809174@me.com> Message-ID: <6C2D3421-B2A2-43F6-8B38-0564212E4AA0@me.com> Pavel, NOW we are talking about interesting research !!!! :-)))) Sequence comprehension. Here we go?.:-) Yes, sequence comprehension (it?s called monoid comprehension in theoretical computer science?.) IS the one of the most important things for a high level/declarative language. However, several important remarks: ============ 1. Linq is NOT a new idea. My PhD thesis was (partially) about adding SELECT-FROM-WHERE as an expression to C++. I did it as a pre-processor at that time ? remember, it was 1994. Others did it too, decades before me !!!! Remember Pascal-R !??? http://archive.nyu.edu/fda/handle/2451/14595 (probably not, because you are too young..) 2. in 2015 XQuery has FROM FAR (!!!!!!!!!!) the most advanced, expressive-wise, AND the cleanest semantic-wise version of sequence comprehension. Every other language should use THAT instead of half-baking Yet-Another-Sequence-Comprehension. The FLWOR of XQuery is semantically very clean, has nothing to do with XML, is compositional and elegant, and, moreover, optimizable. 3. The discussion : should we add sequence comprehension to an exiting imperative language vs. adding scripting extensions to XQuery/high level functional language with sequence comprehension is again old as the times. see for example: http://dl.acm.org/citation.cfm?id=1142597&dl=ACM&coll=DL&CFID=522088426&CFTOKEN=80093091 ( Donald Kossmann and I had a detailed tutorial at Sigmod 2006, and the slides were REALLY funny, if I remember correctly) This was in 2006. (when you read the paper just do a global replace ?XML? with ?semi-structured data?) Now, in 2015, I think BOTH alternatives are good, and viable. For example, adding a FLWOR expression to Javascript is a worthwile thing to do, and I am implementing this as we speak. Another example: what do you think that Oracle Fusion was (multi-billion failure..)!? Just a rewrite of Oracle application, where the code instead of being written in PL-SQL was written in Java with SQL. Same story/question again. 4. Sequence comprehension is necessary for processing data in general, structured or non-structured. However, for processing ****SEMI-STRUCTURED DATA**** you need EXTRA other features, non-existing in ANY other language except XQuery and XSLT. I tried to put a list of features needed for semi-structured data in a previous email to this list, ?. http://x-query.com/pipermail/talk/2015-May/004718.html http://x-query.com/pipermail/talk/2015-May/004719.html ?..but of course I did it fast, and forgot some of the necessary features. In particular, I forgot the ability to do metadata search (aka path expressions where you don?t know the data structure). =========== So, yep. Lots of Computer Science history. This is why it is DAMN SAD to see those barbarians starting to query JSON in 2015 like it?s 1995 again ??. Best Dana > On Jun 23, 2015, at 3:07 PM, Pavel Minaev wrote: > > I don't mind at all. > > And of course XQuery (well, the parts that are not tied to XDM) is orthogonal to XML. The way I see it, FLWOR syntax (as well as LINQ etc) is basically just a very fancy sequence comprehension, and obviously sequences and trees aren't XML-specific at all. > > FWIW, back when I first saw XQuery (which was after LINQ for me), I remember being somewhat surprised at the choice of "return" especially for a keyword. It's not that it was unclear what it did, and the mapping to the more familiar syntax was obvious. It's just that it implies some transfer of control traditionally, which is obviously not the case here. "yield", as used in Scala and F#, made a lot more sense. > > I don't mind "for" as much, on the other hand, seeing how it's pretty commonly used for sequence comprehensions elsewhere (Python, Scala, F# ...). I think the main reason why LINQ used "from" instead is to induce a sense of familiarity for those coming from SQL background, which was 99% of its target audience. > > Side note: I don't think that standalone query languages make much sense now that integrated syntax for sequence comprehensions has become mainstream for high-level languages. It's just too much effort to do explicit interop from, say, Java, C# and JS, to XQuery or JSONiq, and it introduces a new syntax for concepts which are already represented in the host language, with said syntax being constrained to one narrow domain (XML/JSON). I think that the way forward is going to be more like LINQ - taking (hopefully!) the lessons learned from dedicated query languages and seamlessly integrating them into the language such that they can work on its native data model, and mapping XML, JSON etc to that model as transparently as possible. > > On Tue, Jun 23, 2015 at 2:56 PM, daniela florescu > wrote: > Pavel, I hope you don?t mind that I forward your personal email to the main list. > > Thanks for the links. > > Yes, I am of course aware of the history of it, but I don?t think everyone else is. > > (I even gave feedback to Erik Meijer before he submitted this proposal to Bill Gates?. and I lost > a beer with him because we bet who among the two of us knows XML Schema better ? and he did :-). > > This reinforces the ideas that: > > 1. the principles of XQuery are orthogonal to XML itself and > > 2. spelling FROM and SELECT seems to matter to people A LOT. > > Best regards > Dana > > >> On Jun 23, 2015, at 2:44 PM, Pavel Minaev > wrote: >> >> FWIW, "this language" is actually LINQ: >> >> https://msdn.microsoft.com/en-us/library/bb397896(v=vs.140).aspx >> >> Which, ironically, came out of an earlier Microsoft project called C? (and specifically, the subset of it called X#), which was basically an attempt to graft a subset of XQuery onto C#: >> >> https://msdn.microsoft.com/en-us/library/ms974195.aspx >> >> It became LINQ after it dropped ties to XDM and was generalized to operate on arbitrary CLI object graphs instead. >> >> On Tue, Jun 23, 2015 at 2:31 PM, daniela florescu > wrote: >> One thing that did strike me is the link cited in one of the comments about this article: >> >> http://queue.acm.org/detail.cfm?id=1961297 >> >> Just look at the examples. >> >> Does everyone see what I see !? :-) >> >> Those are just FLWOR expressions, with FOR spelled as FROM and RETURN spelled >> as SELECT. >> >> Can we PLEASE add those as synonyms in the XQuery grammar before you close XQuery 3.1 !? >> >> Otherwise we?ll hear for another 100 years that XQuery has nothing to do with SQL while THIS language >> describe in this paper DOES. (sic!) >> >> It?s dumb, but that?s how it is. >> >> Pretty please !??? >> >> Thanks >> Dana >> >> >> >>> On Jun 23, 2015, at 11:04 AM, daniela florescu > wrote: >>> >>> Ihe, >>> >>> you asked why XQuery is not more popular. >>> >>> Here is another striking answer to your question: NOBODY KNOWS IT EXISTS. >>> >>> Just look at this example. >>> >>> https://www.linkedin.com/pulse/sql-vs-discrepancy-somil-asthana?trk=hp-feed-article-title-like >>> >>> I quote: "Indisputably, there may be people who are working on Non Relational >>> Algebra and Non Tuple Relational Calculus, its just that we do not know them.? >>> >>> [[[Can someone just answer this guy, so I don?t have to insult him/her !? >>> Because I feel a really strong urge?.I?ll try to breathe and do some meditation?.]]] >>> >>> In fact, I know that this is not his/her limitation. >>> >>> It?s our OWN failure to explain to the world what XQuery is, what it does, and what is good at. >>> >>> Best regards >>> Dana >>> >>> >>> P.S. And after that, please DON?T ask me why I am SO pissed off at MarkLogic who pretend they never ate the garlic, not does >>> their mouth smell of garlic?.. >>> >>> They MADE all their money out of the power of XQuery (expressiveness, productivity, etc), yet they pretend they?ve never heard of it?. >>> >>> That?s something that REALLY gets me angry. >>> >>> And this will come back to bait them on the business side very badly too. >>> >>> Oracle would have NEVER done the same thing about SQL?..just saying. >>> >>> >>> >>> >> >> >> _______________________________________________ >> talk at x-query.com >> http://x-query.com/mailman/listinfo/talk >> > > -------------- next part -------------- An HTML attachment was scrubbed... URL: From int19h at gmail.com Tue Jun 23 16:07:58 2015 From: int19h at gmail.com (Pavel Minaev) Date: Tue, 23 Jun 2015 16:07:58 -0700 Subject: [xquery-talk] Sequence comprehension WAS: SQL vs. XQuery (aka FOR vs FROM and RETURn vs. SELECT) In-Reply-To: <6C2D3421-B2A2-43F6-8B38-0564212E4AA0@me.com> References: <0F4FA788-3CB0-4FDC-BAEE-322147809174@me.com> <6C2D3421-B2A2-43F6-8B38-0564212E4AA0@me.com> Message-ID: I think that was distinguishes LINQ is not that it was the first such experiment, but that it was the first one that happened in a mainstream non-declarative language (as opposed to a fork of one) *and *was widely adopted by the community of that language. As far as what's "better", I think that there are really two different questions here: what's "better" in The Right Way sense, and what's "better" in a "how do you get people to use this" sense. For the latter, there's no doubt in my mind that the way there is to get existing mainstream languages (which are all imperative at heart) to adopt more declarative goodness, including comprehensions/queries, as a subset - it's a much gentler transition for existing users of those languages, and more importantly, it's like a new instrument magically appearing in a toolbox that they already use daily - at some point they're bound to pick it up and use it even just out of sheer curiosity. It's much harder to get someone interested in a completely new language in comparison. I'm curious as to what exactly you believe to be features that are necessary to semi-structured data that are unique to XQuery. I've looked at the posts that you've linked to, and e.g. conditionals/typeswitches, functions and recursive functions, and try/catch, are there in pretty much any imperative language with sequence comprehensions, and can usually be combined more or less seamlessly (though if I had to bring up a particularly good example of all of these, it would be F# computation expressions, which are also nicely generalized and extensible - see https://msdn.microsoft.com/en-us/library/dd233209.aspx and https://msdn.microsoft.com/en-us/library/dd233182.aspx). Implicit type conversions are the only point I can think of that's truly unique here, but I think that to what degree that is appropriate is highly subjective - it's just as easy to get messed-up output with no clear indication of what the problem was due to an unfortunate conversion producing garbage somewhere in the middle of a particularly complicated query. It all depends on the data. On Tue, Jun 23, 2015 at 3:35 PM, daniela florescu wrote: > Pavel, > > NOW we are talking about interesting research !!!! :-)))) > > Sequence comprehension. Here we go?.:-) > > Yes, sequence comprehension (it?s called monoid comprehension in > theoretical computer science?.) IS the one of the most important things > for a high level/declarative language. > > However, several important remarks: > > ============ > > 1. Linq is NOT a new idea. My PhD thesis was (partially) about adding > SELECT-FROM-WHERE > as an expression to C++. I did it as a pre-processor at that time ? > remember, it was 1994. > Others did it too, decades before me !!!! Remember Pascal-R !??? > http://archive.nyu.edu/fda/handle/2451/14595 > (probably not, because you are too young..) > > 2. in 2015 XQuery has FROM FAR (!!!!!!!!!!) the most advanced, > expressive-wise, AND > the cleanest semantic-wise version of sequence comprehension. > > Every other language should use THAT instead of half-baking > Yet-Another-Sequence-Comprehension. > > The FLWOR of XQuery is semantically very clean, has nothing to do with > XML, is compositional and elegant, > and, moreover, optimizable. > > > 3. The discussion : should we add sequence comprehension to an exiting > imperative language vs. > adding scripting extensions to XQuery/high level functional language with > sequence comprehension > is again old as the times. > > see for example: > > http://dl.acm.org/citation.cfm?id=1142597&dl=ACM&coll=DL&CFID=522088426&CFTOKEN=80093091 > ( Donald Kossmann and I had a detailed tutorial at Sigmod 2006, and the > slides were REALLY funny, if I remember correctly) > > This was in 2006. (when you read the paper just do a global replace ?XML? > with ?semi-structured data?) > > Now, in 2015, I think BOTH alternatives are good, and viable. > > For example, adding a FLWOR expression to Javascript is a worthwile thing > to do, and I am implementing this as we speak. > > Another example: what do you think that Oracle Fusion was (multi-billion > failure..)!? Just a rewrite of Oracle application, where the code instead > of being written > in PL-SQL was written in Java with SQL. > > Same story/question again. > > 4. Sequence comprehension is necessary for processing data in general, > structured or non-structured. > > However, for processing ****SEMI-STRUCTURED DATA**** you need EXTRA other > features, non-existing in > ANY other language except XQuery and XSLT. > > I tried to put a list of features needed for semi-structured data in a > previous email to this list, ?. > http://x-query.com/pipermail/talk/2015-May/004718.html > http://x-query.com/pipermail/talk/2015-May/004719.html > > ?..but of course I did it fast, and forgot some of the necessary features. > In particular, I forgot the ability to do metadata search (aka path > expressions where you don?t know the data structure). > > =========== > > > > So, yep. Lots of Computer Science history. > > > This is why it is DAMN SAD to see those barbarians starting to query JSON > in 2015 like it?s 1995 again ??. > > > > Best > Dana > > > > > > > > > > > > > > > On Jun 23, 2015, at 3:07 PM, Pavel Minaev wrote: > > I don't mind at all. > > And of course XQuery (well, the parts that are not tied to XDM) is > orthogonal to XML. The way I see it, FLWOR syntax (as well as LINQ etc) is > basically just a very fancy sequence comprehension, and obviously sequences > and trees aren't XML-specific at all. > > FWIW, back when I first saw XQuery (which was after LINQ for me), I > remember being somewhat surprised at the choice of "return" especially for > a keyword. It's not that it was unclear what it did, and the mapping to the > more familiar syntax was obvious. It's just that it implies some transfer > of control traditionally, which is obviously not the case here. "yield", as > used in Scala and F#, made a lot more sense. > > I don't mind "for" as much, on the other hand, seeing how it's pretty > commonly used for sequence comprehensions elsewhere (Python, Scala, F# > ...). I think the main reason why LINQ used "from" instead is to induce a > sense of familiarity for those coming from SQL background, which was 99% of > its target audience. > > Side note: I don't think that standalone query languages make much sense > now that integrated syntax for sequence comprehensions has become > mainstream for high-level languages. It's just too much effort to do > explicit interop from, say, Java, C# and JS, to XQuery or JSONiq, and it > introduces a new syntax for concepts which are already represented in the > host language, with said syntax being constrained to one narrow domain > (XML/JSON). I think that the way forward is going to be more like LINQ - > taking (hopefully!) the lessons learned from dedicated query languages and > seamlessly integrating them into the language such that they can work on > its native data model, and mapping XML, JSON etc to that model as > transparently as possible. > > On Tue, Jun 23, 2015 at 2:56 PM, daniela florescu > wrote: > >> Pavel, I hope you don?t mind that I forward your personal email to the >> main list. >> >> Thanks for the links. >> >> Yes, I am of course aware of the history of it, but I don?t think >> everyone else is. >> >> (I even gave feedback to Erik Meijer before he submitted this proposal to >> Bill Gates?. and I lost >> a beer with him because we bet who among the two of us knows XML Schema >> better ? and he did :-). >> >> This reinforces the ideas that: >> >> 1. the principles of XQuery are orthogonal to XML itself and >> >> 2. spelling FROM and SELECT seems to matter to people A LOT. >> >> Best regards >> Dana >> >> >> On Jun 23, 2015, at 2:44 PM, Pavel Minaev wrote: >> >> FWIW, "this language" is actually LINQ: >> >> https://msdn.microsoft.com/en-us/library/bb397896(v=vs.140).aspx >> >> Which, ironically, came out of an earlier Microsoft project called C? >> (and specifically, the subset of it called X#), which was basically an >> attempt to graft a subset of XQuery onto C#: >> >> https://msdn.microsoft.com/en-us/library/ms974195.aspx >> >> It became LINQ after it dropped ties to XDM and was generalized to >> operate on arbitrary CLI object graphs instead. >> >> On Tue, Jun 23, 2015 at 2:31 PM, daniela florescu >> wrote: >> >>> One thing that did strike me is the link cited in one of the comments >>> about this article: >>> >>> http://queue.acm.org/detail.cfm?id=1961297 >>> >>> Just look at the examples. >>> >>> Does everyone see what I see !? :-) >>> >>> Those are just FLWOR expressions, with FOR spelled as FROM and RETURN >>> spelled >>> as SELECT. >>> >>> Can we PLEASE add those as synonyms in the XQuery grammar before you >>> close XQuery 3.1 !? >>> >>> Otherwise we?ll hear for another 100 years that XQuery has nothing to do >>> with SQL while THIS language >>> describe in this paper DOES. (sic!) >>> >>> It?s dumb, but that?s how it is. >>> >>> Pretty please !??? >>> >>> Thanks >>> Dana >>> >>> >>> >>> On Jun 23, 2015, at 11:04 AM, daniela florescu wrote: >>> >>> Ihe, >>> >>> you asked why XQuery is not more popular. >>> >>> Here is another striking answer to your question: NOBODY KNOWS IT EXISTS. >>> >>> Just look at this example. >>> >>> >>> https://www.linkedin.com/pulse/sql-vs-discrepancy-somil-asthana?trk=hp-feed-article-title-like >>> >>> I quote: "Indisputably, there may be people who are working on Non >>> Relational >>> Algebra and Non Tuple Relational Calculus, its just that we do not know >>> them.? >>> >>> [[[Can someone just answer this guy, so I don?t have to insult him/her !? >>> Because I feel a really strong urge?.I?ll try to breathe and do some >>> meditation?.]]] >>> >>> In fact, I know that this is not his/her limitation. >>> >>> It?s our OWN failure to explain to the world what XQuery is, what it >>> does, and what is good at. >>> >>> Best regards >>> Dana >>> >>> >>> P.S. And after that, please DON?T ask me why I am SO pissed off at >>> MarkLogic who pretend they never ate the garlic, not does >>> their mouth smell of garlic?.. >>> >>> They MADE all their money out of the power of XQuery (expressiveness, >>> productivity, etc), yet they pretend they?ve never heard of it?. >>> >>> That?s something that REALLY gets me angry. >>> >>> And this will come back to bait them on the business side very badly >>> too. >>> >>> Oracle would have NEVER done the same thing about SQL?..just saying. >>> >>> >>> >>> >>> >>> >>> _______________________________________________ >>> talk at x-query.com >>> http://x-query.com/mailman/listinfo/talk >>> >> >> >> > > > _______________________________________________ > talk at x-query.com > http://x-query.com/mailman/listinfo/talk > -------------- next part -------------- An HTML attachment was scrubbed... URL: From dflorescu at me.com Tue Jun 23 16:10:01 2015 From: dflorescu at me.com (daniela florescu) Date: Tue, 23 Jun 2015 16:10:01 -0700 Subject: [xquery-talk] Sequence comprehension WAS: SQL vs. XQuery (aka FOR vs FROM and RETURn vs. SELECT) In-Reply-To: References: <0F4FA788-3CB0-4FDC-BAEE-322147809174@me.com> <6C2D3421-B2A2-43F6-8B38-0564212E4AA0@me.com> Message-ID: <5E23E612-11F1-4A0B-A03C-09889A6AC438@me.com> Pavel, I?ll respond to this in two different emails, as it contains two different important questions. Best Dana > On Jun 23, 2015, at 4:07 PM, Pavel Minaev wrote: > > I think that was distinguishes LINQ is not that it was the first such experiment, but that it was the first one that happened in a mainstream non-declarative language (as opposed to a fork of one) and was widely adopted by the community of that language. > > As far as what's "better", I think that there are really two different questions here: what's "better" in The Right Way sense, and what's "better" in a "how do you get people to use this" sense. For the latter, there's no doubt in my mind that the way there is to get existing mainstream languages (which are all imperative at heart) to adopt more declarative goodness, including comprehensions/queries, as a subset - it's a much gentler transition for existing users of those languages, and more importantly, it's like a new instrument magically appearing in a toolbox that they already use daily - at some point they're bound to pick it up and use it even just out of sheer curiosity. It's much harder to get someone interested in a completely new language in comparison. > > I'm curious as to what exactly you believe to be features that are necessary to semi-structured data that are unique to XQuery. I've looked at the posts that you've linked to, and e.g. conditionals/typeswitches, functions and recursive functions, and try/catch, are there in pretty much any imperative language with sequence comprehensions, and can usually be combined more or less seamlessly (though if I had to bring up a particularly good example of all of these, it would be F# computation expressions, which are also nicely generalized and extensible - see https://msdn.microsoft.com/en-us/library/dd233209.aspx and https://msdn.microsoft.com/en-us/library/dd233182.aspx ). Implicit type conversions are the only point I can think of that's truly unique here, but I think that to what degree that is appropriate is highly subjective - it's just as easy to get messed-up output with no clear indication of what the problem was due to an unfortunate conversion producing garbage somewhere in the middle of a particularly complicated query. It all depends on the data. > > > On Tue, Jun 23, 2015 at 3:35 PM, daniela florescu > wrote: > Pavel, > > NOW we are talking about interesting research !!!! :-)))) > > Sequence comprehension. Here we go?.:-) > > Yes, sequence comprehension (it?s called monoid comprehension in > theoretical computer science?.) IS the one of the most important things > for a high level/declarative language. > > However, several important remarks: > > ============ > > 1. Linq is NOT a new idea. My PhD thesis was (partially) about adding SELECT-FROM-WHERE > as an expression to C++. I did it as a pre-processor at that time ? remember, it was 1994. > Others did it too, decades before me !!!! Remember Pascal-R !??? http://archive.nyu.edu/fda/handle/2451/14595 > (probably not, because you are too young..) > > 2. in 2015 XQuery has FROM FAR (!!!!!!!!!!) the most advanced, expressive-wise, AND > the cleanest semantic-wise version of sequence comprehension. > > Every other language should use THAT instead of half-baking Yet-Another-Sequence-Comprehension. > > The FLWOR of XQuery is semantically very clean, has nothing to do with XML, is compositional and elegant, > and, moreover, optimizable. > > > 3. The discussion : should we add sequence comprehension to an exiting imperative language vs. > adding scripting extensions to XQuery/high level functional language with sequence comprehension > is again old as the times. > > see for example: > http://dl.acm.org/citation.cfm?id=1142597&dl=ACM&coll=DL&CFID=522088426&CFTOKEN=80093091 > ( Donald Kossmann and I had a detailed tutorial at Sigmod 2006, and the slides were REALLY funny, if I remember correctly) > > This was in 2006. (when you read the paper just do a global replace ?XML? with ?semi-structured data?) > > Now, in 2015, I think BOTH alternatives are good, and viable. > > For example, adding a FLWOR expression to Javascript is a worthwile thing to do, and I am implementing this as we speak. > > Another example: what do you think that Oracle Fusion was (multi-billion failure..)!? Just a rewrite of Oracle application, where the code instead of being written > in PL-SQL was written in Java with SQL. > > Same story/question again. > > 4. Sequence comprehension is necessary for processing data in general, structured or non-structured. > > However, for processing ****SEMI-STRUCTURED DATA**** you need EXTRA other features, non-existing in > ANY other language except XQuery and XSLT. > > I tried to put a list of features needed for semi-structured data in a previous email to this list, ?. > http://x-query.com/pipermail/talk/2015-May/004718.html > http://x-query.com/pipermail/talk/2015-May/004719.html > > ?..but of course I did it fast, and forgot some of the necessary features. > In particular, I forgot the ability to do metadata search (aka path expressions where you don?t know the data structure). > > =========== > > > > So, yep. Lots of Computer Science history. > > > This is why it is DAMN SAD to see those barbarians starting to query JSON in 2015 like it?s 1995 again ??. > > > > Best > Dana > > > > > > > > > > > > > > >> On Jun 23, 2015, at 3:07 PM, Pavel Minaev > wrote: >> >> I don't mind at all. >> >> And of course XQuery (well, the parts that are not tied to XDM) is orthogonal to XML. The way I see it, FLWOR syntax (as well as LINQ etc) is basically just a very fancy sequence comprehension, and obviously sequences and trees aren't XML-specific at all. >> >> FWIW, back when I first saw XQuery (which was after LINQ for me), I remember being somewhat surprised at the choice of "return" especially for a keyword. It's not that it was unclear what it did, and the mapping to the more familiar syntax was obvious. It's just that it implies some transfer of control traditionally, which is obviously not the case here. "yield", as used in Scala and F#, made a lot more sense. >> >> I don't mind "for" as much, on the other hand, seeing how it's pretty commonly used for sequence comprehensions elsewhere (Python, Scala, F# ...). I think the main reason why LINQ used "from" instead is to induce a sense of familiarity for those coming from SQL background, which was 99% of its target audience. >> >> Side note: I don't think that standalone query languages make much sense now that integrated syntax for sequence comprehensions has become mainstream for high-level languages. It's just too much effort to do explicit interop from, say, Java, C# and JS, to XQuery or JSONiq, and it introduces a new syntax for concepts which are already represented in the host language, with said syntax being constrained to one narrow domain (XML/JSON). I think that the way forward is going to be more like LINQ - taking (hopefully!) the lessons learned from dedicated query languages and seamlessly integrating them into the language such that they can work on its native data model, and mapping XML, JSON etc to that model as transparently as possible. >> >> On Tue, Jun 23, 2015 at 2:56 PM, daniela florescu > wrote: >> Pavel, I hope you don?t mind that I forward your personal email to the main list. >> >> Thanks for the links. >> >> Yes, I am of course aware of the history of it, but I don?t think everyone else is. >> >> (I even gave feedback to Erik Meijer before he submitted this proposal to Bill Gates?. and I lost >> a beer with him because we bet who among the two of us knows XML Schema better ? and he did :-). >> >> This reinforces the ideas that: >> >> 1. the principles of XQuery are orthogonal to XML itself and >> >> 2. spelling FROM and SELECT seems to matter to people A LOT. >> >> Best regards >> Dana >> >> >>> On Jun 23, 2015, at 2:44 PM, Pavel Minaev > wrote: >>> >>> FWIW, "this language" is actually LINQ: >>> >>> https://msdn.microsoft.com/en-us/library/bb397896(v=vs.140).aspx >>> >>> Which, ironically, came out of an earlier Microsoft project called C? (and specifically, the subset of it called X#), which was basically an attempt to graft a subset of XQuery onto C#: >>> >>> https://msdn.microsoft.com/en-us/library/ms974195.aspx >>> >>> It became LINQ after it dropped ties to XDM and was generalized to operate on arbitrary CLI object graphs instead. >>> >>> On Tue, Jun 23, 2015 at 2:31 PM, daniela florescu > wrote: >>> One thing that did strike me is the link cited in one of the comments about this article: >>> >>> http://queue.acm.org/detail.cfm?id=1961297 >>> >>> Just look at the examples. >>> >>> Does everyone see what I see !? :-) >>> >>> Those are just FLWOR expressions, with FOR spelled as FROM and RETURN spelled >>> as SELECT. >>> >>> Can we PLEASE add those as synonyms in the XQuery grammar before you close XQuery 3.1 !? >>> >>> Otherwise we?ll hear for another 100 years that XQuery has nothing to do with SQL while THIS language >>> describe in this paper DOES. (sic!) >>> >>> It?s dumb, but that?s how it is. >>> >>> Pretty please !??? >>> >>> Thanks >>> Dana >>> >>> >>> >>>> On Jun 23, 2015, at 11:04 AM, daniela florescu > wrote: >>>> >>>> Ihe, >>>> >>>> you asked why XQuery is not more popular. >>>> >>>> Here is another striking answer to your question: NOBODY KNOWS IT EXISTS. >>>> >>>> Just look at this example. >>>> >>>> https://www.linkedin.com/pulse/sql-vs-discrepancy-somil-asthana?trk=hp-feed-article-title-like >>>> >>>> I quote: "Indisputably, there may be people who are working on Non Relational >>>> Algebra and Non Tuple Relational Calculus, its just that we do not know them.? >>>> >>>> [[[Can someone just answer this guy, so I don?t have to insult him/her !? >>>> Because I feel a really strong urge?.I?ll try to breathe and do some meditation?.]]] >>>> >>>> In fact, I know that this is not his/her limitation. >>>> >>>> It?s our OWN failure to explain to the world what XQuery is, what it does, and what is good at. >>>> >>>> Best regards >>>> Dana >>>> >>>> >>>> P.S. And after that, please DON?T ask me why I am SO pissed off at MarkLogic who pretend they never ate the garlic, not does >>>> their mouth smell of garlic?.. >>>> >>>> They MADE all their money out of the power of XQuery (expressiveness, productivity, etc), yet they pretend they?ve never heard of it?. >>>> >>>> That?s something that REALLY gets me angry. >>>> >>>> And this will come back to bait them on the business side very badly too. >>>> >>>> Oracle would have NEVER done the same thing about SQL?..just saying. >>>> >>>> >>>> >>>> >>> >>> >>> _______________________________________________ >>> talk at x-query.com >>> http://x-query.com/mailman/listinfo/talk >>> >> >> > > > _______________________________________________ > talk at x-query.com > http://x-query.com/mailman/listinfo/talk > -------------- next part -------------- An HTML attachment was scrubbed... URL: From dflorescu at me.com Tue Jun 23 16:23:14 2015 From: dflorescu at me.com (daniela florescu) Date: Tue, 23 Jun 2015 16:23:14 -0700 Subject: [xquery-talk] adding comprehension to imperative languages or vice-versa In-Reply-To: References: <0F4FA788-3CB0-4FDC-BAEE-322147809174@me.com> <6C2D3421-B2A2-43F6-8B38-0564212E4AA0@me.com> Message-ID: <0B5B62CA-9031-496B-9DFB-F88F0C5CB973@me.com> > > As far as what's "better", I think that there are really two different questions here: what's "better" in The Right Way sense, and what's "better" in a "how do you get people to use this" sense. For the latter, there's no doubt in my mind that the way there is to get existing mainstream languages (which are all imperative at heart) to adopt more declarative goodness, including comprehensions/queries, as a subset - it's a much gentler transition for existing users of those languages, and more importantly, it's like a new instrument magically appearing in a toolbox that they already use daily - at some point they're bound to pick it up and use it even just out of sheer curiosity. It's much harder to get someone interested in a completely new language in comparison. As I said in my previous email. Now in 2015 I realize that developers have their ?favorite? language, and making them change it?s close to impossible, so the optimal is to give them better tools to do their job in THE language they are more productive in. So if this is C#, or Javascript, or whatever?. let it be. (ever crossed your mind why in an EC commerce site when you sort on price/sometinh, it GOES BACK TO THE SERVER most of the time to do a simple sort on 20 products !???? Sounds stupid no, ? well, that?s because Javascript doesn?t HAVE a sortby ?.so ?) It?s better for those imperative languages to HAVE a sequence comprehension then NOT to have it. It makes the developers in those languages (who otherwise wouldn?t have changed anyway?) more productive?. Now, the fact that 90% of developers like comfort and/or are learning impaired and cannot learn something new does NOT mean that ALL developers are lazy and/or learning impaired and cannot learn something new?.. For those who CAN learn something new, or for the fresh new students with blank, fresh new minds?..well, teach them something better and more productive. And that would be (according to me..) the OTHER way around: a language 95% declarative + 5% imperative. As I gave you as an example: when Oracle Fusion started the idea was that Java, being easier to program in then the ?declarative? PL-SQL?. the applications will be MUCH better. Well, 10 years later, multi-billion investment with epsilon returns, it turns out that the PL-SQL version was MUCH better then the Java version. (1000 times more code, more bugs, less productive, more developers, more politics and decision makers, etc, etc ? as simple as that ..) A failure that Oracle never talks about ?.. just Oracle Fusion silently disappeared from the marketing slides :-) ===== So, no, I would not take either side at this point. Best Dana From dflorescu at me.com Tue Jun 23 16:32:07 2015 From: dflorescu at me.com (daniela florescu) Date: Tue, 23 Jun 2015 16:32:07 -0700 Subject: [xquery-talk] Sequence comprehension WAS: SQL vs. XQuery (aka FOR vs FROM and RETURn vs. SELECT) In-Reply-To: References: <0F4FA788-3CB0-4FDC-BAEE-322147809174@me.com> <6C2D3421-B2A2-43F6-8B38-0564212E4AA0@me.com> Message-ID: > > I'm curious as to what exactly you believe to be features that are necessary to semi-structured data that are unique to XQuery. I've looked at the posts that you've linked to, and e.g. conditionals/typeswitches, functions and recursive functions, and try/catch, are there in pretty much any imperative language with sequence comprehensions, Pavel, you ignored one of the FIRST things I put there for a data processing language: the necessity to be FUNCTIONAL in nature. (aka, 90%+ functional without side effects) The characteristic of being ?functional? is a NECESSITY for being able to do data flow analysis, aka the ability for the compiler to know automatically what operations will be applied on each piece of data, and what data is being given as input to each operation. Data flow analysis is a NECESSITY for optimization. Optimization is a NECESSITY for data processing for large volumes of data. ===== C# with select-from-where is nearly not as optimizable as XQuery with a scripting extension (as Zorba used to have it for example). After 5 assignments you lost track of where the data came from and where the data goes, and which data changed where, and what indexes need automatic updates. You lost optimizability and logical/physical data independence. That?s all. It?s a trade-off. Best regards Dana From dflorescu at me.com Tue Jun 23 16:41:44 2015 From: dflorescu at me.com (daniela florescu) Date: Tue, 23 Jun 2015 16:41:44 -0700 Subject: [xquery-talk] digging through the archives ...:-) Message-ID: <7882715A-22D5-4E4B-90E4-152BD4098338@me.com> ? I found another XML programming language that I made with Donald Kossmann 14 years ago. http://www.cis.upenn.edu/~susan/cis650/XLwww2002.pdf I completely forgot about it ?:-) But maybe some lessons can be learned from there too?.it was actually implemented and used by Siemens in several applications if I recall correctly? It was a sort of Javascript with FLWOR expression, with XML instead of JSON (plus extra features for the now defunct Web Services, RIP). Best Dana -------------- next part -------------- An HTML attachment was scrubbed... URL: From dflorescu at me.com Tue Jun 23 17:00:41 2015 From: dflorescu at me.com (daniela florescu) Date: Tue, 23 Jun 2015 17:00:41 -0700 Subject: [xquery-talk] Sequence comprehension WAS: SQL vs. XQuery (aka FOR vs FROM and RETURn vs. SELECT) In-Reply-To: References: <0F4FA788-3CB0-4FDC-BAEE-322147809174@me.com> <6C2D3421-B2A2-43F6-8B38-0564212E4AA0@me.com> Message-ID: <29C1B998-A0B7-4BAB-A23E-9EFB587BCDBD@me.com> > On Jun 23, 2015, at 4:07 PM, Pavel Minaev wrote: > > I think that was distinguishes LINQ is not that it was the first such experiment, but that it was the first one that happened in a mainstream non-declarative language (as opposed to a fork of one) and was widely adopted by the community of that language. Pavel, Yep. You are right. For that give credit to Bill Gates, who allowed this ?new? and potentially disruptive thing to happen in a large scale industrial product. This was not a ?first? as research, but was definitely a ?first? as business. Bill Gates was not only a brilliant businessman, but ALSO loved and understood technology. (too bad he had no aesthetic and usability sense though :-)) ====== Note to the CEO of MarkLogic?. can I tell you something, dear CEO !? THAT?s the difference between you (on one side) and Larry Ellison and Bill Gates and Steve Jobs (on the other..). The courage to try something completely new and untested, and STICK to what you believe in. Not jump from XQuery on server side to Javascript on server side because the wind blows sideways ? or someone influenced you in the corridor ??.like you did. Best regards Dana P.S. And if you ask me why the business mistakes of MarkLogic are MY business?.it?s very simple. If MarkLogic screws up financially? it will drag down THE WHOLE XQUERY TECHNOLOGY. And I spent 20 years working on it??.so I take it personally. -------------- next part -------------- An HTML attachment was scrubbed... URL: From int19h at gmail.com Tue Jun 23 17:42:09 2015 From: int19h at gmail.com (Pavel Minaev) Date: Tue, 23 Jun 2015 17:42:09 -0700 Subject: [xquery-talk] adding comprehension to imperative languages or vice-versa In-Reply-To: <0B5B62CA-9031-496B-9DFB-F88F0C5CB973@me.com> References: <0F4FA788-3CB0-4FDC-BAEE-322147809174@me.com> <6C2D3421-B2A2-43F6-8B38-0564212E4AA0@me.com> <0B5B62CA-9031-496B-9DFB-F88F0C5CB973@me.com> Message-ID: It's not really a matter of learning something new - it's more about practicality. I know XQuery, Haskell etc, for example, but for purely pragmatic reasons (such as the need to use existing libraries, and the desire to use them with ease - i.e. without mucking around with FFI, and the associated impedance mismatch that using a library written in an imperative language like C from a pure functional language causes), and because I'm not working on that code alone and other people should be able to pick it up where I left it and continue working, 99% of the time I'm writing in C++, C#, Python etc. Simply put, the requirement to work with other people and to interoperate with other systems makes more conventional stuff *more productive*, ironically, while unconventional things that break away from the mold are only more productive in a hypothetical universe where they are all by themselves and everyone and everything is starting from a clean slate (which does in fact occasionally happen IRL when there appears a new niche that is not [yet] tightly connected to everything else). That's why I love the fact that functional and declarative stuff is creeping into those mainstream imperative languages. It gradually gets me to the point where I can write neat declarative code *in production*, and no-one objects because they don't realize that it's radically different from what they're used to! (and those who do, are generally in the same boat as me and enjoy it the same). For them, it's just some new syntax that got added to the language they know and use, and so obviously it's okay by default. I think we'll eventually get to your 95%+5% end goal this way anyway. It will just be slow enough that nobody will notice other than in retrospect. On Tue, Jun 23, 2015 at 4:23 PM, daniela florescu wrote: > > > > As far as what's "better", I think that there are really two different > questions here: what's "better" in The Right Way sense, and what's "better" > in a "how do you get people to use this" sense. For the latter, there's no > doubt in my mind that the way there is to get existing mainstream languages > (which are all imperative at heart) to adopt more declarative goodness, > including comprehensions/queries, as a subset - it's a much gentler > transition for existing users of those languages, and more importantly, > it's like a new instrument magically appearing in a toolbox that they > already use daily - at some point they're bound to pick it up and use it > even just out of sheer curiosity. It's much harder to get someone > interested in a completely new language in comparison. > > As I said in my previous email. > > Now in 2015 I realize that developers have their ?favorite? language, and > making them change it?s close to > impossible, so the optimal is to give them better tools to do their job in > THE language they are more productive in. > > So if this is C#, or Javascript, or whatever?. let it be. > (ever crossed your mind why in an EC commerce site when you sort on > price/sometinh, it GOES BACK TO THE SERVER most of the time to > do a simple sort on 20 products !???? Sounds stupid no, ? well, that?s > because Javascript doesn?t HAVE a sortby ?.so ?) > > It?s better for those imperative languages to HAVE a sequence > comprehension then NOT to have it. It makes the developers > in those languages (who otherwise wouldn?t have changed anyway?) more > productive?. > > Now, the fact that 90% of developers like comfort and/or are learning > impaired and cannot learn something new > does NOT mean that ALL developers are lazy and/or learning impaired and > cannot learn something new?.. > > For those who CAN learn something new, or for the fresh new students with > blank, fresh new minds?..well, teach them something better > and more productive. > > And that would be (according to me..) the OTHER way around: a language 95% > declarative + 5% imperative. > > As I gave you as an example: when Oracle Fusion started the idea was that > Java, being easier to program in then the ?declarative? PL-SQL?. the > applications will be MUCH better. > > Well, 10 years later, multi-billion investment with epsilon returns, it > turns out that the PL-SQL version was MUCH better then the Java version. > (1000 times more code, more bugs, less productive, more developers, more > politics and decision makers, etc, etc ? as simple as that ..) > > A failure that Oracle never talks about ?.. just Oracle Fusion silently > disappeared from the marketing slides :-) > > ===== > > So, no, I would not take either side at this point. > > Best > Dana > > > > > > > > -------------- next part -------------- An HTML attachment was scrubbed... URL: From int19h at gmail.com Tue Jun 23 17:50:25 2015 From: int19h at gmail.com (Pavel Minaev) Date: Tue, 23 Jun 2015 17:50:25 -0700 Subject: [xquery-talk] Sequence comprehension WAS: SQL vs. XQuery (aka FOR vs FROM and RETURn vs. SELECT) In-Reply-To: References: <0F4FA788-3CB0-4FDC-BAEE-322147809174@me.com> <6C2D3421-B2A2-43F6-8B38-0564212E4AA0@me.com> Message-ID: I see what you're aiming at. But, in general, you can take an imperative language and produce a declarative subset of such a language. The obvious benefits there is that you don't have a syntactic or semantic mismatch between your declarative islands and the imperative sea of code around them. Declaring a function, for example, would be the same, it's just that if you want it to be pure, then you have to avoid leaking state changes or referencing any non-pure functions (possibly with some keyword to explicitly enforce these restrictions). So, for example, imagine that I take Roslyn , and use it to dynamically translate C# methods attributed with [Query] to equivalent XQuery code, transparently to the user. Obviously, they'd be limited with respect to the features of the language they are able to use in such methods, but it's much easier to explain the limitations than it is to explain the whole new syntax (and semantics, in some cases). I'm pretty sure that I could have a very reasonable 1:1 mapping from such a subset to the entirety of XQuery, actually, though some of it would probably not be quite as pretty. Also, correct me if I'm wrong, but it would seem that imperative patterns (variable assignments etc) can be optimized perfectly well so long as they're constrained (e.g. if the variable is local and no aliases are ever leaked). Basically, so long as you can clearly contain state changes, you can rewrite the whole thing as a purely functional monad, and that can be analyzed and optimized same as any other declarative data flow. On Tue, Jun 23, 2015 at 4:32 PM, daniela florescu wrote: > > > > I'm curious as to what exactly you believe to be features that are > necessary to semi-structured data that are unique to XQuery. I've looked at > the posts that you've linked to, and e.g. conditionals/typeswitches, > functions and recursive functions, and try/catch, are there in pretty much > any imperative language with sequence comprehensions, > > Pavel, > > you ignored one of the FIRST things I put there for a data processing > language: the necessity to be FUNCTIONAL in nature. > (aka, 90%+ functional without side effects) > > The characteristic of being ?functional? is a NECESSITY for being able to > do data flow analysis, aka the ability for the compiler to > know automatically what operations will be applied on each piece of data, > and what data is being given as input to each operation. > > Data flow analysis is a NECESSITY for optimization. > > Optimization is a NECESSITY for data processing for large volumes of data. > > ===== > > C# with select-from-where is nearly not as optimizable as XQuery with a > scripting extension (as Zorba used to have it for example). > > After 5 assignments you lost track of where the data came from and where > the data goes, and which data changed where, > and what indexes need automatic updates. > > You lost optimizability and logical/physical data independence. > > That?s all. > > It?s a trade-off. > > Best regards > Dana > > > -------------- next part -------------- An HTML attachment was scrubbed... URL: From dflorescu at me.com Tue Jun 23 17:58:34 2015 From: dflorescu at me.com (daniela florescu) Date: Tue, 23 Jun 2015 17:58:34 -0700 Subject: [xquery-talk] adding comprehension to imperative languages or vice-versa In-Reply-To: References: <0F4FA788-3CB0-4FDC-BAEE-322147809174@me.com> <6C2D3421-B2A2-43F6-8B38-0564212E4AA0@me.com> <0B5B62CA-9031-496B-9DFB-F88F0C5CB973@me.com> Message-ID: <138DC707-F60D-48DC-91F1-789EDE510F5D@me.com> > > I think we'll eventually get to your 95%+5% end goal this way anyway. It will just be slow enough that nobody will notice other than in retrospect. If it goes slowly, so be it. But I learned that CS goes through growth spurts, like children. You never know when the next ?wave? comes, or why. (e.g. it?s very likely the relational databases wouldn?t have ever seen the light at all if they wouldn?t have had an egomaniac and out-of-range greedy individual like Larry Ellison pushing for them?) In fact, there is SOME correlation that I can observe: in period of ?financial bubble? there is almost ZERO new technology attempted. People are too busy listening to the marketing noise to pay attention to the algorithms behind the noise ?. People pay too much attention to the gazzilions of bizzilions of dollars?to pay attention to functional vs. imperative and the impact of monads :-) It?s only crazy people like us?... Best Dana > > > > On Tue, Jun 23, 2015 at 4:23 PM, daniela florescu > wrote: > > > > As far as what's "better", I think that there are really two different questions here: what's "better" in The Right Way sense, and what's "better" in a "how do you get people to use this" sense. For the latter, there's no doubt in my mind that the way there is to get existing mainstream languages (which are all imperative at heart) to adopt more declarative goodness, including comprehensions/queries, as a subset - it's a much gentler transition for existing users of those languages, and more importantly, it's like a new instrument magically appearing in a toolbox that they already use daily - at some point they're bound to pick it up and use it even just out of sheer curiosity. It's much harder to get someone interested in a completely new language in comparison. > > As I said in my previous email. > > Now in 2015 I realize that developers have their ?favorite? language, and making them change it?s close to > impossible, so the optimal is to give them better tools to do their job in THE language they are more productive in. > > So if this is C#, or Javascript, or whatever?. let it be. > (ever crossed your mind why in an EC commerce site when you sort on price/sometinh, it GOES BACK TO THE SERVER most of the time to > do a simple sort on 20 products !???? Sounds stupid no, ? well, that?s because Javascript doesn?t HAVE a sortby ?.so ?) > > It?s better for those imperative languages to HAVE a sequence comprehension then NOT to have it. It makes the developers > in those languages (who otherwise wouldn?t have changed anyway?) more productive?. > > Now, the fact that 90% of developers like comfort and/or are learning impaired and cannot learn something new > does NOT mean that ALL developers are lazy and/or learning impaired and cannot learn something new?.. > > For those who CAN learn something new, or for the fresh new students with blank, fresh new minds?..well, teach them something better > and more productive. > > And that would be (according to me..) the OTHER way around: a language 95% declarative + 5% imperative. > > As I gave you as an example: when Oracle Fusion started the idea was that Java, being easier to program in then the ?declarative? PL-SQL?. the > applications will be MUCH better. > > Well, 10 years later, multi-billion investment with epsilon returns, it turns out that the PL-SQL version was MUCH better then the Java version. > (1000 times more code, more bugs, less productive, more developers, more politics and decision makers, etc, etc ? as simple as that ..) > > A failure that Oracle never talks about ?.. just Oracle Fusion silently disappeared from the marketing slides :-) > > ===== > > So, no, I would not take either side at this point. > > Best > Dana > > > > > > > > > _______________________________________________ > talk at x-query.com > http://x-query.com/mailman/listinfo/talk -------------- next part -------------- An HTML attachment was scrubbed... URL: From dflorescu at me.com Tue Jun 23 18:04:59 2015 From: dflorescu at me.com (daniela florescu) Date: Tue, 23 Jun 2015 18:04:59 -0700 Subject: [xquery-talk] Sequence comprehension WAS: SQL vs. XQuery (aka FOR vs FROM and RETURn vs. SELECT) In-Reply-To: References: <0F4FA788-3CB0-4FDC-BAEE-322147809174@me.com> <6C2D3421-B2A2-43F6-8B38-0564212E4AA0@me.com> Message-ID: <88A44C71-538E-418D-AA6E-31847569EDFA@me.com> Pavel, > > > > Also, correct me if I'm wrong, but it would seem that imperative patterns (variable assignments etc) can be optimized perfectly well so long as they're constrained (e.g. if the variable is local and no aliases are ever leaked). Basically, so long as you can clearly contain state changes, you can rewrite the whole thing as a purely functional monad, and that can be analyzed and optimized same as any other declarative data flow. Huh !??? :-) You say your developers are not productive if they use a new language, but they?ll be OK with you limiting their beloved language that they used for millennia !?? :-))) I think it is theoretically possible, but psychologically not feasible. Once you give people some freedom to do something, it?s very hard to take it back. (and what about all the legacy code!?) Those ?limits? have to be imposed directly in the language if you want faster improvements in the right direction?. otherwise I?m going to retire before this happens?:-) Best regards Dana From dflorescu at me.com Tue Jun 23 18:14:09 2015 From: dflorescu at me.com (daniela florescu) Date: Tue, 23 Jun 2015 18:14:09 -0700 Subject: [xquery-talk] Sequence comprehension WAS: SQL vs. XQuery (aka FOR vs FROM and RETURn vs. SELECT) In-Reply-To: References: <0F4FA788-3CB0-4FDC-BAEE-322147809174@me.com> <6C2D3421-B2A2-43F6-8B38-0564212E4AA0@me.com> Message-ID: <63A27C4D-8519-494B-A6BE-EA3571A2671E@me.com> > On Jun 23, 2015, at 5:50 PM, Pavel Minaev wrote: > > I see what you're aiming at. But, in general, you can take an imperative language and produce a declarative subset of such a language. The obvious benefits there is that you don't have a syntactic or semantic mismatch between your declarative islands and the imperative sea of code around them. Pavel, There is something ELSE that you missed in my list of requirements for processing semi-structured data. Even if you do what you say, and you extend existing programming languages (C++, Java, C#)?.. Those are ALL ?. strongly typed. (The only exception is Javascript, which has kind of a hacky, put together in a weekend kind of semantics?) This strongly typed thing hardly works for semi-structured data. Or, no, let?s be clear: ****it doesn?t work AT ALL****. You missed another bullet in my list (might look insignificant at first sight)?. but it is ESSENTIAL if you want to deal with semi-structured data. 4. A battery of implicit type conversions. http://x-query.com/pipermail/talk/2015-May/004719.html Those are definitely NOT easy to define for a data processing language, I tried to explain there why. Again, among all the programming languages that I know, XQuery has the best (ONLY!?) set of such operations. And again, those operations have NOTHING to do with XML. They are completely orthogonal to XML. Best regards Dana -------------- next part -------------- An HTML attachment was scrubbed... URL: From int19h at gmail.com Tue Jun 23 18:14:18 2015 From: int19h at gmail.com (Pavel Minaev) Date: Tue, 23 Jun 2015 18:14:18 -0700 Subject: [xquery-talk] Sequence comprehension WAS: SQL vs. XQuery (aka FOR vs FROM and RETURn vs. SELECT) In-Reply-To: <88A44C71-538E-418D-AA6E-31847569EDFA@me.com> References: <0F4FA788-3CB0-4FDC-BAEE-322147809174@me.com> <6C2D3421-B2A2-43F6-8B38-0564212E4AA0@me.com> <88A44C71-538E-418D-AA6E-31847569EDFA@me.com> Message-ID: The beauty of a subset is that it doesn't have to be applied universally. A single method that is responsible for querying the data (and its dependencies), for example, can be written in such a subset, while the rest of it remains the same (which also covers the legacy code angle). Gradually, as isolated pieces of code are rewritten by new or more educated developers with the new skills, they will also migrate. Obviously, if you were to write it declaratively from the get go, you might have a very different arrangement of pieces and interfaces between them in the first place, so the result is less than perfect... but I'll take that over writing for-loops for eternity. ~ And yes, it is easier. A C# developer doesn't need to be taught any new syntax to use the subset - they only need to be broadly told what things to avoid, and the compiler can trivially enforce it. With a new language, they would need to start with a completely new syntax, and live with the heretofore familiar concepts being utilized in utterly new ways (the vastly different meaning of "return" is a very good example, actually). On Tue, Jun 23, 2015 at 6:04 PM, daniela florescu wrote: > Pavel, > > > > > > > > Also, correct me if I'm wrong, but it would seem that imperative > patterns (variable assignments etc) can be optimized perfectly well so long > as they're constrained (e.g. if the variable is local and no aliases are > ever leaked). Basically, so long as you can clearly contain state changes, > you can rewrite the whole thing as a purely functional monad, and that can > be analyzed and optimized same as any other declarative data flow. > > > Huh !??? :-) > > You say your developers are not productive if they use a new language, but > they?ll be OK with you limiting > their beloved language that they used for millennia !?? :-))) > > I think it is theoretically possible, but psychologically not feasible. > > Once you give people some freedom to do something, it?s very hard to take > it back. (and what about all > the legacy code!?) > > Those ?limits? have to be imposed directly in the language if you want > faster improvements in the right direction?. > otherwise I?m going to retire before this happens?:-) > > Best regards > Dana > > > > > > > -------------- next part -------------- An HTML attachment was scrubbed... URL: From int19h at gmail.com Tue Jun 23 18:20:30 2015 From: int19h at gmail.com (Pavel Minaev) Date: Tue, 23 Jun 2015 18:20:30 -0700 Subject: [xquery-talk] Sequence comprehension WAS: SQL vs. XQuery (aka FOR vs FROM and RETURn vs. SELECT) In-Reply-To: References: <0F4FA788-3CB0-4FDC-BAEE-322147809174@me.com> <6C2D3421-B2A2-43F6-8B38-0564212E4AA0@me.com> <88A44C71-538E-418D-AA6E-31847569EDFA@me.com> Message-ID: C# has optional dynamic typing , actually. As you'd expect, it is very natural to use with JSON and similar unstructured data. I find this to be a good compromise, because most of the time I'm working with data that has at least a partial schema. So I want types to be enforced where possible, but when I need the laxity of dynamic typing, the door is right there - and once it's opened, everything on the other side is wonderfully dynamic without the need of any further reminders to that effect. As I recall, F# also has something similar, though I'm not familiar enough with it to comment. I believe there were some considerations of adding a similar feature to Java, as well? On Tue, Jun 23, 2015 at 6:14 PM, Pavel Minaev wrote: > The beauty of a subset is that it doesn't have to be applied universally. > A single method that is responsible for querying the data (and its > dependencies), for example, can be written in such a subset, while the rest > of it remains the same (which also covers the legacy code angle). > Gradually, as isolated pieces of code are rewritten by new or more educated > developers with the new skills, they will also migrate. Obviously, if you > were to write it declaratively from the get go, you might have a very > different arrangement of pieces and interfaces between them in the first > place, so the result is less than perfect... but I'll take that over > writing for-loops for eternity. ~ > > And yes, it is easier. A C# developer doesn't need to be taught any new > syntax to use the subset - they only need to be broadly told what things to > avoid, and the compiler can trivially enforce it. With a new language, they > would need to start with a completely new syntax, and live with the > heretofore familiar concepts being utilized in utterly new ways (the vastly > different meaning of "return" is a very good example, actually). > > On Tue, Jun 23, 2015 at 6:04 PM, daniela florescu > wrote: > >> Pavel, >> > >> > >> > >> > Also, correct me if I'm wrong, but it would seem that imperative >> patterns (variable assignments etc) can be optimized perfectly well so long >> as they're constrained (e.g. if the variable is local and no aliases are >> ever leaked). Basically, so long as you can clearly contain state changes, >> you can rewrite the whole thing as a purely functional monad, and that can >> be analyzed and optimized same as any other declarative data flow. >> >> >> Huh !??? :-) >> >> You say your developers are not productive if they use a new language, >> but they?ll be OK with you limiting >> their beloved language that they used for millennia !?? :-))) >> >> I think it is theoretically possible, but psychologically not feasible. >> >> Once you give people some freedom to do something, it?s very hard to take >> it back. (and what about all >> the legacy code!?) >> >> Those ?limits? have to be imposed directly in the language if you want >> faster improvements in the right direction?. >> otherwise I?m going to retire before this happens?:-) >> >> Best regards >> Dana >> >> >> >> >> >> >> > -------------- next part -------------- An HTML attachment was scrubbed... URL: From dflorescu at me.com Tue Jun 23 18:24:55 2015 From: dflorescu at me.com (daniela florescu) Date: Tue, 23 Jun 2015 18:24:55 -0700 Subject: [xquery-talk] Sequence comprehension WAS: SQL vs. XQuery (aka FOR vs FROM and RETURn vs. SELECT) In-Reply-To: References: <0F4FA788-3CB0-4FDC-BAEE-322147809174@me.com> <6C2D3421-B2A2-43F6-8B38-0564212E4AA0@me.com> <88A44C71-538E-418D-AA6E-31847569EDFA@me.com> Message-ID: <8D673F8A-A8B6-42FB-A04B-BACFBA4BF593@me.com> Pavel, I have to investigate further, but I?ve never heard that C# can treat JSON items as native C# objects. I don?t recall anywhere a description of what C# does when it has to grouby and the set of values are all over the map. But let me read more, and I?ll reply to you when i am more informed. As for schemas, that?s the entire point of semi-structured data. Sometimes you have schemas, sometimes not. Best regards Dana P.S. Even if C# would be ?perfect?. It?s Microsoft. End of story. Business has other rules then technology. > On Jun 23, 2015, at 6:20 PM, Pavel Minaev wrote: > > C# has optional dynamic typing , actually. As you'd expect, it is very natural to use with JSON and similar unstructured data. > > I find this to be a good compromise, because most of the time I'm working with data that has at least a partial schema. So I want types to be enforced where possible, but when I need the laxity of dynamic typing, the door is right there - and once it's opened, everything on the other side is wonderfully dynamic without the need of any further reminders to that effect. > > As I recall, F# also has something similar, though I'm not familiar enough with it to comment. I believe there were some considerations of adding a similar feature to Java, as well? > > On Tue, Jun 23, 2015 at 6:14 PM, Pavel Minaev > wrote: > The beauty of a subset is that it doesn't have to be applied universally. A single method that is responsible for querying the data (and its dependencies), for example, can be written in such a subset, while the rest of it remains the same (which also covers the legacy code angle). Gradually, as isolated pieces of code are rewritten by new or more educated developers with the new skills, they will also migrate. Obviously, if you were to write it declaratively from the get go, you might have a very different arrangement of pieces and interfaces between them in the first place, so the result is less than perfect... but I'll take that over writing for-loops for eternity. ~ > > And yes, it is easier. A C# developer doesn't need to be taught any new syntax to use the subset - they only need to be broadly told what things to avoid, and the compiler can trivially enforce it. With a new language, they would need to start with a completely new syntax, and live with the heretofore familiar concepts being utilized in utterly new ways (the vastly different meaning of "return" is a very good example, actually). > > On Tue, Jun 23, 2015 at 6:04 PM, daniela florescu > wrote: > Pavel, > > > > > > > > Also, correct me if I'm wrong, but it would seem that imperative patterns (variable assignments etc) can be optimized perfectly well so long as they're constrained (e.g. if the variable is local and no aliases are ever leaked). Basically, so long as you can clearly contain state changes, you can rewrite the whole thing as a purely functional monad, and that can be analyzed and optimized same as any other declarative data flow. > > > Huh !??? :-) > > You say your developers are not productive if they use a new language, but they?ll be OK with you limiting > their beloved language that they used for millennia !?? :-))) > > I think it is theoretically possible, but psychologically not feasible. > > Once you give people some freedom to do something, it?s very hard to take it back. (and what about all > the legacy code!?) > > Those ?limits? have to be imposed directly in the language if you want faster improvements in the right direction?. > otherwise I?m going to retire before this happens?:-) > > Best regards > Dana > > > > > > > > -------------- next part -------------- An HTML attachment was scrubbed... URL: From int19h at gmail.com Tue Jun 23 18:50:38 2015 From: int19h at gmail.com (Pavel Minaev) Date: Tue, 23 Jun 2015 18:50:38 -0700 Subject: [xquery-talk] Sequence comprehension WAS: SQL vs. XQuery (aka FOR vs FROM and RETURn vs. SELECT) In-Reply-To: <8D673F8A-A8B6-42FB-A04B-BACFBA4BF593@me.com> References: <0F4FA788-3CB0-4FDC-BAEE-322147809174@me.com> <6C2D3421-B2A2-43F6-8B38-0564212E4AA0@me.com> <88A44C71-538E-418D-AA6E-31847569EDFA@me.com> <8D673F8A-A8B6-42FB-A04B-BACFBA4BF593@me.com> Message-ID: C# by itself doesn't have any optimizations for groupby (or any other sequence operations, for that matter). They're all just syntactic sugar for method calls. But because those methods can capture any lambdas passed to them as expression trees instead of opaque functions, in the end you can actually get a single tree of all operations that constitute a query, including all the invoked functions etc with a little effort. "dynamic" is largely orthogonal to all this, except that it basically disables the type checks to shut up the compiler and let you use arbitrary operands for the operators - the exact semantics of your entire query is ultimately controlled by whatever will be interpreting the expression tree, not by the language spec. In any case, I'm not arguing that C# is perfect in that (or any other) respect. It merely serves as a useful example, that I am personally very familiar with, of how far a Java-like language can be pushed if there's desire and demand, and how an existing community of users of such a language can eagerly adopt all those new things if they are presented in a familiar coating. There may well be other examples, probably better ones (Scala?), though probably none quite so popular - but I'm just using this one because I can give you references to various features that I bring up in this discussion off the top of my head. (I'm also not sure why it being MSFT matters all that much these days - the spec is published, and the reference implementation for both the compiler and the underlying platform is now fully portable and open source under a sane license. It's basically in the same boat as any other non-committee-owned but otherwise open language now.) On Tue, Jun 23, 2015 at 6:24 PM, daniela florescu wrote: > Pavel, > > I have to investigate further, but I?ve never heard that C# can treat JSON > items as native C# objects. > > I don?t recall anywhere a description of what C# does when it has to > grouby and the set of values are all over the map. > > But let me read more, and I?ll reply to you when i am more informed. > > As for schemas, that?s the entire point of semi-structured data. > > Sometimes you have schemas, sometimes not. > > Best regards > Dana > > P.S. Even if C# would be ?perfect?. It?s Microsoft. End of story. Business > has other rules then technology. > > > > On Jun 23, 2015, at 6:20 PM, Pavel Minaev wrote: > > C# has optional dynamic typing > , actually. As > you'd expect, it is very natural to use with JSON > and > similar unstructured data. > > I find this to be a good compromise, because most of the time I'm working > with data that has at least a partial schema. So I want types to be > enforced where possible, but when I need the laxity of dynamic typing, the > door is right there - and once it's opened, everything on the other side is > wonderfully dynamic without the need of any further reminders to that > effect. > > As I recall, F# also has something similar, though I'm not familiar enough > with it to comment. I believe there were some considerations of adding a > similar feature to Java, as well? > > On Tue, Jun 23, 2015 at 6:14 PM, Pavel Minaev wrote: > >> The beauty of a subset is that it doesn't have to be applied universally. >> A single method that is responsible for querying the data (and its >> dependencies), for example, can be written in such a subset, while the rest >> of it remains the same (which also covers the legacy code angle). >> Gradually, as isolated pieces of code are rewritten by new or more educated >> developers with the new skills, they will also migrate. Obviously, if you >> were to write it declaratively from the get go, you might have a very >> different arrangement of pieces and interfaces between them in the first >> place, so the result is less than perfect... but I'll take that over >> writing for-loops for eternity. ~ >> >> And yes, it is easier. A C# developer doesn't need to be taught any new >> syntax to use the subset - they only need to be broadly told what things to >> avoid, and the compiler can trivially enforce it. With a new language, they >> would need to start with a completely new syntax, and live with the >> heretofore familiar concepts being utilized in utterly new ways (the vastly >> different meaning of "return" is a very good example, actually). >> >> On Tue, Jun 23, 2015 at 6:04 PM, daniela florescu >> wrote: >> >>> Pavel, >>> > >>> > >>> > >>> > Also, correct me if I'm wrong, but it would seem that imperative >>> patterns (variable assignments etc) can be optimized perfectly well so long >>> as they're constrained (e.g. if the variable is local and no aliases are >>> ever leaked). Basically, so long as you can clearly contain state changes, >>> you can rewrite the whole thing as a purely functional monad, and that can >>> be analyzed and optimized same as any other declarative data flow. >>> >>> >>> Huh !??? :-) >>> >>> You say your developers are not productive if they use a new language, >>> but they?ll be OK with you limiting >>> their beloved language that they used for millennia !?? :-))) >>> >>> I think it is theoretically possible, but psychologically not feasible. >>> >>> Once you give people some freedom to do something, it?s very hard to >>> take it back. (and what about all >>> the legacy code!?) >>> >>> Those ?limits? have to be imposed directly in the language if you want >>> faster improvements in the right direction?. >>> otherwise I?m going to retire before this happens?:-) >>> >>> Best regards >>> Dana >>> >>> >>> >>> >>> >>> >>> >> > > -------------- next part -------------- An HTML attachment was scrubbed... URL: From ihe.onwuka at gmail.com Tue Jun 23 21:57:18 2015 From: ihe.onwuka at gmail.com (Ihe Onwuka) Date: Wed, 24 Jun 2015 00:57:18 -0400 Subject: [xquery-talk] adding comprehension to imperative languages or vice-versa In-Reply-To: <0B5B62CA-9031-496B-9DFB-F88F0C5CB973@me.com> References: <0F4FA788-3CB0-4FDC-BAEE-322147809174@me.com> <6C2D3421-B2A2-43F6-8B38-0564212E4AA0@me.com> <0B5B62CA-9031-496B-9DFB-F88F0C5CB973@me.com> Message-ID: On Tue, Jun 23, 2015 at 7:23 PM, daniela florescu wrote: > > > > As far as what's "better", I think that there are really two different > questions here: what's "better" in The Right Way sense, and what's "better" > in a "how do you get people to use this" sense. For the latter, there's no > doubt in my mind that the way there is to get existing mainstream languages > (which are all imperative at heart) to adopt more declarative goodness, > including comprehensions/queries, as a subset - it's a much gentler > transition for existing users of those languages, and more importantly, > it's like a new instrument magically appearing in a toolbox that they > already use daily - at some point they're bound to pick it up and use it > even just out of sheer curiosity. It's much harder to get someone > interested in a completely new language in comparison. > > As I said in my previous email. > > Now in 2015 I realize that developers have their ?favorite? language, and > making them change it?s close to > impossible, so the optimal is to give them better tools to do their job in > THE language they are more productive in. > > So if this is C#, or Javascript, or whatever?. let it be. > (ever crossed your mind why in an EC commerce site when you sort on > price/sometinh, it GOES BACK TO THE SERVER most of the time to > do a simple sort on 20 products !???? Sounds stupid no, ? well, that?s > because Javascript doesn?t HAVE a sortby ?.so ?) > > It?s better for those imperative languages to HAVE a sequence > comprehension then NOT to have it. It makes the developers > in those languages (who otherwise wouldn?t have changed anyway?) more > productive?. > > Now, the fact that 90% of developers like comfort and/or are learning > impaired and cannot learn something new > does NOT mean that ALL developers are lazy and/or learning impaired and > cannot learn something new?.. > > True, but you will still have sociological problems, with many of the old guard protecting their turf and pitching up to code reviews and the like objecting to the "new" code because it's "hard to understand" or it's "non-performant". For those who CAN learn something new, or for the fresh new students with > blank, fresh new minds?..well, teach them something better > and more productive. > > What students? Students don't typically enter university these days as virgin programmers (and haven't for a long time). They pitch up believing they know how to program and believing they know what programming languages they should be taught in. So professors have to run the gauntlet of why are you teaching me this weird language instead of Java etc and how is this going to help me get a job. I know the right answers to these questions but universities are under pressure from students in this regard. > And that would be (according to me..) the OTHER way around: a language 95% > declarative + 5% imperative. > > Erik Mejier says this is not enough. https://queue.acm.org/detail.cfm?id=2611829 -------------- next part -------------- An HTML attachment was scrubbed... URL: From dflorescu at me.com Tue Jun 23 23:24:56 2015 From: dflorescu at me.com (daniela florescu) Date: Tue, 23 Jun 2015 23:24:56 -0700 Subject: [xquery-talk] adding comprehension to imperative languages or vice-versa In-Reply-To: References: <0F4FA788-3CB0-4FDC-BAEE-322147809174@me.com> <6C2D3421-B2A2-43F6-8B38-0564212E4AA0@me.com> <0B5B62CA-9031-496B-9DFB-F88F0C5CB973@me.com> Message-ID: <8D96A4F9-FAF7-4CDE-8BF9-DDA8A46D92B0@me.com> > > Erik Mejier says this is not enough. > > https://queue.acm.org/detail.cfm?id=2611829 Erik Meijer, while being an extremely smart person, is not God :-) And I don?t see anything in this article that proves that one cannot mix those: all the arguments he brings are for me just a reminder that, indeed, if you DO mix functional and imperative constructs or side-effects, you better know what you are doing at compilation and optimization time?.. That?s all. Some details about the stuff one has to be careful about in Module 12 here ? but keep in mind that the slides are 9 years old?.:( http://web.stanford.edu/class/cs345b/ Best regards Dana -------------- next part -------------- An HTML attachment was scrubbed... URL: From ihe.onwuka at gmail.com Tue Jun 23 23:29:05 2015 From: ihe.onwuka at gmail.com (Ihe Onwuka) Date: Wed, 24 Jun 2015 02:29:05 -0400 Subject: [xquery-talk] adding comprehension to imperative languages or vice-versa In-Reply-To: References: <0F4FA788-3CB0-4FDC-BAEE-322147809174@me.com> <6C2D3421-B2A2-43F6-8B38-0564212E4AA0@me.com> <0B5B62CA-9031-496B-9DFB-F88F0C5CB973@me.com> Message-ID: On Tue, Jun 23, 2015 at 8:42 PM, Pavel Minaev wrote: > > That's why I love the fact that functional and declarative stuff is > creeping into those mainstream imperative languages. It gradually gets me > to the point where I can write neat declarative code *in production*, and > no-one objects because they don't realize that it's radically different > from what they're used to! (and those who do, are generally in the same > boat as me and enjoy it the same). For them, it's just some new syntax that > got added to the language they know and use, and so obviously it's okay by > default. > > I don't think this is generally applicable. For example look at Google's Python standards https://google-styleguide.googlecode.com/svn/trunk/pyguide.html Comprehensions are only allowed for "simple cases" otherwise use a loop. No mention of fold anywhere in the document which I interpret as meaning don't use it. -------------- next part -------------- An HTML attachment was scrubbed... URL: From int19h at gmail.com Wed Jun 24 00:21:52 2015 From: int19h at gmail.com (Pavel Minaev) Date: Wed, 24 Jun 2015 00:21:52 -0700 Subject: [xquery-talk] adding comprehension to imperative languages or vice-versa In-Reply-To: References: <0F4FA788-3CB0-4FDC-BAEE-322147809174@me.com> <6C2D3421-B2A2-43F6-8B38-0564212E4AA0@me.com> <0B5B62CA-9031-496B-9DFB-F88F0C5CB973@me.com> Message-ID: Google is ultra-conservative in their approach to coding. It's not just the FP stuff, their C++ coding standard is equally ridiculous for other reasons. I suspect it's also why they use Java so much, and I expect that they will ban lambdas there when they move on to Java 8. So I am inclined to treat them as a more extreme case than normal. Perhaps they do have good reasons to do things that way, but even if so, I don't think those reasons apply to most. For comparison, in my experience working at Microsoft, declarative operations on sequences (either comprehensions, or just direct use of map/filter/... or local equivalents thereof) are widely accepted and used in production C# and Python code, and have been for at least six years. On my team, for example, the use of an explicit loop where a comprehension would suffice would generally be flagged in a code review right away. The only objections that I've ever heard come from perf hawks, and that is sometimes justifiable, but is really an implementation deficiency - there's no reason why a compiler cannot optimize a comprehension to be as efficient as a straight loop in most cases, and generally be better than it currently is in all cases; it just wasn't a goal for the C# compiler guys (and of course it's not a concern for Python at all). Speaking of "hard to understand" and "not as performant" arguments popping up... I remember that being quite frequent in the community back when all this stuff was introduced into the language and the framework. Three years later, it was already a distinctive, if still loud, minority. Now, you still hear it occasionally, but most people just shrug at it, and lambdas and LINQ are just part of idiomatic C#. Same thing happened with type inference ("var") in C#, and lambdas in C++, and many other things. And I think we are seeing a replay with lambdas in Java 8 (it's really funny to read the disapproving blog posts about Java lambdas today; you could s/Java/C#/ and they'd be word for word the same as what I've read back in 2008). Thing is, programmers are a pragmatic bunch. If it really does work better (= lets them be more productive; you don't need to be a scientist to gauge that), they'll get used to it, and will eventually grow fond of it, so long as you don't force them to go all in on it right away. A certain amount of bickering is to be expected, and there will always be stalwart holdouts (I mean, we still have people signing a petition to bring back VB6, 17 years later!), but overall the industry moves on. I'd rather be an optimist on account of the direction of that movement and its ultimate destination, than a pessimist on account of its speed, or the occasional detour along the way. And it's not like all this is recent, either. Weren't there very similar objections against structured programming back in the day? You know, why complicate language with these new-fangled and hard to understand loops if a simple conditional jump is just as expressive and can be hand-optimized much better than even the fanciest compiler can manage? And yet, here we are. On Tue, Jun 23, 2015 at 11:29 PM, Ihe Onwuka wrote: > > On Tue, Jun 23, 2015 at 8:42 PM, Pavel Minaev wrote: > >> >> That's why I love the fact that functional and declarative stuff is >> creeping into those mainstream imperative languages. It gradually gets me >> to the point where I can write neat declarative code *in production*, >> and no-one objects because they don't realize that it's radically different >> from what they're used to! (and those who do, are generally in the same >> boat as me and enjoy it the same). For them, it's just some new syntax that >> got added to the language they know and use, and so obviously it's okay by >> default. >> >> > I don't think this is generally applicable. For example look at Google's > Python standards > > https://google-styleguide.googlecode.com/svn/trunk/pyguide.html > > Comprehensions are only allowed for "simple cases" otherwise use a loop. > No mention of fold anywhere in the document which I interpret as meaning > don't use it. > > -------------- next part -------------- An HTML attachment was scrubbed... URL: From ihe.onwuka at gmail.com Wed Jun 24 00:30:42 2015 From: ihe.onwuka at gmail.com (Ihe Onwuka) Date: Wed, 24 Jun 2015 03:30:42 -0400 Subject: [xquery-talk] adding comprehension to imperative languages or vice-versa In-Reply-To: <8D96A4F9-FAF7-4CDE-8BF9-DDA8A46D92B0@me.com> References: <0F4FA788-3CB0-4FDC-BAEE-322147809174@me.com> <6C2D3421-B2A2-43F6-8B38-0564212E4AA0@me.com> <0B5B62CA-9031-496B-9DFB-F88F0C5CB973@me.com> <8D96A4F9-FAF7-4CDE-8BF9-DDA8A46D92B0@me.com> Message-ID: On Wed, Jun 24, 2015 at 2:24 AM, daniela florescu wrote: > > Erik Mejier says this is not enough. > > https://queue.acm.org/detail.cfm?id=2611829 > > > Erik Meijer, while being an extremely smart person, is not God :-) > > And I don?t see anything in this article that proves that one cannot mix > those: all the > arguments he brings are for me just a reminder that, indeed, if you DO mix > functional > and imperative constructs or side-effects, you better know what you are > doing at compilation > and optimization time?.. > > I'm not pretending to understand much of what he was going on about but the headline of his article is right for an entirely different reason. Let's step back a moment and consider what actually happens wen an imperative language adds functional constructs - and I am not sure whether these are intended consequences or not. 1. It puts a break on agitation to migrate to a proper functional language. Both sides are sort of happy. The imperative people will say no need to go to Scala/Clojure, you can do FP in Java 8. No need to go to F# you can do FP in C# and the functional people are allowed the illusion that they will be able to write functional code in these languages. They won't really because the coding standards and need to conform will always be biased towards the imperative perspective but they allow themselves to think that they will and they do get small wins here and there. 2. Basically people carry on coding as they always have. It is not sufficient to introduce functional constructs, to get people to use them you have to rewire the way they think and the way they design programs. People who do not know what mathematical induction is will not adapt to a programming style and language constructs that requires them to think inductively. If they have been bred to believe that recursion is inefficient (because of languages that don't optimise tail-calls) they will not adapt to a style of programming where that is the primary means of effecting iteration. So ultimately not only. do you not get anywhere near half your 95% target (and I bet that also applies to Scala) you also stifle progress towards migrating to a functional programming environment. Rather what you end up with can be summarised from the Google Python coding standards. A smattering of map and filters, some trivial list comprehensions otherwise it's business as usual. -------------- next part -------------- An HTML attachment was scrubbed... URL: From ihe.onwuka at gmail.com Wed Jun 24 01:28:52 2015 From: ihe.onwuka at gmail.com (Ihe Onwuka) Date: Wed, 24 Jun 2015 04:28:52 -0400 Subject: [xquery-talk] adding comprehension to imperative languages or vice-versa In-Reply-To: References: <0F4FA788-3CB0-4FDC-BAEE-322147809174@me.com> <6C2D3421-B2A2-43F6-8B38-0564212E4AA0@me.com> <0B5B62CA-9031-496B-9DFB-F88F0C5CB973@me.com> Message-ID: On Wed, Jun 24, 2015 at 3:21 AM, Pavel Minaev wrote: > Google is ultra-conservative in their approach to coding. > Google and every bank and insurance company under the sun and god knows how many other places but certainly the majority. but not because it's irrelevant or that I don't agree ......see comments at end > Thing is, programmers are a pragmatic bunch. If it really does work better > (= lets them be more productive; you don't need to be a scientist to gauge > that), they'll get used to it, and will eventually grow fond of it, so long > as you don't force them to go all in on it right away. > They are pragmatic in the sense that they generally won't bother learning stuff if they don't have to and/or can't foresee being able to use it because of the very reasons why you say you don't use XQuery/Haskell. At some (i.e more than one) of the investment banks I've been, the standard methodology for dealing with complexity is to crank out the debugger. When a guy there tells you he is being pragmatic thats the sort of thing he means. > A certain amount of bickering is to be expected, and there will always be > stalwart holdouts (I mean, we still have people signing a petition to bring > back VB6, 17 years later!), but overall the industry moves on. I'd rather > be an optimist on account of the direction of that movement and its > ultimate destination, than a pessimist on account of its speed, or the > occasional detour along the way. > > Pavel if you work for Microsoft you are probably surrounded by smart colleagues who have the capacity to get it which makes you an outlier (sorry to use such a word). I remember sitting next to an MIT graduate on a flight talking about the adjustment you have to make when you leave an environment where you are surrounded by smart people so that you don't keep saying DUHHHH! at the things and thoughts you encounter in the "real world". Functional programming enforces a design methodology that has the benign side effect facilitating the conquering of complexity BUT ONLY IF YOU GET IT. Those who don't will spend an entire weekend trying and failing to figure out how to write a fibonacci function or come up with a 37 line solution if asked to code Pascal's triangle. In an imperative coding environment a programmer can usually fashion something that works (or gives the outward impression that it works). This is not the case with functional programming which entails a totally different thought process. So whereas FP is more productive for those who get it, it renders those who don't incapable of producing anything at all and those who don't make up the majority of the programming populace. It's always better to look and sound optimistic but the biggest influence on what progress is made in the future will be how those in the present think and in the main that has not really changed. -------------- next part -------------- An HTML attachment was scrubbed... URL: From pavel.velikhov at gmail.com Wed Jun 24 01:41:25 2015 From: pavel.velikhov at gmail.com (Pavel Velikhov) Date: Wed, 24 Jun 2015 11:41:25 +0300 Subject: [xquery-talk] adding comprehension to imperative languages or vice-versa In-Reply-To: References: <0F4FA788-3CB0-4FDC-BAEE-322147809174@me.com> <6C2D3421-B2A2-43F6-8B38-0564212E4AA0@me.com> <0B5B62CA-9031-496B-9DFB-F88F0C5CB973@me.com> Message-ID: <9A41B438-46A7-4EAD-96A1-E2527FF7021E@gmail.com> Ihe, This is the most depressing post on programming I have read in years! Best regards, Pavel > On 24 Jun 2015, at 11:28, Ihe Onwuka wrote: > > > On Wed, Jun 24, 2015 at 3:21 AM, Pavel Minaev > wrote: > Google is ultra-conservative in their approach to coding. > > Google and every bank and insurance company under the sun and god knows how many other places but certainly the majority. > > > > but not because it's irrelevant or that I don't agree ......see comments at end > > > Thing is, programmers are a pragmatic bunch. If it really does work better (= lets them be more productive; you don't need to be a scientist to gauge that), they'll get used to it, and will eventually grow fond of it, so long as you don't force them to go all in on it right away. > > They are pragmatic in the sense that they generally won't bother learning stuff if they don't have to and/or can't foresee being able to use it because of the very reasons why you say you don't use XQuery/Haskell. At some (i.e more than one) of the investment banks I've been, the standard methodology for dealing with complexity is to crank out the debugger. When a guy there tells you he is being pragmatic thats the sort of thing he means. > > A certain amount of bickering is to be expected, and there will always be stalwart holdouts (I mean, we still have people signing a petition to bring back VB6, 17 years later!), but overall the industry moves on. I'd rather be an optimist on account of the direction of that movement and its ultimate destination, than a pessimist on account of its speed, or the occasional detour along the way. > > > Pavel if you work for Microsoft you are probably surrounded by smart colleagues who have the capacity to get it which makes you an outlier (sorry to use such a word). I remember sitting next to an MIT graduate on a flight talking about the adjustment you have to make when you leave an environment where you are surrounded by smart people so that you don't keep saying DUHHHH! at the things and thoughts you encounter in the "real world". > > Functional programming enforces a design methodology that has the benign side effect facilitating the conquering of complexity BUT ONLY IF YOU GET IT. > Those who don't will spend an entire weekend trying and failing to figure out how to write a fibonacci function or come up with a 37 line solution if asked to code Pascal's triangle. > > In an imperative coding environment a programmer can usually fashion something that works (or gives the outward impression that it works). This is not the case with functional programming which entails a totally different thought process. So whereas FP is more productive for those who get it, it renders those who don't incapable of producing anything at all and those who don't make up the majority of the programming populace. > > It's always better to look and sound optimistic but the biggest influence on what progress is made in the future will be how those in the present think and in the main that has not really changed. > _______________________________________________ > talk at x-query.com > http://x-query.com/mailman/listinfo/talk ? ?????????, ????? ??????? pavel.velikhov at gmail.com -------------- next part -------------- An HTML attachment was scrubbed... URL: From ihe.onwuka at gmail.com Wed Jun 24 08:55:46 2015 From: ihe.onwuka at gmail.com (Ihe Onwuka) Date: Wed, 24 Jun 2015 11:55:46 -0400 Subject: [xquery-talk] Does XQuery fit anywhere in this landscape. In-Reply-To: <0AE334D4-CFE8-4F75-A4F0-FEA23A66FEBC@me.com> References: <43A05E4A-CA57-4563-A988-922A055EF70B@saxonica.com> <0AE334D4-CFE8-4F75-A4F0-FEA23A66FEBC@me.com> Message-ID: On Tue, Jun 23, 2015 at 1:16 PM, daniela florescu wrote: > > What WILL convince them though is a strong use case, a vertical where tons > of money can be made. > > Think AI/machine learning. For how many decades those guys were working in > their corner, ignored and > humored ??until SUDDENLY, Google realized that they can make LOTS OF MONEY > with their work !? > > What XQuery or JSONiq need right now are strong use cases. Stuff that can > be done with XQuery or JSONiq, but cannot > be done otherwise. > > I think what helps with machine learning is that it is not dragged down by being something everybody thinks they can or should do, so progress is not inhibited. The use case for XQuery and JSONiq is there but it is being blocked by a belief that SQL++ or N1QL or whatever will satisfice. Look to history. How did relational databases supplant CODASYL. Firstly the biggest fish in the pond IBM had a product and backed the technology to the hilt. Then there was a sustained and successful campaign initiated by Codd and Date but grew momentum to differentiate between a proper relational database and a database that just had a relational veneer. The former is out of the hands of the XQuery community, the latter isn't. Half the problem is there isn't a consensus on what a query language should be able to do. So formulate the equivalent of Codd's 12 rules for a modern day query language such that each one is aligned to a discernible benefit i.e this is what you are missing if your language doesn't do this and can be relatively easily verified. We don't at this point know whether these SQL variants will turn out to be the equivalent of a modern day object oriented Cobol, because right now their users aren't given reason to question their capabilities and sound of those that would is drowned out by the propaganda deluge. Daniela you've already started this with contributions to the list but it needs to be fleshed out somewhat e.g composability, what are you missing in practical terms if your language is not composable and how would you demonstrate this property/benefit in a manner that can be critically assessed. If you can get vendors to assess their offerings by the criteria defined then half the battle is won. -------------- next part -------------- An HTML attachment was scrubbed... URL: From mike at saxonica.com Wed Jun 24 09:03:28 2015 From: mike at saxonica.com (Michael Kay) Date: Wed, 24 Jun 2015 17:03:28 +0100 Subject: [xquery-talk] Does XQuery fit anywhere in this landscape. In-Reply-To: References: <43A05E4A-CA57-4563-A988-922A055EF70B@saxonica.com> <0AE334D4-CFE8-4F75-A4F0-FEA23A66FEBC@me.com> Message-ID: > > Look to history. How did relational databases supplant CODASYL. Firstly the biggest fish in the pond IBM had a product and backed the technology to the hilt. Then there was a sustained and successful campaign initiated by Codd and Date but grew momentum to differentiate between a proper relational database and a database that just had a relational veneer. But the biggest factor was probably that the move to minicomputer architecture created a discontinuity that forced people to consider change. You need to do two things: convince people that the new technology is better (or at least, is cool), and give them a big kick up the backside to get them out of their comfort zone. Michael Kay Saxonica From pavel.velikhov at gmail.com Wed Jun 24 09:30:57 2015 From: pavel.velikhov at gmail.com (Pavel Velikhov) Date: Wed, 24 Jun 2015 19:30:57 +0300 Subject: [xquery-talk] Does XQuery fit anywhere in this landscape. In-Reply-To: References: <43A05E4A-CA57-4563-A988-922A055EF70B@saxonica.com> <0AE334D4-CFE8-4F75-A4F0-FEA23A66FEBC@me.com> Message-ID: <6341CB62-43C2-4CA1-8B05-E10918A68EAF@gmail.com> There is a big trend now to build Web Application using APIs. This seems like a much better idea than building HTML from XML with XQuery. These APIs are usually REST apis (i.e. the URL encodes query parameters) with JSON as output. So the data for these APIs can come from a JSON database and REST calls can be translated into JSONiq. And the data needs to be prepared, sometimes it needs to go through a number of stages. Each of that stage could also be done with JSONiq. The application then is a heavy client, build in some .js framework, and its runs queries against the API and is responsible only for the presentation layer. A lot of people are content with MongoDB to store the JSONs. So a killer use-case needs to look beyond dumb storage of JSONs. Maybe focus on the preparation/transformation/cleaning/merging stuff. > On 24 Jun 2015, at 19:03, Michael Kay wrote: > >> >> Look to history. How did relational databases supplant CODASYL. Firstly the biggest fish in the pond IBM had a product and backed the technology to the hilt. Then there was a sustained and successful campaign initiated by Codd and Date but grew momentum to differentiate between a proper relational database and a database that just had a relational veneer. > > But the biggest factor was probably that the move to minicomputer architecture created a discontinuity that forced people to consider change. You need to do two things: convince people that the new technology is better (or at least, is cool), and give them a big kick up the backside to get them out of their comfort zone. > > Michael Kay > Saxonica > > > > _______________________________________________ > talk at x-query.com > http://x-query.com/mailman/listinfo/talk ? ?????????, ????? ??????? pavel.velikhov at gmail.com From dflorescu at me.com Wed Jun 24 11:27:49 2015 From: dflorescu at me.com (daniela florescu) Date: Wed, 24 Jun 2015 11:27:49 -0700 Subject: [xquery-talk] worries about the future of JSON query processing Message-ID: Dear Ihe, you seem very concerned that the half-baked SQL-based languages for querying JSON will prevale, and years of experience in building XQuery will be lost. I don?t share your fears and concerns, and here is why. 1. There WILL be language ?miscarriages? in the industry: MongoDB?s one, N1QL one, others ? ========================================================================== Those are the ones half baked, with no semantics, built bottom up and more by example rather then by specification. Those will NOT survive. For plenty of reasons. Even if millions of dollars will be spent into marketing for them. Nature usually takes care of those, eventually. - no basic theoretical foundations, no specification, so no researcher will touch them with a stick, and no professor will touch them for teaching with a stick - no serious optimization behind them, because no serious specification - nobody who knows what they are DOING in those respective teams (!!!!!!) ? I know the people who build those, they have NO clue of what they are doing - they compete AGAINST each other, and no company will support the OTHER company?s language - they are built bottom up, one operator at a time, without a global picture?..so eventually they?ll become so complex nobody will be to use them. - neither of those languages will have enough share of the market for tools (like Tableau) to be interested to integrate them. Take for example N1QL. Which database is likely to support it ? CouchDB, because they made it. Oracle, SQL Server, DB2 will NOT support it. I can bet a large amount of money on that. People working in those companies KNOW what they are talking about in terms of query languages and query processing, and they will NOT accept those half baked attempts. HP?s Vertica and other of it?s kind is likely to follow Oracle, SQL Server and DB2 bunch, and not CouchDB. Who else ? - MySQL, possible but I REALLY doubt it, because I think Oracle would like to have the same language on both sides (big Oracle and MySQL) - Postgress, possible (and that would be a concern, indeed..) Among the NoSQL databases: none of the other then CouchDB will support it. Mongo, Cassandra, Riak, niet. None of them will support it, because they have no interest to give CouchDB the upper hand. MarkLogic !? The jury is out of that, I?ve seen them doing enough silly things recently (I mean?. Javascript on the SEVER side !???) so who knows, they might be silly enough to do that. They are in an awkward position right now. Elastic Search !? Maybe, but those guys are not able to write a query processor if they would need to save their lives. It?s not in their DNA? Overall?. nothing to worry about. 2. Scientific exercises like SQL++ (San Diego Univ), AQL (Irvine University) ========================================================= Unlike the previous category, those are likely to be well specified, with a clean semantics and with some aesthetics into them. Those are very good for research, and researchers will use them for a long time to teach and to prove all kinds of interesting stuff. Unfortunately, very likely they will not make it into the industry, for the following reasons: - researchers have no clue how to talk to product people - PhD students don?t know how to write industrial -strength code even if they?d have to save their lives (and it?s not their job anyway). - they have limited expressive power to be usable in practice But they will be popular (on paper). 3. Extensions of REAL SQL with JSON support. This will be EXACTLY like SQL/XML, but for JSON. ============================================================================= This one will be proposed by a consortium of Oracle+ SQLServer+IBM., and implemented by all three, plus eventually all the other SQL-based databases (Vertica, etc). I see it coming. It?s coming ?..every day now?. :-) But things will move slowly there, as Oracle is producing a new egg (aka a new release) every 5 years so? where is the rush !? :-) This one WILL be used and useful of many applications: for the cases where JSON is simple and the ?query? is simple. And there is no shame in it?. there are MANY of those simple cases. As soon as you get out of the simple JSON/simple query, you are out of luck with this approach, though. (as it was the case with XML and SQL/XML). 4. Imperative programming languages with sequence comprehension designed for JSON ===================================================================== Take Javascript for example, and add a FLWOR expression to it, with some well designed path expressions ala XPath. Result could be really nice (as nice as Javascript can be..), and usable in many applications. As the number of Javascript developers is large, this will be widely used. Could run both server side, as well as client side. (optimization on server side for large data sets a little difficult I would say though?) 5. XQuery-Based extensions for JSON (e.g. JSONiq) ========================================== This approach is for the hard core: capable of dealing with complex JSON, complex processing and be able to be optimized for large datasets. Those will be the ones capable of dealing with ?serious? JSON, aka some JSON that has other basic types then numeric and strings?.. like a date, maybe !??? :-) Those will be the ones capable to deal with JSON with schemas and types. ===================================================================== If you look carefully, only (3), (4) and (5) have actually chances of success in industry. And all three will probably be used in practice. They?ll probably share the market for a long time. But I would like to notice something: one of the ?bugs? of XQuery becomes now a ?feature?: the complexity. Once you have an XQuery/JSONiq processor, one can support almost EVERYTHING ELSE!!. It?s just a matter of putting another parser with a slightly different syntax. Everything else is a subset !!!! All the existing XQuery processors, build with lots of work and sweat over the past 10 years, are rich and mature enough now to evolve in various directions?.depending where the market goes. ..?. and this, MUCH faster then any OTHER query processor for JSON. My belief is that a query processor is like a good French wine?. needs time to mature, and there is nothing anybody can do to speed up the process. Well, the fact that the existing XQuery processors ALREADY spent 10+ years maturing their query processor means that now they have 10+ years leg of advance over the others query processors who start from scratch now. This is a MAJOR advantage. I hope that XQuery implementors will take advantage of it !!!! :-) Best regards Dana From ihe.onwuka at gmail.com Thu Jun 25 07:10:25 2015 From: ihe.onwuka at gmail.com (Ihe Onwuka) Date: Thu, 25 Jun 2015 10:10:25 -0400 Subject: [xquery-talk] Does XQuery fit anywhere in this landscape. In-Reply-To: <6341CB62-43C2-4CA1-8B05-E10918A68EAF@gmail.com> References: <43A05E4A-CA57-4563-A988-922A055EF70B@saxonica.com> <0AE334D4-CFE8-4F75-A4F0-FEA23A66FEBC@me.com> <6341CB62-43C2-4CA1-8B05-E10918A68EAF@gmail.com> Message-ID: On Wed, Jun 24, 2015 at 12:30 PM, Pavel Velikhov wrote: > > A lot of people are content with MongoDB to store the JSONs. So a killer > use-case needs to look beyond dumb storage of JSONs. Maybe focus on the > preparation/transformation/cleaning/merging stuff. > > > > > > But the biggest factor was probably that the move to minicomputer > architecture created a discontinuity that forced people to consider change. > You need to do two things: convince people that the new technology is > better (or at least, is cool), and give them a big kick up the backside to > get them out of their comfort zone. > > > > Michael Kay > > Saxonica > > > The data prep/transformation/cleaning/merging stuff is currently the domain of R and Python. R because thats what the statisticians like and (if you will see if you watch the R Good Bad and Ugly presentation I posted) they are not going to change. Unfortunately they are being sheepishly followed by non-statisticians. The non-statisticians who could change this - the software people - are for the most part saying I don't care if R sucks for data management and I don't care that I am not a statistician, working with R will help me get a sexy data science job. QED. With Python you have the same issue but with the additional twist that it is revered for being Swiss Army knife for devs and data scientists. This is another one of those situations where the industry inverts common sense and transforms what should ordinarily be a handicap into a virtue. Ok so you go to the restaurant, place your order and they bring your food. How many of you are now going to reach into your pocket and eat it with this. http://gadgether.walyou.netdna-cdn.com/wp-content/uploads/2009/11/swissarmius-main-01.jpg So there is a very challenging people issue to overcome Technically there would need to be a streaming capability so that XQuery/JSONiq is not the part of the pipeline that barfs when fed a large dataset. -------------- next part -------------- An HTML attachment was scrubbed... URL: From pavel.velikhov at gmail.com Thu Jun 25 07:49:57 2015 From: pavel.velikhov at gmail.com (Pavel Velikhov) Date: Thu, 25 Jun 2015 17:49:57 +0300 Subject: [xquery-talk] Does XQuery fit anywhere in this landscape. In-Reply-To: References: <43A05E4A-CA57-4563-A988-922A055EF70B@saxonica.com> <0AE334D4-CFE8-4F75-A4F0-FEA23A66FEBC@me.com> <6341CB62-43C2-4CA1-8B05-E10918A68EAF@gmail.com> Message-ID: <2356AC93-8D25-4507-8A9F-47B4D8397A39@gmail.com> > On 25 Jun 2015, at 17:10, Ihe Onwuka wrote: > > > On Wed, Jun 24, 2015 at 12:30 PM, Pavel Velikhov > wrote: > > A lot of people are content with MongoDB to store the JSONs. So a killer use-case needs to look beyond dumb storage of JSONs. Maybe focus on the > preparation/transformation/cleaning/merging stuff. > > > > > > But the biggest factor was probably that the move to minicomputer architecture created a discontinuity that forced people to consider change. You need to do two things: convince people that the new technology is better (or at least, is cool), and give them a big kick up the backside to get them out of their comfort zone. > > > > Michael Kay > > Saxonica > > > > The data prep/transformation/cleaning/merging stuff is currently the domain of R and Python. You must be talking about ?data science? that is used internally in the organization. I?m talking more about data-driven Web sites, that have a big data component in their products. In this case folks would never use R, they use all sorts of other stuff, including Python. > > R because thats what the statisticians like and (if you will see if you watch the R Good Bad and Ugly presentation I posted) they are not going to change. Unfortunately they are being sheepishly followed by non-statisticians. The non-statisticians who could change this - the software people - are for the most part saying I don't care if R sucks for data management and I don't care that I am not a statistician, working with R will help me get a sexy data science job. QED. > > With Python you have the same issue but with the additional twist that it is revered for being Swiss Army knife for devs and data scientists. This is another one of those situations where the industry inverts common sense and transforms what should ordinarily be a handicap into a virtue. > > Ok so you go to the restaurant, place your order and they bring your food. How many of you are now going to reach into your pocket and eat it with this. > > http://gadgether.walyou.netdna-cdn.com/wp-content/uploads/2009/11/swissarmius-main-01.jpg > > So there is a very challenging people issue to overcome > > Technically there would need to be a streaming capability so that XQuery/JSONiq is not the part of the pipeline that barfs when fed a large dataset. We?re thinking about building a JSONiq component in Scala, so it could be plugged into Spark. > > > ? ?????????, ????? ??????? pavel.velikhov at gmail.com -------------- next part -------------- An HTML attachment was scrubbed... URL: From ihe.onwuka at gmail.com Thu Jun 25 08:01:25 2015 From: ihe.onwuka at gmail.com (Ihe Onwuka) Date: Thu, 25 Jun 2015 11:01:25 -0400 Subject: [xquery-talk] Does XQuery fit anywhere in this landscape. In-Reply-To: <2356AC93-8D25-4507-8A9F-47B4D8397A39@gmail.com> References: <43A05E4A-CA57-4563-A988-922A055EF70B@saxonica.com> <0AE334D4-CFE8-4F75-A4F0-FEA23A66FEBC@me.com> <6341CB62-43C2-4CA1-8B05-E10918A68EAF@gmail.com> <2356AC93-8D25-4507-8A9F-47B4D8397A39@gmail.com> Message-ID: On Thu, Jun 25, 2015 at 10:49 AM, Pavel Velikhov wrote: > > On 25 Jun 2015, at 17:10, Ihe Onwuka wrote: > > > On Wed, Jun 24, 2015 at 12:30 PM, Pavel Velikhov > wrote: > >> >> A lot of people are content with MongoDB to store the JSONs. So a killer >> use-case needs to look beyond dumb storage of JSONs. Maybe focus on the >> preparation/transformation/cleaning/merging stuff. >> >> >> > >> > But the biggest factor was probably that the move to minicomputer >> architecture created a discontinuity that forced people to consider change. >> You need to do two things: convince people that the new technology is >> better (or at least, is cool), and give them a big kick up the backside to >> get them out of their comfort zone. >> > >> > Michael Kay >> > Saxonica >> > >> > > The data prep/transformation/cleaning/merging stuff is currently the > domain of R and Python. > > > You must be talking about ?data science? that is used internally in the > organization. I?m talking more about data-driven Web sites, that have a big > data component in their products. > In this case folks would never use R, they use all sorts of other stuff, > including Python. > > I'm talking generally to be honest but with data science as a prime example but there are several others e.g web scraping. There is a marked preference for other tools to do what XQuery etc are good at - hence there is a people issue. -------------- next part -------------- An HTML attachment was scrubbed... URL: From dflorescu at me.com Thu Jun 25 11:21:16 2015 From: dflorescu at me.com (daniela florescu) Date: Thu, 25 Jun 2015 11:21:16 -0700 Subject: [xquery-talk] Does XQuery fit anywhere in this landscape. In-Reply-To: <2356AC93-8D25-4507-8A9F-47B4D8397A39@gmail.com> References: <43A05E4A-CA57-4563-A988-922A055EF70B@saxonica.com> <0AE334D4-CFE8-4F75-A4F0-FEA23A66FEBC@me.com> <6341CB62-43C2-4CA1-8B05-E10918A68EAF@gmail.com> <2356AC93-8D25-4507-8A9F-47B4D8397A39@gmail.com> Message-ID: <8C814B92-3952-4D3C-8B22-0E3EE8E0BD43@me.com> > > We?re thinking about building a JSONiq component in Scala, so it could be plugged into Spark. That?s a brilliant idea, Pavel. That?s the kind of think that will make or break XQuery and/or JSONiq?. Let me know if I can help with something. BTW, you are implementing only JSONiq?, right !? (I guess so?) Given that you have the freedom, could you please make me favor, and ?fix? some of the grammatical issues with XQuery, hm !? Like: - make FROM a synonym for FOR and SELECT for RETURN - eliminate the need for white spaces around the ?-? sign? Stuff lie that ? Unless you plan to expand this later on to JSONiq++?.(but even then , you can still do the FOR/FROM, etc). Do you plan to implement JSOUND ? the JSON schema too ? Best Dana -------------- next part -------------- An HTML attachment was scrubbed... URL: From pavel.velikhov at gmail.com Thu Jun 25 13:08:37 2015 From: pavel.velikhov at gmail.com (Pavel Velikhov) Date: Thu, 25 Jun 2015 23:08:37 +0300 Subject: [xquery-talk] Does XQuery fit anywhere in this landscape. In-Reply-To: References: <43A05E4A-CA57-4563-A988-922A055EF70B@saxonica.com> <0AE334D4-CFE8-4F75-A4F0-FEA23A66FEBC@me.com> <6341CB62-43C2-4CA1-8B05-E10918A68EAF@gmail.com> <2356AC93-8D25-4507-8A9F-47B4D8397A39@gmail.com> Message-ID: <5C2B71B9-60D1-4636-B6C7-585E094E1984@gmail.com> I still don?t know if we?ll have the resources yet, so this is hypothetical right now. But yup, we definitely need a schema language and we can fix up some issues if it all works out! Just JSONiq, I don?t have much hope for XQuery (because of XML underneath). > On 25 Jun 2015, at 18:01, Ihe Onwuka wrote: > > > > On Thu, Jun 25, 2015 at 10:49 AM, Pavel Velikhov > wrote: > >> On 25 Jun 2015, at 17:10, Ihe Onwuka > wrote: >> >> >> On Wed, Jun 24, 2015 at 12:30 PM, Pavel Velikhov > wrote: >> >> A lot of people are content with MongoDB to store the JSONs. So a killer use-case needs to look beyond dumb storage of JSONs. Maybe focus on the >> preparation/transformation/cleaning/merging stuff. >> >> >> > >> > But the biggest factor was probably that the move to minicomputer architecture created a discontinuity that forced people to consider change. You need to do two things: convince people that the new technology is better (or at least, is cool), and give them a big kick up the backside to get them out of their comfort zone. >> > >> > Michael Kay >> > Saxonica >> > >> >> The data prep/transformation/cleaning/merging stuff is currently the domain of R and Python. > > You must be talking about ?data science? that is used internally in the organization. I?m talking more about data-driven Web sites, that have a big data component in their products. > In this case folks would never use R, they use all sorts of other stuff, including Python. > > > I'm talking generally to be honest but with data science as a prime example but there are several others e.g web scraping. There is a marked preference for other tools to do what XQuery etc are good at - hence there is a people issue. > ? ?????????, ????? ??????? pavel.velikhov at gmail.com -------------- next part -------------- An HTML attachment was scrubbed... URL: From wshager at gmail.com Fri Jun 26 04:18:32 2015 From: wshager at gmail.com (W.S. Hager) Date: Fri, 26 Jun 2015 13:18:32 +0200 Subject: [xquery-talk] xquery 3.1 wishlist Message-ID: Hello, I've been working with the recent xquery 3.1 implementation in the develop branch eXist-db. I encountered some cases that were quite hard to work around: - the lack of array:index-of() - the lack of the iterator index in arrayfor-each and related higher-order functions Perhaps someone of the workgroup is available to discuss those cases. Thanks, Wouter -- W.S. Hager Lagua Web Solutions http://lagua.nl -- W.S. Hager Lagua Web Solutions http://lagua.nl -------------- next part -------------- An HTML attachment was scrubbed... URL: From mike at saxonica.com Fri Jun 26 05:16:40 2015 From: mike at saxonica.com (Michael Kay) Date: Fri, 26 Jun 2015 13:16:40 +0100 Subject: [xquery-talk] xquery 3.1 wishlist In-Reply-To: References: Message-ID: <0BFA4EE4-4209-4CC6-9AB0-3F388E4CBAA6@saxonica.com> I would think both of these could be implemented as user-defined functions but it?s hard to know without seeing a specification: saying you want a function called array:index-of() is not very informative unless you explain exactly what you want the function to do. If it?s to behave like fn:index-of() then you can write it as array:index-of($array, $value) { (1 to array:size($array))[ $array(.) = $value ] } which is hardly a great hardship to write as a user-defined function. Michael Kay Saxonica > On 26 Jun 2015, at 12:18, W.S. Hager wrote: > > Hello, > > I've been working with the recent xquery 3.1 implementation in the develop branch eXist-db. I encountered some cases that were quite hard to work around: > > - the lack of array:index-of() > - the lack of the iterator index in arrayfor-each and related higher-order functions > > Perhaps someone of the workgroup is available to discuss those cases. > > Thanks, > Wouter > -- > W.S. Hager > Lagua Web Solutions > http://lagua.nl > > > -- > W.S. Hager > Lagua Web Solutions > http://lagua.nl > > _______________________________________________ > talk at x-query.com > http://x-query.com/mailman/listinfo/talk -------------- next part -------------- An HTML attachment was scrubbed... URL: From wshager at gmail.com Fri Jun 26 05:30:31 2015 From: wshager at gmail.com (W.S. Hager) Date: Fri, 26 Jun 2015 14:30:31 +0200 Subject: [xquery-talk] xquery 3.1 wishlist In-Reply-To: <0BFA4EE4-4209-4CC6-9AB0-3F388E4CBAA6@saxonica.com> References: <0BFA4EE4-4209-4CC6-9AB0-3F388E4CBAA6@saxonica.com> Message-ID: Hi Micheal, Agreed, it could be implemented as a user-defined function (although this particular solution currently throws an error in eXist). However, what bothers me is that fn:index-of(1,2,[3,4], 3) may lead to unexpected results, because the array is flattened. I get the impression that array-specific semantics are sacrificed here, where in other cases they aren't, and the dividing line is still unclear me. Thanks, Wouter 2015-06-26 14:16 GMT+02:00 Michael Kay : > I would think both of these could be implemented as user-defined functions > but it?s hard to know without seeing a specification: saying you want a > function called array:index-of() is not very informative unless you explain > exactly what you want the function to do. > > If it?s to behave like fn:index-of() then you can write it as > > array:index-of($array, $value) { > (1 to array:size($array))[ $array(.) = $value ] > } > > which is hardly a great hardship to write as a user-defined function. > > > Michael Kay > Saxonica > > On 26 Jun 2015, at 12:18, W.S. Hager wrote: > > Hello, > > I've been working with the recent xquery 3.1 implementation in the develop > branch eXist-db. I encountered some cases that were quite hard to work > around: > > - the lack of array:index-of() > - the lack of the iterator index in arrayfor-each and related higher-order > functions > > Perhaps someone of the workgroup is available to discuss those cases. > > Thanks, > Wouter > -- > > W.S. Hager > Lagua Web Solutions > http://lagua.nl > > > -- > > W.S. Hager > Lagua Web Solutions > http://lagua.nl > > _______________________________________________ > talk at x-query.com > http://x-query.com/mailman/listinfo/talk > > > -- W.S. Hager Lagua Web Solutions http://lagua.nl -------------- next part -------------- An HTML attachment was scrubbed... URL: From wshager at gmail.com Fri Jun 26 05:32:11 2015 From: wshager at gmail.com (W.S. Hager) Date: Fri, 26 Jun 2015 14:32:11 +0200 Subject: [xquery-talk] xquery 3.1 wishlist In-Reply-To: References: <0BFA4EE4-4209-4CC6-9AB0-3F388E4CBAA6@saxonica.com> Message-ID: Correction: fn:index-of([1,2,[3,4]], 3) 2015-06-26 14:30 GMT+02:00 W.S. Hager : > Hi Micheal, > > Agreed, it could be implemented as a user-defined function (although this > particular solution currently throws an error in eXist). However, what > bothers me is that fn:index-of(1,2,[3,4], 3) may lead to unexpected > results, because the array is flattened. I get the impression that > array-specific semantics are sacrificed here, where in other cases they > aren't, and the dividing line is still unclear me. > > Thanks, > Wouter > > 2015-06-26 14:16 GMT+02:00 Michael Kay : > >> I would think both of these could be implemented as user-defined >> functions but it?s hard to know without seeing a specification: saying you >> want a function called array:index-of() is not very informative unless you >> explain exactly what you want the function to do. >> >> If it?s to behave like fn:index-of() then you can write it as >> >> array:index-of($array, $value) { >> (1 to array:size($array))[ $array(.) = $value ] >> } >> >> which is hardly a great hardship to write as a user-defined function. >> >> >> Michael Kay >> Saxonica >> >> On 26 Jun 2015, at 12:18, W.S. Hager wrote: >> >> Hello, >> >> I've been working with the recent xquery 3.1 implementation in the >> develop branch eXist-db. I encountered some cases that were quite hard to >> work around: >> >> - the lack of array:index-of() >> - the lack of the iterator index in arrayfor-each and related >> higher-order functions >> >> Perhaps someone of the workgroup is available to discuss those cases. >> >> Thanks, >> Wouter >> -- >> >> W.S. Hager >> Lagua Web Solutions >> http://lagua.nl >> >> >> -- >> >> W.S. Hager >> Lagua Web Solutions >> http://lagua.nl >> >> _______________________________________________ >> talk at x-query.com >> http://x-query.com/mailman/listinfo/talk >> >> >> > > > -- > > W.S. Hager > Lagua Web Solutions > http://lagua.nl > -- W.S. Hager Lagua Web Solutions http://lagua.nl -------------- next part -------------- An HTML attachment was scrubbed... URL: From mike at saxonica.com Fri Jun 26 07:21:44 2015 From: mike at saxonica.com (Michael Kay) Date: Fri, 26 Jun 2015 15:21:44 +0100 Subject: [xquery-talk] xquery 3.1 wishlist In-Reply-To: References: <0BFA4EE4-4209-4CC6-9AB0-3F388E4CBAA6@saxonica.com> Message-ID: <169190C1-BA52-4BDA-B66E-A6057421D13E@saxonica.com> > > Agreed, it could be implemented as a user-defined function (although this particular solution currently throws an error in eXist). However, what bothers me is that fn:index-of(1,2,[3,4], 3) may lead to unexpected results, because the array is flattened. I get the impression that array-specific semantics are sacrificed here, where in other cases they aren't, and the dividing line is still unclear me. Arrays will give unexpected results, full stop. We spent two years trying to find a design that didn?t have unexpected results, and we failed. Start with the fact that $A[1] returns the whole array, and that you can?t iterate over arrays with FLWOR expressions. Arrays are grafted on to the data model as an afterthought, and it shows right through. That?s not for want of trying: we were running out of names for all the different ideas we rejected as unworkable. The choice of functions in the library is inevitably arbitrary. I think we found that if you wanted a completely minimalist approach, everything could be defined in terms of three functions. At the other extreme you would have the functx approach, a thousand functions to do everything you could ever imagine, but where it?s quicker to write the function yourself than to find it in the library. Michael Kay Saxonica > > Thanks, > Wouter > > 2015-06-26 14:16 GMT+02:00 Michael Kay >: > I would think both of these could be implemented as user-defined functions but it?s hard to know without seeing a specification: saying you want a function called array:index-of() is not very informative unless you explain exactly what you want the function to do. > > If it?s to behave like fn:index-of() then you can write it as > > array:index-of($array, $value) { > (1 to array:size($array))[ $array(.) = $value ] > } > > which is hardly a great hardship to write as a user-defined function. > > > Michael Kay > Saxonica > >> On 26 Jun 2015, at 12:18, W.S. Hager > wrote: >> >> Hello, >> >> I've been working with the recent xquery 3.1 implementation in the develop branch eXist-db. I encountered some cases that were quite hard to work around: >> >> - the lack of array:index-of() >> - the lack of the iterator index in arrayfor-each and related higher-order functions >> >> Perhaps someone of the workgroup is available to discuss those cases. >> >> Thanks, >> Wouter >> -- >> W.S. Hager >> Lagua Web Solutions >> http://lagua.nl >> >> >> -- >> W.S. Hager >> Lagua Web Solutions >> http://lagua.nl >> >> _______________________________________________ >> talk at x-query.com >> http://x-query.com/mailman/listinfo/talk > > > > -- > W.S. Hager > Lagua Web Solutions > http://lagua.nl -------------- next part -------------- An HTML attachment was scrubbed... URL: From wshager at gmail.com Fri Jun 26 07:38:25 2015 From: wshager at gmail.com (W.S. Hager) Date: Fri, 26 Jun 2015 16:38:25 +0200 Subject: [xquery-talk] xquery 3.1 wishlist In-Reply-To: <169190C1-BA52-4BDA-B66E-A6057421D13E@saxonica.com> References: <0BFA4EE4-4209-4CC6-9AB0-3F388E4CBAA6@saxonica.com> <169190C1-BA52-4BDA-B66E-A6057421D13E@saxonica.com> Message-ID: On the whole I agree, and I respect the current status quo of the specification. However, I expect more changes will follow from actually working with it. IMHO the current distinction between sequences and arrays could eventually be abolished. 2015-06-26 16:21 GMT+02:00 Michael Kay : > > > Agreed, it could be implemented as a user-defined function (although this > particular solution currently throws an error in eXist). However, what > bothers me is that fn:index-of(1,2,[3,4], 3) may lead to unexpected > results, because the array is flattened. I get the impression that > array-specific semantics are sacrificed here, where in other cases they > aren't, and the dividing line is still unclear me. > > > Arrays will give unexpected results, full stop. We spent two years trying > to find a design that didn?t have unexpected results, and we failed. Start > with the fact that $A[1] returns the whole array, and that you can?t > iterate over arrays with FLWOR expressions. Arrays are grafted on to the > data model as an afterthought, and it shows right through. That?s not for > want of trying: we were running out of names for all the different ideas we > rejected as unworkable. > > The choice of functions in the library is inevitably arbitrary. I think we > found that if you wanted a completely minimalist approach, everything could > be defined in terms of three functions. At the other extreme you would have > the functx approach, a thousand functions to do everything you could ever > imagine, but where it?s quicker to write the function yourself than to find > it in the library. > > Michael Kay > Saxonica > > > Thanks, > Wouter > > 2015-06-26 14:16 GMT+02:00 Michael Kay : > >> I would think both of these could be implemented as user-defined >> functions but it?s hard to know without seeing a specification: saying you >> want a function called array:index-of() is not very informative unless you >> explain exactly what you want the function to do. >> >> If it?s to behave like fn:index-of() then you can write it as >> >> array:index-of($array, $value) { >> (1 to array:size($array))[ $array(.) = $value ] >> } >> >> which is hardly a great hardship to write as a user-defined function. >> >> >> Michael Kay >> Saxonica >> >> On 26 Jun 2015, at 12:18, W.S. Hager wrote: >> >> Hello, >> >> I've been working with the recent xquery 3.1 implementation in the >> develop branch eXist-db. I encountered some cases that were quite hard to >> work around: >> >> - the lack of array:index-of() >> - the lack of the iterator index in arrayfor-each and related >> higher-order functions >> >> Perhaps someone of the workgroup is available to discuss those cases. >> >> Thanks, >> Wouter >> -- >> >> W.S. Hager >> Lagua Web Solutions >> http://lagua.nl >> >> >> -- >> >> W.S. Hager >> Lagua Web Solutions >> http://lagua.nl >> >> _______________________________________________ >> talk at x-query.com >> http://x-query.com/mailman/listinfo/talk >> >> >> > > > -- > > W.S. Hager > Lagua Web Solutions > http://lagua.nl > > > -- W.S. Hager Lagua Web Solutions http://lagua.nl -------------- next part -------------- An HTML attachment was scrubbed... URL: From wshager at gmail.com Fri Jun 26 07:57:39 2015 From: wshager at gmail.com (W.S. Hager) Date: Fri, 26 Jun 2015 16:57:39 +0200 Subject: [xquery-talk] xquery 3.1 wishlist In-Reply-To: References: <0BFA4EE4-4209-4CC6-9AB0-3F388E4CBAA6@saxonica.com> <169190C1-BA52-4BDA-B66E-A6057421D13E@saxonica.com> Message-ID: Ignore my last sentence, I don't want to make this claim. 2015-06-26 16:38 GMT+02:00 W.S. Hager : > On the whole I agree, and I respect the current status quo of the > specification. However, I expect more changes will follow from actually > working with it. IMHO the current distinction between sequences and arrays > could eventually be abolished. > > 2015-06-26 16:21 GMT+02:00 Michael Kay : > >> >> >> Agreed, it could be implemented as a user-defined function (although this >> particular solution currently throws an error in eXist). However, what >> bothers me is that fn:index-of(1,2,[3,4], 3) may lead to unexpected >> results, because the array is flattened. I get the impression that >> array-specific semantics are sacrificed here, where in other cases they >> aren't, and the dividing line is still unclear me. >> >> >> Arrays will give unexpected results, full stop. We spent two years trying >> to find a design that didn?t have unexpected results, and we failed. Start >> with the fact that $A[1] returns the whole array, and that you can?t >> iterate over arrays with FLWOR expressions. Arrays are grafted on to the >> data model as an afterthought, and it shows right through. That?s not for >> want of trying: we were running out of names for all the different ideas we >> rejected as unworkable. >> >> The choice of functions in the library is inevitably arbitrary. I think >> we found that if you wanted a completely minimalist approach, everything >> could be defined in terms of three functions. At the other extreme you >> would have the functx approach, a thousand functions to do everything you >> could ever imagine, but where it?s quicker to write the function yourself >> than to find it in the library. >> >> Michael Kay >> Saxonica >> >> >> Thanks, >> Wouter >> >> 2015-06-26 14:16 GMT+02:00 Michael Kay : >> >>> I would think both of these could be implemented as user-defined >>> functions but it?s hard to know without seeing a specification: saying you >>> want a function called array:index-of() is not very informative unless you >>> explain exactly what you want the function to do. >>> >>> If it?s to behave like fn:index-of() then you can write it as >>> >>> array:index-of($array, $value) { >>> (1 to array:size($array))[ $array(.) = $value ] >>> } >>> >>> which is hardly a great hardship to write as a user-defined function. >>> >>> >>> Michael Kay >>> Saxonica >>> >>> On 26 Jun 2015, at 12:18, W.S. Hager wrote: >>> >>> Hello, >>> >>> I've been working with the recent xquery 3.1 implementation in the >>> develop branch eXist-db. I encountered some cases that were quite hard to >>> work around: >>> >>> - the lack of array:index-of() >>> - the lack of the iterator index in arrayfor-each and related >>> higher-order functions >>> >>> Perhaps someone of the workgroup is available to discuss those cases. >>> >>> Thanks, >>> Wouter >>> -- >>> >>> W.S. Hager >>> Lagua Web Solutions >>> http://lagua.nl >>> >>> >>> -- >>> >>> W.S. Hager >>> Lagua Web Solutions >>> http://lagua.nl >>> >>> _______________________________________________ >>> talk at x-query.com >>> http://x-query.com/mailman/listinfo/talk >>> >>> >>> >> >> >> -- >> >> W.S. Hager >> Lagua Web Solutions >> http://lagua.nl >> >> >> > > > -- > > W.S. Hager > Lagua Web Solutions > http://lagua.nl > -- W.S. Hager Lagua Web Solutions http://lagua.nl -------------- next part -------------- An HTML attachment was scrubbed... URL: From mike at saxonica.com Fri Jun 26 08:00:52 2015 From: mike at saxonica.com (Michael Kay) Date: Fri, 26 Jun 2015 16:00:52 +0100 Subject: [xquery-talk] xquery 3.1 wishlist In-Reply-To: References: <0BFA4EE4-4209-4CC6-9AB0-3F388E4CBAA6@saxonica.com> <169190C1-BA52-4BDA-B66E-A6057421D13E@saxonica.com> Message-ID: <2D04CE0B-A617-4C38-B61C-7DD674AF27A0@saxonica.com> IMHO the current distinction between sequences and arrays could eventually be abolished. > Not without dramatic incompatibilities. The core problem is the equivalence of a singleton sequence and an item. Which is a great benefit in the XML arena, because you don?t have to worry about whether /book/author is returning a sequence or an item. But you can?t do nested sequences/arrays under this model, because if you allow nesting then you need to distinguish [[a]] from [a]. So we have arrays that allow nesting, and sequences where singletons are the same as items, and the two models are irreconcilable. Michael Kay Saxonica From christian.gruen at gmail.com Fri Jun 26 08:18:08 2015 From: christian.gruen at gmail.com (=?UTF-8?Q?Christian_Gr=C3=BCn?=) Date: Fri, 26 Jun 2015 17:18:08 +0200 Subject: [xquery-talk] xquery 3.1 wishlist In-Reply-To: References: <0BFA4EE4-4209-4CC6-9AB0-3F388E4CBAA6@saxonica.com> <169190C1-BA52-4BDA-B66E-A6057421D13E@saxonica.com> Message-ID: > On the whole I agree, and I respect the current status quo of the specification. However, I expect more changes will follow from actually working with it. IMHO the current distinction between sequences and arrays could eventually be abolished. While I haven't actively participated in the specification of arrays in the XML Working Group, I have been following it quite actively. Various impressive solutions were proposed, pretty soon it got more than obvious that there is no chance to specify arrays in any way that is completely consistent and intuitive. From the very beginning, XQuery was designed to efficiently handle flattened sequences, and this concept is completely different to what can be done with arrays. The resulting solution for arrays will not be able to meet all expectations, but I can clearly say I am pretty impressed with it. >> Ignore my last sentence, I don't want to make this claim. Too late ;) > 2015-06-26 16:21 GMT+02:00 Michael Kay : >> >> >> >> Agreed, it could be implemented as a user-defined function (although this particular solution currently throws an error in eXist). However, what bothers me is that fn:index-of(1,2,[3,4], 3) may lead to unexpected results, because the array is flattened. I get the impression that array-specific semantics are sacrificed here, where in other cases they aren't, and the dividing line is still unclear me. >> >> >> Arrays will give unexpected results, full stop. We spent two years trying to find a design that didn?t have unexpected results, and we failed. Start with the fact that $A[1] returns the whole array, and that you can?t iterate over arrays with FLWOR expressions. Arrays are grafted on to the data model as an afterthought, and it shows right through. That?s not for want of trying: we were running out of names for all the different ideas we rejected as unworkable. >> >> The choice of functions in the library is inevitably arbitrary. I think we found that if you wanted a completely minimalist approach, everything could be defined in terms of three functions. At the other extreme you would have the functx approach, a thousand functions to do everything you could ever imagine, but where it?s quicker to write the function yourself than to find it in the library. >> >> Michael Kay >> Saxonica >> >> >> Thanks, >> Wouter >> >> 2015-06-26 14:16 GMT+02:00 Michael Kay : >>> >>> I would think both of these could be implemented as user-defined functions but it?s hard to know without seeing a specification: saying you want a function called array:index-of() is not very informative unless you explain exactly what you want the function to do. >>> >>> If it?s to behave like fn:index-of() then you can write it as >>> >>> array:index-of($array, $value) { >>> (1 to array:size($array))[ $array(.) = $value ] >>> } >>> >>> which is hardly a great hardship to write as a user-defined function. >>> >>> >>> Michael Kay >>> Saxonica >>> >>> On 26 Jun 2015, at 12:18, W.S. Hager wrote: >>> >>> Hello, >>> >>> I've been working with the recent xquery 3.1 implementation in the develop branch eXist-db. I encountered some cases that were quite hard to work around: >>> >>> - the lack of array:index-of() >>> - the lack of the iterator index in arrayfor-each and related higher-order functions >>> >>> Perhaps someone of the workgroup is available to discuss those cases. >>> >>> Thanks, >>> Wouter >>> -- >>> >>> W.S. Hager >>> Lagua Web Solutions >>> http://lagua.nl >>> >>> >>> >>> -- >>> >>> W.S. Hager >>> Lagua Web Solutions >>> http://lagua.nl >>> >>> >>> _______________________________________________ >>> talk at x-query.com >>> http://x-query.com/mailman/listinfo/talk >>> >>> >> >> >> >> -- >> >> W.S. Hager >> Lagua Web Solutions >> http://lagua.nl >> >> > > > > -- > > W.S. Hager > Lagua Web Solutions > http://lagua.nl > > > _______________________________________________ > talk at x-query.com > http://x-query.com/mailman/listinfo/talk From wshager at gmail.com Fri Jun 26 08:18:57 2015 From: wshager at gmail.com (W.S. Hager) Date: Fri, 26 Jun 2015 17:18:57 +0200 Subject: [xquery-talk] xquery 3.1 wishlist In-Reply-To: <2D04CE0B-A617-4C38-B61C-7DD674AF27A0@saxonica.com> References: <0BFA4EE4-4209-4CC6-9AB0-3F388E4CBAA6@saxonica.com> <169190C1-BA52-4BDA-B66E-A6057421D13E@saxonica.com> <2D04CE0B-A617-4C38-B61C-7DD674AF27A0@saxonica.com> Message-ID: Indeed. The only thing I'll add is that by adding the array feature you kind of opened Pandora's box. As for me, I'm happy you did, because the gain is obvious to me. How this will affect future specs I don't want to hint at, but I'm quite curious. As for my second case, it doesn't seem like a major change. When iterating over an array with array:for-each you loose track of the iteration count. I'm not sure if there's even a workaround, multi-dimensional arrays considered. Would it be possible to (optionally) provide the iterator index as the second parameter of the function? Thanks. 2015-06-26 17:00 GMT+02:00 Michael Kay : > IMHO the current distinction between sequences and arrays could eventually > be abolished. > > > > Not without dramatic incompatibilities. > > The core problem is the equivalence of a singleton sequence and an item. > Which is a great benefit in the XML arena, because you don?t have to worry > about whether /book/author is returning a sequence or an item. But you > can?t do nested sequences/arrays under this model, because if you allow > nesting then you need to distinguish [[a]] from [a]. So we have arrays that > allow nesting, and sequences where singletons are the same as items, and > the two models are irreconcilable. > > Michael Kay > Saxonica > > -- W.S. Hager Lagua Web Solutions http://lagua.nl -------------- next part -------------- An HTML attachment was scrubbed... URL: From wshager at gmail.com Fri Jun 26 08:23:23 2015 From: wshager at gmail.com (W.S. Hager) Date: Fri, 26 Jun 2015 17:23:23 +0200 Subject: [xquery-talk] xquery 3.1 wishlist In-Reply-To: References: <0BFA4EE4-4209-4CC6-9AB0-3F388E4CBAA6@saxonica.com> <169190C1-BA52-4BDA-B66E-A6057421D13E@saxonica.com> Message-ID: Hi Christian, 2015-06-26 17:18 GMT+02:00 Christian Gr?n : > > > Too late ;) > > Heh. I should have thought before posting, as it was merely a vague intuition. The problem is of course backwards compatibility, as Michael mentioned. As an aside, does anyone know what the formal definition of sequences is, where it came from, who introduced it into xquery? Thanks. -------------- next part -------------- An HTML attachment was scrubbed... URL: From gkholman at CraneSoftwrights.com Fri Jun 26 08:29:19 2015 From: gkholman at CraneSoftwrights.com (G. Ken Holman) Date: Fri, 26 Jun 2015 11:29:19 -0400 Subject: [xquery-talk] xquery 3.1 wishlist In-Reply-To: References: <0BFA4EE4-4209-4CC6-9AB0-3F388E4CBAA6@saxonica.com> <169190C1-BA52-4BDA-B66E-A6057421D13E@saxonica.com> Message-ID: <7.0.1.0.2.20150626112610.02321be0@wheresmymailserver.com> At 2015-06-26 17:23 +0200, W.S. Hager wrote: >As an aside, does anyone know what the formal definition of >sequences is, where it came from, who introduced it into xquery? It is in XPath: http://www.w3.org/TR/xpath-31/#id-sequence-expressions http://www.w3.org/TR/xpath-31/#id-sequencetype-syntax I hope this helps. . . . . . . Ken -- Check our site for free XML, XSLT, XSL-FO and UBL developer resources | Free 5-hour lecture: http://www.CraneSoftwrights.com/links/video.htm | Crane Softwrights Ltd. http://www.CraneSoftwrights.com/q/ | G. Ken Holman mailto:gkholman at CraneSoftwrights.com | Google+ profile: http://plus.google.com/+GKenHolman-Crane/about | Legal business disclaimers: http://www.CraneSoftwrights.com/legal | --- This email has been checked for viruses by Avast antivirus software. https://www.avast.com/antivirus From wshager at gmail.com Fri Jun 26 08:33:45 2015 From: wshager at gmail.com (W.S. Hager) Date: Fri, 26 Jun 2015 17:33:45 +0200 Subject: [xquery-talk] xquery 3.1 wishlist In-Reply-To: <7.0.1.0.2.20150626112610.02321be0@wheresmymailserver.com> References: <0BFA4EE4-4209-4CC6-9AB0-3F388E4CBAA6@saxonica.com> <169190C1-BA52-4BDA-B66E-A6057421D13E@saxonica.com> <7.0.1.0.2.20150626112610.02321be0@wheresmymailserver.com> Message-ID: Sorry, what I meant is: how did sequences come into XPath? Was it borrowed from another system or did it appear first in XPath? 2015-06-26 17:29 GMT+02:00 G. Ken Holman : > At 2015-06-26 17:23 +0200, W.S. Hager wrote: > >> As an aside, does anyone know what the formal definition of sequences is, >> where it came from, who introduced it into xquery? >> > > It is in XPath: > > http://www.w3.org/TR/xpath-31/#id-sequence-expressions > > http://www.w3.org/TR/xpath-31/#id-sequencetype-syntax > > I hope this helps. > > . . . . . . Ken > > > -- > Check our site for free XML, XSLT, XSL-FO and UBL developer resources | > Free 5-hour lecture: http://www.CraneSoftwrights.com/links/video.htm | > Crane Softwrights Ltd. http://www.CraneSoftwrights.com/q/ | > G. Ken Holman mailto:gkholman at CraneSoftwrights.com | > Google+ profile: http://plus.google.com/+GKenHolman-Crane/about | > Legal business disclaimers: http://www.CraneSoftwrights.com/legal | > > > --- > This email has been checked for viruses by Avast antivirus software. > https://www.avast.com/antivirus > > -- W.S. Hager Lagua Web Solutions http://lagua.nl -------------- next part -------------- An HTML attachment was scrubbed... URL: From davidc at nag.co.uk Fri Jun 26 08:52:50 2015 From: davidc at nag.co.uk (David Carlisle) Date: Fri, 26 Jun 2015 16:52:50 +0100 Subject: [xquery-talk] xquery 3.1 wishlist In-Reply-To: References: <0BFA4EE4-4209-4CC6-9AB0-3F388E4CBAA6@saxonica.com> <169190C1-BA52-4BDA-B66E-A6057421D13E@saxonica.com> <7.0.1.0.2.20150626112610.02321be0@wheresmymailserver.com> Message-ID: <558D7552.5050102@nag.co.uk> On 26/06/2015 16:33, W.S. Hager wrote: > Sorry, what I meant is: how did sequences come into XPath? Was it > borrowed from another system or did it appear first in XPath? It's a modification of the node set datatype introduced in xpath 1 (which didn't have sequences) Xpath 1 didn't have a type corresponding to a node (or item) only node set, so treating a single item as the same as a set of size 1 was more or less a requirement (and a very elegant ruse:-) David ________________________________ The Numerical Algorithms Group Ltd is a company registered in England and Wales with company number 1249803. The registered office is: Wilkinson House, Jordan Hill Road, Oxford OX2 8DR, United Kingdom. This e-mail has been scanned for all viruses by Microsoft Office 365. ________________________________ From wshager at gmail.com Fri Jun 26 09:08:24 2015 From: wshager at gmail.com (W.S. Hager) Date: Fri, 26 Jun 2015 18:08:24 +0200 Subject: [xquery-talk] xquery 3.1 wishlist In-Reply-To: <558D7552.5050102@nag.co.uk> References: <0BFA4EE4-4209-4CC6-9AB0-3F388E4CBAA6@saxonica.com> <169190C1-BA52-4BDA-B66E-A6057421D13E@saxonica.com> <7.0.1.0.2.20150626112610.02321be0@wheresmymailserver.com> <558D7552.5050102@nag.co.uk> Message-ID: Indeed! Thanks David. 2015-06-26 17:52 GMT+02:00 David Carlisle : > On 26/06/2015 16:33, W.S. Hager wrote: > >> Sorry, what I meant is: how did sequences come into XPath? Was it >> borrowed from another system or did it appear first in XPath? >> > > It's a modification of the node set datatype introduced in xpath 1 > (which didn't have sequences) Xpath 1 didn't have a type corresponding > to a node (or item) only node set, so treating a single item as the same > as a set of size 1 was more or less a requirement (and a very elegant > ruse:-) > > David > > ________________________________ > > > The Numerical Algorithms Group Ltd is a company registered in England and > Wales with company number 1249803. The registered office is: > > Wilkinson House, Jordan Hill Road, Oxford OX2 8DR, United Kingdom. > > > > This e-mail has been scanned for all viruses by Microsoft Office 365. > > ________________________________ > > _______________________________________________ > talk at x-query.com > http://x-query.com/mailman/listinfo/talk > -- W.S. Hager Lagua Web Solutions http://lagua.nl -------------- next part -------------- An HTML attachment was scrubbed... URL: From dflorescu at me.com Fri Jun 26 09:10:22 2015 From: dflorescu at me.com (daniela florescu) Date: Fri, 26 Jun 2015 09:10:22 -0700 Subject: [xquery-talk] xquery 3.1 wishlist In-Reply-To: References: <0BFA4EE4-4209-4CC6-9AB0-3F388E4CBAA6@saxonica.com> <169190C1-BA52-4BDA-B66E-A6057421D13E@saxonica.com> <7.0.1.0.2.20150626112610.02321be0@wheresmymailserver.com> Message-ID: > > > Sorry, what I meant is: how did sequences come into XPath? Was it borrowed from another system or did it appear first in XPath? Hi Wouter, languages that work on sequences there are plenty in programming languages, especially function programming languages: e..g. Lisp !?, ML !? (head(), tail() ? :-) But your question is about the history of XQuery. Here it is. In the XQuery per se, the data model based on sequences appeared around 1999-2000, even before we started joint activity with the XSLT working group, and even before XQuery decided to use XPath for navigation. It was the decision of the entire working group, obviously. The editors of the Data Model at that time ? and they both did a huge contribution to the guidance and cleaning up the opinions in the XQuery WG ? were Mary Fernandez (ATT Research and Denise Draper (now at Microsoft). But you have to understand that the composition at that time of the XQuery Working group was VERY different then it is now. There were many people with a very strong functional languages background: Mary Fernandez, Phuil Wadler (of Haskell fame), Denise Draper. Sequences are very normal to them because of Lisp. There were many people with a database background: Don Chamberlin (of SQL fame), Jonathan Robie, Jim Melton, etc For the database community iteration over sequences is the bread and butter of any database runtime (the famous iterator model, see http://bnrg.cs.berkeley.edu/~adj/cs262/papers/graefe.pdf ), so again this came naturally to them. And then there were people with one foot in the functional community and one foot in the database community, like me and Jerome Simeon (IBM) : we both implemented OQL as part of our PhDs - the object oriented query language https://en.wikipedia.org/wiki/Object_Query_Language ) OQL is a functional query language, which greatly influenced the design of XQuery. Both me and Jerome learned from implementing OQL that the basic type system of OQL was WAY too complicated: it had sets, bags and lists. Optimizing that thing was a nightmare. So was understanding the semantics. So both of us pushed for the simplification of the data model. The single common denominator for sets, bags and lists are: lists. With lists you can implement the others but not the other way around. ========= So, here you got the sequences. I think the other decision : make a single item behave the same as a sequence with one item came after we started working with Path, as it was already embedded in the XPath semantics. Hope that helps, Dana -------------- next part -------------- An HTML attachment was scrubbed... URL: From dflorescu at me.com Fri Jun 26 09:14:32 2015 From: dflorescu at me.com (daniela florescu) Date: Fri, 26 Jun 2015 09:14:32 -0700 Subject: [xquery-talk] xquery 3.1 wishlist In-Reply-To: References: <0BFA4EE4-4209-4CC6-9AB0-3F388E4CBAA6@saxonica.com> <169190C1-BA52-4BDA-B66E-A6057421D13E@saxonica.com> <7.0.1.0.2.20150626112610.02321be0@wheresmymailserver.com> Message-ID: > > And then there were people with one foot in the functional community and one foot in the database community, like me and Jerome Simeon > (IBM) : we both implemented OQL as part of our PhDs - the object oriented query language https://en.wikipedia.org/wiki/Object_Query_Language ) Oh?and how can I forget, stupid me !? :-) In the bunch with me and Jerome, all three influenced by both functional programming AND databases, was also Michael Rys (Microsoft). He was also fundamental in this decision, and many other afterwards. HTH, Dana -------------- next part -------------- An HTML attachment was scrubbed... URL: From dflorescu at me.com Fri Jun 26 09:27:01 2015 From: dflorescu at me.com (daniela florescu) Date: Fri, 26 Jun 2015 09:27:01 -0700 Subject: [xquery-talk] xquery 3.1 wishlist In-Reply-To: <558D7552.5050102@nag.co.uk> References: <0BFA4EE4-4209-4CC6-9AB0-3F388E4CBAA6@saxonica.com> <169190C1-BA52-4BDA-B66E-A6057421D13E@saxonica.com> <7.0.1.0.2.20150626112610.02321be0@wheresmymailserver.com> <558D7552.5050102@nag.co.uk> Message-ID: David, Ken? You know the XPath/XSLT side of the story. I know the OTHER side: the XML Query Language Working Group side of the story (and the two haven?t been integrated until much later..) For a simple path expression sequences might have come natural. For a FULL QUERY LANGUAGE, with nested queries, sorts, groupbys etc. this wasn?t a ?natural? or ?simple? decision AT ALL. We pondered over this decision for about two years ?.. ?. and this was BEFORE the XML Query Working Group decide to use XPath for navigation. Best Dana > On Jun 26, 2015, at 8:52 AM, David Carlisle wrote: > > On 26/06/2015 16:33, W.S. Hager wrote: >> Sorry, what I meant is: how did sequences come into XPath? Was it >> borrowed from another system or did it appear first in XPath? > > It's a modification of the node set datatype introduced in xpath 1 > (which didn't have sequences) Xpath 1 didn't have a type corresponding > to a node (or item) only node set, so treating a single item as the same > as a set of size 1 was more or less a requirement (and a very elegant > ruse:-) > > David > > ________________________________ > > > The Numerical Algorithms Group Ltd is a company registered in England and Wales with company number 1249803. The registered office is: > > Wilkinson House, Jordan Hill Road, Oxford OX2 8DR, United Kingdom. > > > > This e-mail has been scanned for all viruses by Microsoft Office 365. > > ________________________________ > > _______________________________________________ > talk at x-query.com > http://x-query.com/mailman/listinfo/talk From wshager at gmail.com Fri Jun 26 09:32:12 2015 From: wshager at gmail.com (W.S. Hager) Date: Fri, 26 Jun 2015 18:32:12 +0200 Subject: [xquery-talk] xquery 3.1 wishlist In-Reply-To: References: <0BFA4EE4-4209-4CC6-9AB0-3F388E4CBAA6@saxonica.com> <169190C1-BA52-4BDA-B66E-A6057421D13E@saxonica.com> <7.0.1.0.2.20150626112610.02321be0@wheresmymailserver.com> Message-ID: Hi Dana, Great stuff, thank you for this brief history of xquery! It's good to understand from your story that arrays don't add as much complexity as there could have been with sets, bags and lists. However, that said the array spec does seem a bit like a mixed paradigm solution. Let's just say it's a mixed blessing, as IMO neither functional nor imperative typesystems provide all the answers. Wouter 2015-06-26 18:14 GMT+02:00 daniela florescu : > > And then there were people with one foot in the functional community and > one foot in the database community, like me and Jerome Simeon > (IBM) : we both implemented OQL as part of our PhDs - the object oriented > query language https://en.wikipedia.org/wiki/Object_Query_Language) > > > Oh?and how can I forget, stupid me !? :-) > > In the bunch with me and Jerome, all three influenced by both functional > programming AND databases, was also Michael Rys (Microsoft). > > He was also fundamental in this decision, and many other afterwards. > > HTH, > Dana > > > -- W.S. Hager Lagua Web Solutions http://lagua.nl -------------- next part -------------- An HTML attachment was scrubbed... URL: From per at bothner.com Fri Jun 26 09:42:02 2015 From: per at bothner.com (Per Bothner) Date: Fri, 26 Jun 2015 09:42:02 -0700 Subject: [xquery-talk] xquery 3.1 wishlist In-Reply-To: References: <0BFA4EE4-4209-4CC6-9AB0-3F388E4CBAA6@saxonica.com> <169190C1-BA52-4BDA-B66E-A6057421D13E@saxonica.com> <7.0.1.0.2.20150626112610.02321be0@wheresmymailserver.com> Message-ID: <558D80DA.7070701@bothner.com> On 06/26/2015 09:10 AM, daniela florescu wrote: > languages that work on sequences there are plenty in programming languages, especially function programming languages: e..g. Lisp !?, ML !? > (head(), tail() ? :-) To avoid confusion: None of these have sequences in the XQuery/XPath sense, i.e. where a singleton sequence and an item are equivalent. -- --Per Bothner per at bothner.com http://per.bothner.com/ From davidc at nag.co.uk Fri Jun 26 09:41:25 2015 From: davidc at nag.co.uk (David Carlisle) Date: Fri, 26 Jun 2015 17:41:25 +0100 Subject: [xquery-talk] xquery 3.1 wishlist In-Reply-To: References: <0BFA4EE4-4209-4CC6-9AB0-3F388E4CBAA6@saxonica.com> <169190C1-BA52-4BDA-B66E-A6057421D13E@saxonica.com> <7.0.1.0.2.20150626112610.02321be0@wheresmymailserver.com> <558D7552.5050102@nag.co.uk> Message-ID: <558D80B5.7030903@nag.co.uk> On 26/06/2015 17:27, daniela florescu wrote: > David, Ken? > > You know the XPath/XSLT side of the story. > > I know the OTHER side: the XML Query Language Working Group side of the story Yes I know that side of the story too (I think I read all the xquery mailing list discussion, and implemented xquery 1 over XSLT, as you may recall I think I was the first person to submit test results for an Xquery 1 implementation to the XQ test suite:-) > (and the two haven?t been integrated until much later..) Which was of course a major failing of the original Xquery proposals. It was staggering that an W3C XML query language should _not_ start from that base. Fortunately It was redrafted to sit over Xpath. XQuery 1 was basically (and should have been defined as) a non-xml syntax for a simplified subset of XSLT. David, ________________________________ The Numerical Algorithms Group Ltd is a company registered in England and Wales with company number 1249803. The registered office is: Wilkinson House, Jordan Hill Road, Oxford OX2 8DR, United Kingdom. This e-mail has been scanned for all viruses by Microsoft Office 365. ________________________________ From dflorescu at me.com Fri Jun 26 09:45:40 2015 From: dflorescu at me.com (daniela florescu) Date: Fri, 26 Jun 2015 09:45:40 -0700 Subject: [xquery-talk] xquery 3.1 wishlist In-Reply-To: References: <0BFA4EE4-4209-4CC6-9AB0-3F388E4CBAA6@saxonica.com> <169190C1-BA52-4BDA-B66E-A6057421D13E@saxonica.com> <7.0.1.0.2.20150626112610.02321be0@wheresmymailserver.com> Message-ID: <931F7115-1505-43AD-935B-DA0A2DB79C9F@me.com> > Let's just say it's a mixed blessing, as IMO neither functional nor imperative typesystems provide all the answers. I agree with you. It?s a compromise, and honestly, I cannot imagine a better way of doing things?..maybe I am just not smart enough... If you make it 100% functional it is very hard to program in. If you make it 100% imperative you kill optimization. If you make it predicate-based (as SQL) you don?t have enough expressive power. So ?.. Dana -------------- next part -------------- An HTML attachment was scrubbed... URL: From dflorescu at me.com Fri Jun 26 09:54:17 2015 From: dflorescu at me.com (daniela florescu) Date: Fri, 26 Jun 2015 09:54:17 -0700 Subject: [xquery-talk] xquery 3.1 wishlist In-Reply-To: <558D80B5.7030903@nag.co.uk> References: <0BFA4EE4-4209-4CC6-9AB0-3F388E4CBAA6@saxonica.com> <169190C1-BA52-4BDA-B66E-A6057421D13E@saxonica.com> <7.0.1.0.2.20150626112610.02321be0@wheresmymailserver.com> <558D7552.5050102@nag.co.uk> <558D80B5.7030903@nag.co.uk> Message-ID: > >> (and the two haven?t been integrated until much later..) > > Which was of course a major failing of the original Xquery proposals. > It was staggering that an W3C XML query language should _not_ start from > that base. Fortunately It was redrafted to sit over Xpath. > XQuery 1 was basically (and should have been defined as) a non-xml > syntax for a simplified subset of XSLT. This is just Yet-Another-Example of how hard it is to integrate two communities, with two different backgrounds, and very strong beliefs. I remember the first couple of ?joint? meetings when we were almost ready to annihilated each other ?. It is funny in retrospect, because lost of silly things were said on both sides ?:-) i remember like it was yesterday?:-) I am surprised that the integration worked as well as it did in the end, and we both ended up learning from each other ?. (even if the fact that I ?learned? XML doesn?t mean AT ALL that I LIKE it , even after 15 years ...! :-) Best regards Dana From dflorescu at me.com Fri Jun 26 10:14:46 2015 From: dflorescu at me.com (daniela florescu) Date: Fri, 26 Jun 2015 10:14:46 -0700 Subject: [xquery-talk] xquery 3.1 wishlist In-Reply-To: <558D80B5.7030903@nag.co.uk> References: <0BFA4EE4-4209-4CC6-9AB0-3F388E4CBAA6@saxonica.com> <169190C1-BA52-4BDA-B66E-A6057421D13E@saxonica.com> <7.0.1.0.2.20150626112610.02321be0@wheresmymailserver.com> <558D7552.5050102@nag.co.uk> <558D80B5.7030903@nag.co.uk> Message-ID: > > > Which was of course a major failing of the original Xquery proposals. > It was staggering that an W3C XML query language should _not_ start from > that base. Fortunately It was redrafted to sit over Xpath. > XQuery 1 was basically (and should have been defined as) a non-xml > syntax for a simplified subset of XSLT. BTW, David? it?s funny after 15 years? -) If the XSLT WG wanted a simple non-xml syntax for XSLT, they should have done it themselves?..why would this have been OUR problem !? What the XML QUERY Working Group wanted something COMPLETELY different, aka, a QUERY LANGUAGE, out of which XSLT isn?t one ?. that?s all. Fun to see that those arguments don?t die even after 15 years :-) I remember having those discussion on-line and off-line with James Clark? like a decade and a half ago !?? :-) Actually, the first running implementation of the integration of XQuery and XPath parser was written by me and James (both bitching about the ?features? in other?s side..:-) But overall, I think XSLT and XQuery ended up integrated pretty nicely, so it was worth the effort. Best regards Dana From wshager at gmail.com Fri Jun 26 10:32:45 2015 From: wshager at gmail.com (W.S. Hager) Date: Fri, 26 Jun 2015 19:32:45 +0200 Subject: [xquery-talk] xquery 3.1 wishlist In-Reply-To: References: <0BFA4EE4-4209-4CC6-9AB0-3F388E4CBAA6@saxonica.com> <169190C1-BA52-4BDA-B66E-A6057421D13E@saxonica.com> <7.0.1.0.2.20150626112610.02321be0@wheresmymailserver.com> <558D7552.5050102@nag.co.uk> <558D80B5.7030903@nag.co.uk> Message-ID: That should provide some positive perspectives for integrating with the web... wait, did I just get off-topic? Oops? No. I write a great deal of javascript, and this is actually why I would like my wishlist to be considered. Functions like array:index-of and array:for-each (called map in many more languages) feel off to me in xquery because of their resemblance to javascript, but with slightly different semantics. Since this pertains to "imperative" constructs, you may consider converging more towards javascript, which was the reason for the 3.1 spec in the first place, if I'm not mistaken. As an added advantage it would less surprise programmers coming from javascript, I think. 2015-06-26 19:14 GMT+02:00 daniela florescu : > > > > > > Which was of course a major failing of the original Xquery proposals. > > It was staggering that an W3C XML query language should _not_ start from > > that base. Fortunately It was redrafted to sit over Xpath. > > XQuery 1 was basically (and should have been defined as) a non-xml > > syntax for a simplified subset of XSLT. > > BTW, David? it?s funny after 15 years? -) > > If the XSLT WG wanted a simple non-xml syntax for XSLT, they should have > done it themselves?..why would this > have been OUR problem !? > > What the XML QUERY Working Group wanted something COMPLETELY different, > aka, a QUERY LANGUAGE, > out of which XSLT isn?t one ?. that?s all. > > Fun to see that those arguments don?t die even after 15 years :-) > > I remember having those discussion on-line and off-line with James Clark? > like a decade and a half ago !?? :-) > > Actually, the first running implementation of the integration of XQuery > and XPath parser was written by me and James > (both bitching about the ?features? in other?s side..:-) > > But overall, I think XSLT and XQuery ended up integrated pretty nicely, so > it was worth the effort. > > Best regards > Dana > > > > > > _______________________________________________ > talk at x-query.com > http://x-query.com/mailman/listinfo/talk > -- W.S. Hager Lagua Web Solutions http://lagua.nl -------------- next part -------------- An HTML attachment was scrubbed... URL: From wshager at gmail.com Fri Jun 26 10:34:26 2015 From: wshager at gmail.com (W.S. Hager) Date: Fri, 26 Jun 2015 19:34:26 +0200 Subject: [xquery-talk] xquery 3.1 wishlist In-Reply-To: References: <0BFA4EE4-4209-4CC6-9AB0-3F388E4CBAA6@saxonica.com> <169190C1-BA52-4BDA-B66E-A6057421D13E@saxonica.com> <7.0.1.0.2.20150626112610.02321be0@wheresmymailserver.com> <558D7552.5050102@nag.co.uk> <558D80B5.7030903@nag.co.uk> Message-ID: I meant *the lack of* array:index-of(), obviously. 2015-06-26 19:32 GMT+02:00 W.S. Hager : > That should provide some positive perspectives for integrating with the > web... wait, did I just get off-topic? Oops? No. I write a great deal of > javascript, and this is actually why I would like my wishlist to be > considered. Functions like array:index-of and array:for-each (called map in > many more languages) feel off to me in xquery because of their resemblance > to javascript, but with slightly different semantics. Since this pertains > to "imperative" constructs, you may consider converging more towards > javascript, which was the reason for the 3.1 spec in the first place, if > I'm not mistaken. As an added advantage it would less surprise programmers > coming from javascript, I think. > > 2015-06-26 19:14 GMT+02:00 daniela florescu : > >> > >> > >> > Which was of course a major failing of the original Xquery proposals. >> > It was staggering that an W3C XML query language should _not_ start from >> > that base. Fortunately It was redrafted to sit over Xpath. >> > XQuery 1 was basically (and should have been defined as) a non-xml >> > syntax for a simplified subset of XSLT. >> >> BTW, David? it?s funny after 15 years? -) >> >> If the XSLT WG wanted a simple non-xml syntax for XSLT, they should have >> done it themselves?..why would this >> have been OUR problem !? >> >> What the XML QUERY Working Group wanted something COMPLETELY different, >> aka, a QUERY LANGUAGE, >> out of which XSLT isn?t one ?. that?s all. >> >> Fun to see that those arguments don?t die even after 15 years :-) >> >> I remember having those discussion on-line and off-line with James Clark? >> like a decade and a half ago !?? :-) >> >> Actually, the first running implementation of the integration of XQuery >> and XPath parser was written by me and James >> (both bitching about the ?features? in other?s side..:-) >> >> But overall, I think XSLT and XQuery ended up integrated pretty nicely, >> so it was worth the effort. >> >> Best regards >> Dana >> >> >> >> >> >> _______________________________________________ >> talk at x-query.com >> http://x-query.com/mailman/listinfo/talk >> > > > > -- > > W.S. Hager > Lagua Web Solutions > http://lagua.nl > -- W.S. Hager Lagua Web Solutions http://lagua.nl -------------- next part -------------- An HTML attachment was scrubbed... URL: From dflorescu at me.com Fri Jun 26 10:48:13 2015 From: dflorescu at me.com (daniela florescu) Date: Fri, 26 Jun 2015 10:48:13 -0700 Subject: [xquery-talk] xquery 3.1 wishlist In-Reply-To: References: <0BFA4EE4-4209-4CC6-9AB0-3F388E4CBAA6@saxonica.com> <169190C1-BA52-4BDA-B66E-A6057421D13E@saxonica.com> <7.0.1.0.2.20150626112610.02321be0@wheresmymailserver.com> <558D7552.5050102@nag.co.uk> <558D80B5.7030903@nag.co.uk> Message-ID: <60F0356F-7419-401F-BB36-A5B8D25FF546@me.com> Hi Wouter, > Functions like array:index-of and array:for-each (called map in many more languages) feel off to me in xquery because of their resemblance to javascript, but with slightly different semantics. See my original complaints about a month ago about the design of XQuery 3.1, which was done as if JSON and Javascript never existed?..and the one you bring up is only ONE kind of inconsistency. Three years ago when I was bringing this kind of inconsistencies to the attention of XQuery WG, and all the troubles they will bring LATER if we add maps to XQuery while ignoring JSON, Sharon Adler who was running the XSLT WG decided that it was a good idea to forbid me from the WG?? and forbid my phone calls to the WG?.. Well. Water under the bridge now. > > this is actually why I would like my wishlist to be considered. The important question for you is : you would like your opinion to be considered by WHO !?? Is the XQuery WG the right forum ? I am not sure, as their mandate does not include proper JSON support. But if not XQuery forum, then WHO should be concerned with this more ?global? , smoother integration !?? The integration between XSLT and XQuery was in some sense simpler, because we were very focused communities, with strict rules imposed by W3C, with a common goal: XML. JSON and Javascript are not that?.unfortunately. XML and JSON communities are like water and oil?. So, who would like to be considered BY !?? (I wish I knew the answer to that question ?) Best regards Dana From wshager at gmail.com Fri Jun 26 14:34:52 2015 From: wshager at gmail.com (W.S. Hager) Date: Fri, 26 Jun 2015 23:34:52 +0200 Subject: [xquery-talk] xquery 3.1 wishlist In-Reply-To: <60F0356F-7419-401F-BB36-A5B8D25FF546@me.com> References: <0BFA4EE4-4209-4CC6-9AB0-3F388E4CBAA6@saxonica.com> <169190C1-BA52-4BDA-B66E-A6057421D13E@saxonica.com> <7.0.1.0.2.20150626112610.02321be0@wheresmymailserver.com> <558D7552.5050102@nag.co.uk> <558D80B5.7030903@nag.co.uk> <60F0356F-7419-401F-BB36-A5B8D25FF546@me.com> Message-ID: Hi Dana, Thanks for your elaborate response. It's the first time I post to this list, so it's more of a trail by fire, and I expected nothing less. I can only say that I rather address this community than javascript's, because I expect it to be less sensitive to buzz, and more pliable, since the ink of the specs is barely dry. As to who in particular should consider my ideas, I don't know, I'm just hoping for a discussion, because AFAICT this isn't set in stone yet. Thanks, Wouter Op vrijdag 26 juni 2015 heeft daniela florescu het volgende geschreven: > Hi Wouter, > > > > Functions like array:index-of and array:for-each (called map in many > more languages) feel off to me in xquery because of their resemblance to > javascript, but with slightly different semantics. > > See my original complaints about a month ago about the design of XQuery > 3.1, which was done > as if JSON and Javascript never existed?..and the one you bring up is only > ONE kind of inconsistency. > > Three years ago when I was bringing this kind of inconsistencies to the > attention of XQuery WG, and all > the troubles they will bring LATER if we add maps to XQuery while ignoring > JSON, Sharon Adler who was > running the XSLT WG decided that it was a good idea to forbid me from > the WG?? and forbid my phone > calls to the WG?.. > > Well. Water under the bridge now. > > > > > this is actually why I would like my wishlist to be considered. > > The important question for you is : you would like your opinion to be > considered by WHO !?? > > Is the XQuery WG the right forum ? > > I am not sure, as their mandate does not include proper JSON support. > > But if not XQuery forum, then WHO should be concerned with this more > ?global? , smoother integration !?? > > The integration between XSLT and XQuery was in some sense simpler, because > we were very focused > communities, with strict rules imposed by W3C, with a common goal: XML. > > JSON and Javascript are not that?.unfortunately. > > XML and JSON communities are like water and oil?. > > So, who would like to be considered BY !?? > > (I wish I knew the answer to that question ?) > > Best regards > Dana > > > > > -- W.S. Hager Lagua Web Solutions http://lagua.nl -------------- next part -------------- An HTML attachment was scrubbed... URL: From wshager at gmail.com Fri Jun 26 15:19:09 2015 From: wshager at gmail.com (W.S. Hager) Date: Sat, 27 Jun 2015 00:19:09 +0200 Subject: [xquery-talk] xquery 3.1 wishlist In-Reply-To: References: <0BFA4EE4-4209-4CC6-9AB0-3F388E4CBAA6@saxonica.com> <169190C1-BA52-4BDA-B66E-A6057421D13E@saxonica.com> <7.0.1.0.2.20150626112610.02321be0@wheresmymailserver.com> <558D7552.5050102@nag.co.uk> <558D80B5.7030903@nag.co.uk> <60F0356F-7419-401F-BB36-A5B8D25FF546@me.com> Message-ID: Perhaps I should underline that I don't find these "inconsistencies" very problematic. It's not javascript, and the language has been spectacularly enriched by these function types. I'm sure it'll be fine without the conviences I suggested. Thanks. 2015-06-26 23:34 GMT+02:00 W.S. Hager : > Hi Dana, > > Thanks for your elaborate response. It's the first time I post to this > list, so it's more of a trail by fire, and I expected nothing less. I can > only say that I rather address this community than javascript's, because I > expect it to be less sensitive to buzz, and more pliable, since the ink of > the specs is barely dry. > > As to who in particular should consider my ideas, I don't know, I'm just > hoping for a discussion, because AFAICT this isn't set in stone yet. > > Thanks, > Wouter > > > Op vrijdag 26 juni 2015 heeft daniela florescu het > volgende geschreven: > >> Hi Wouter, >> >> >> > Functions like array:index-of and array:for-each (called map in many >> more languages) feel off to me in xquery because of their resemblance to >> javascript, but with slightly different semantics. >> >> See my original complaints about a month ago about the design of XQuery >> 3.1, which was done >> as if JSON and Javascript never existed?..and the one you bring up is >> only ONE kind of inconsistency. >> >> Three years ago when I was bringing this kind of inconsistencies to the >> attention of XQuery WG, and all >> the troubles they will bring LATER if we add maps to XQuery while >> ignoring JSON, Sharon Adler who was >> running the XSLT WG decided that it was a good idea to forbid me from >> the WG?? and forbid my phone >> calls to the WG?.. >> >> Well. Water under the bridge now. >> >> > >> > this is actually why I would like my wishlist to be considered. >> >> The important question for you is : you would like your opinion to be >> considered by WHO !?? >> >> Is the XQuery WG the right forum ? >> >> I am not sure, as their mandate does not include proper JSON support. >> >> But if not XQuery forum, then WHO should be concerned with this more >> ?global? , smoother integration !?? >> >> The integration between XSLT and XQuery was in some sense simpler, >> because we were very focused >> communities, with strict rules imposed by W3C, with a common goal: XML. >> >> JSON and Javascript are not that?.unfortunately. >> >> XML and JSON communities are like water and oil?. >> >> So, who would like to be considered BY !?? >> >> (I wish I knew the answer to that question ?) >> >> Best regards >> Dana >> >> >> >> >> > > -- > > W.S. Hager > Lagua Web Solutions > http://lagua.nl > > -- W.S. Hager Lagua Web Solutions http://lagua.nl -------------- next part -------------- An HTML attachment was scrubbed... URL: From dflorescu at me.com Fri Jun 26 16:15:33 2015 From: dflorescu at me.com (daniela florescu) Date: Fri, 26 Jun 2015 16:15:33 -0700 Subject: [xquery-talk] xquery 3.1 wishlist In-Reply-To: References: <0BFA4EE4-4209-4CC6-9AB0-3F388E4CBAA6@saxonica.com> <169190C1-BA52-4BDA-B66E-A6057421D13E@saxonica.com> <7.0.1.0.2.20150626112610.02321be0@wheresmymailserver.com> <558D7552.5050102@nag.co.uk> <558D80B5.7030903@nag.co.uk> Message-ID: Lucky you, I would say. Because for the people who need to use XQuery and JSON/Javascript in the same time those inconsistencies will be such a constant source of frustration and a constant source of errors ?. Consequences: - chances of XQuery (or XQuery ideas) being used by the JSON community go down significantly - billions of dollars due to loss of productivity overall - probably very tight restriction of the user population of XQuery. Just saying? if this doesn?t bother you, consider yourself lucky. Best regards Dana > On Jun 26, 2015, at 10:32 AM, W.S. Hager wrote: > > That should provide some positive perspectives for integrating with the web... wait, did I just get off-topic? Oops? No. I write a great deal of javascript, and this is actually why I would like my wishlist to be considered. Functions like array:index-of and array:for-each (called map in many more languages) feel off to me in xquery because of their resemblance to javascript, but with slightly different semantics. Since this pertains to "imperative" constructs, you may consider converging more towards javascript, which was the reason for the 3.1 spec in the first place, if I'm not mistaken. As an added advantage it would less surprise programmers coming from javascript, I think. > > 2015-06-26 19:14 GMT+02:00 daniela florescu >: > > > > > > Which was of course a major failing of the original Xquery proposals. > > It was staggering that an W3C XML query language should _not_ start from > > that base. Fortunately It was redrafted to sit over Xpath. > > XQuery 1 was basically (and should have been defined as) a non-xml > > syntax for a simplified subset of XSLT. > > BTW, David? it?s funny after 15 years? -) > > If the XSLT WG wanted a simple non-xml syntax for XSLT, they should have done it themselves?..why would this > have been OUR problem !? > > What the XML QUERY Working Group wanted something COMPLETELY different, aka, a QUERY LANGUAGE, > out of which XSLT isn?t one ?. that?s all. > > Fun to see that those arguments don?t die even after 15 years :-) > > I remember having those discussion on-line and off-line with James Clark? like a decade and a half ago !?? :-) > > Actually, the first running implementation of the integration of XQuery and XPath parser was written by me and James > (both bitching about the ?features? in other?s side..:-) > > But overall, I think XSLT and XQuery ended up integrated pretty nicely, so it was worth the effort. > > Best regards > Dana > > > > > > _______________________________________________ > talk at x-query.com > http://x-query.com/mailman/listinfo/talk > > > -- > W.S. Hager > Lagua Web Solutions > http://lagua.nl > _______________________________________________ > talk at x-query.com > http://x-query.com/mailman/listinfo/talk -------------- next part -------------- An HTML attachment was scrubbed... URL: From dflorescu at me.com Fri Jun 26 20:52:22 2015 From: dflorescu at me.com (daniela florescu) Date: Fri, 26 Jun 2015 20:52:22 -0700 Subject: [xquery-talk] xquery 3.1 wishlist In-Reply-To: <558D80B5.7030903@nag.co.uk> References: <0BFA4EE4-4209-4CC6-9AB0-3F388E4CBAA6@saxonica.com> <169190C1-BA52-4BDA-B66E-A6057421D13E@saxonica.com> <7.0.1.0.2.20150626112610.02321be0@wheresmymailserver.com> <558D7552.5050102@nag.co.uk> <558D80B5.7030903@nag.co.uk> Message-ID: > > Yes I know that side of the story too (I think I read all the xquery > mailing list discussion, Dear David, you read the mailing lists from W3C 1999-2000-2001. That?s great. But I WAS there. My XML query language (XML-QL ) ? used by AT&T in a large number of applications-- http://www.w3.org/TR/NOTE-xml-ql/ ??. triggered the W3C XML Query Languages Workshop, http://www.w3.org/TandS/QL/QL98/ ??..which in turn triggered the creation of the W3C XML Query WorkIng Group. ====== You know why I am replying those ?historical? questions !? Because I am THE ONLY ONE from that time who still pays attention to this mailing list. (don?t ask me why, because you?ll have along answer :-) And I am the ONLY ONE who still knows the stories (and the motivations, visible in the minutes or not, for many decisions..). Some of those stories are technically interesting. Whoever wants to avoid repeating history ?.. has to learn history. Best regards Dana From ihe.onwuka at gmail.com Sat Jun 27 06:51:25 2015 From: ihe.onwuka at gmail.com (Ihe Onwuka) Date: Sat, 27 Jun 2015 09:51:25 -0400 Subject: [xquery-talk] Does XQuery fit anywhere in this landscape. In-Reply-To: References: Message-ID: Below is an blog post from Norm Matloff the author of the Art of R - a statistician that lives in a CS department at UC Irvine, the book I referred to in another post, http://blog.revolutionanalytics.com/2014/08/statistics-losing-ground-to-cs-losing-image-among-students.html The article is interesting for a number of reasons not the least the parallel of it's core theme, the image problem of a discipline that is perceived to be unfashionable. The reference to a CS usurpation problem is ironic because the reverse argument could also be made - really bad CS (e.g data management) being entrenched as standard by statisticians (and the like) in the name of data science - just goes to show that there are probably 2 very valid sides to that coin. Enough preamble, I am wondering if the perusal of some of the comments reveal an opportunity. Tom 26/8/14 @ 23.25 surmising that CS students are turned off of Stats classes because of the use of R which "*as a programming language it is horrible and needs to die in a fire" *I was hoping to see a reasoned rebuttal of a viewpoint I share but Matloff really didn't deal with it well. There is another comment by Jaipelai 27/8/14 @ 09:42 that I could almost have written myself. Point being Stonebraker identifies that people will want to do analytics with their query languages but all the analytics tools suck at data management. That market is all the rage now, but the R and Python communities are probably lost causes. So rather than bring analytics to a query language, suppose instead one looked at baking in a best of breed query capability to a an analytics language that was fashionable, functional and comprehension friendly - Julia. On Tue, Jun 23, 2015 at 12:52 PM, daniela florescu wrote: > > On Jun 23, 2015, at 9:14 AM, Ihe Onwuka wrote: > > Well he didn't comment on SQL for JSON per se but saying that RDBMS are > sub-optimal for everything is a tacit repudiation of SQL is it not? > > > No, because he said exploitively that the *internals* of a database will > be different (columnar, main memory, streaming, etc)?.. the > programming language will STILL be SQL. Or at least for all those > databases for whom the data model is STILL relational. > > > He buys into the notion that there will be swarms of data scientists doing > clever things with data which will need a different language. > > > Yes. SQL clearly doesn?t solve the R use cases. So yes, R is on the > ?acceptable OTHER languages? list. > > But that?s not clear that what we (aka the XML community see) as ?normal? > data processing use cases will be considered necessary use cases > for the JSON/NoSQL community. > > E.g. scanning the data and automatically extracting a schema. Is this an > acceptable use case for JSON ? Or not ? > > If yes, then XQuery has a chance, because XQuery can do that and SQL > cannot. > > If no, people will stick to what they know : SQL. > > > He is right that statistical packages suck at data management but that > won't isn't going to deter the R community. > > > Yes, the R implementations (I looked at them in details about 2 years ago) > have NO IDEA about how to deal with large volumes > of data, so probably a mix between data technologies and database > technologies is necessary. > > However, don?t underestimate companies like Oracle. They are not dummies, > and the know what the market wants. > R is supported natively inside the Oracle database now. > > I think that Stonebreaker exaggerates when he says that relational > databases will disappear in 10 years. Well? I don?t think > this will happen so quickly. > > > Do you see XQuery fitting anywhere in this vision. It has potential as a > pipeling technology as does for that matter SQL. I think it will always be > problematic to do analytics on the source data because it is too dirty. > > > XQuery COULD be a very good ?glue? language between data in various > formats (CSV, Excel, PDF, HTML, XML, JSON, relational, whatever). > > But I say ?COULD? not ?CAN?. > > It needs many extensions to be good at that: scripting, support for JSON, > modules to support a variety of data formats and data processing services. > > > Best regards > Dana > > > > P.S. > > I am continually surprised that people this smart believe that there is > such a pool of data scientists people to draw from. > > > Me too. I fell down from my chair when I saw the article saying that US > needs 5 million data scientists in the next 2 years, aka, about 5% of the > US working population. Not sure if this for laughing, or for crying. > > [[ aka, we will not have cashiers at Safeway anymore ?cause they are all > data scientists?.]] > > Someone up there doing the math in this article doesn?t understand jack > nothing about numbers and statistics ??. > > And all this while: > > http://www.nature.com/news/irreproducible-biology-research-costs-put-at-28-billion-per-year-1.17711?utm_content=buffer95bfb&utm_medium=social&utm_source=linkedin.com&utm_campaign=buffer > > God knows how many medicines are wrongly given to sick people, because > nobody knows how to do a proper case study ? > REALLY scary ? but that?s another discussion. > > Again the same discussion comes up: DON?T look for 5 million data > scientists. Just do with a smaller number of smart ones, but GIVE > THEM BETTER TOOLS and AUTOMATIZE THE PROCESS. > > But hey, how can you stop such a wold wide enthusiasm for ?data > scientists? !?? Logic doesn?t do it?. > > > > > On Tue, Jun 23, 2015 at 11:51 AM, daniela florescu > wrote: > >> Ihe, >> >> >> I had discussions with Michael Stonebreaker for 20 years about about the >> fact that >> XML ?exists? or not. With Jim Gray too, before he disappeared. They were >> both extremely >> supportive for me, yet were both thinking that I am crazy to waste my >> research career on XML. >> >> Stonebreaker?s opinion: he doesn?t believe that XML ?exists? in industry. >> >> So he will not mention it, because it doesn?t exist :-) >> >> But you have to remember that Stonebreaker is a database person. Probably >> he will not >> understand the facet of XML which is ?XML as documents?. It took me and >> the other database >> people involved in XQuery years before we swallowed it. (Don Chamberlin >> of SQL fame >> famously once said ?who in the world would care about such a corner case >> as mixed content !?"). >> >> Don?t blame the database people that they don?t ?get? XML. On one hand, >> it has never been explained >> to them properly. >> >> And again, Stonebreaker, being a database person, he will look at ?XML as >> data? aspect of the story. >> And this today is INDEED non-existing in industry, or almost. Or, when t >> is, it is mostly for log analysis. >> >> ============ >> >> JSON will completely change the landscape, in surprising ways, that none >> of us can predict. >> >> And no, I trust that Michael Stonebreaker is too smart to believe that >> SQL is a solution to process JSON. >> >> But time will tell. >> >> Best regards >> Dana >> >> >> >> >> >> On Jun 23, 2015, at 12:15 AM, Ihe Onwuka wrote: >> >> https://www.youtube.com/watch?v=9K0SWs1mOD0 >> >> By implication it puts the kibosh on SQL as the basis of a solution for >> the future. >> _______________________________________________ >> talk at x-query.com >> http://x-query.com/mailman/listinfo/talk >> >> >> > > -------------- next part -------------- An HTML attachment was scrubbed... URL: From ihe.onwuka at gmail.com Sat Jun 27 10:33:19 2015 From: ihe.onwuka at gmail.com (Ihe Onwuka) Date: Sat, 27 Jun 2015 13:33:19 -0400 Subject: [xquery-talk] Does XQuery fit anywhere in this landscape. In-Reply-To: References: Message-ID: This looks like low hanging fruit. *"For one thing, Mode will start letting people analyze data using languages other than SQL, like Python, Steer said. Not that there?s anything wrong with prioritizing SQL, but the support of more languages should make Mode compelling for more data analysts."* http://venturebeat.com/2014/06/17/mode-unveils-its-app-for-analyzing-your-data-in-the-cloud-and-2m-too/ https://gigaom.com/2015/02/05/data-collaboration-platform-mode-wants-to-move-sql-to-the-cloud/ https://modeanalytics.com/ > On Tue, Jun 23, 2015 at 12:52 PM, daniela florescu > wrote: > >> >> On Jun 23, 2015, at 9:14 AM, Ihe Onwuka wrote: >> >> Well he didn't comment on SQL for JSON per se but saying that RDBMS are >> sub-optimal for everything is a tacit repudiation of SQL is it not? >> >> >> No, because he said exploitively that the *internals* of a database will >> be different (columnar, main memory, streaming, etc)?.. the >> programming language will STILL be SQL. Or at least for all those >> databases for whom the data model is STILL relational. >> >> >> He buys into the notion that there will be swarms of data scientists >> doing clever things with data which will need a different language. >> >> >> Yes. SQL clearly doesn?t solve the R use cases. So yes, R is on the >> ?acceptable OTHER languages? list. >> >> But that?s not clear that what we (aka the XML community see) as ?normal? >> data processing use cases will be considered necessary use cases >> for the JSON/NoSQL community. >> >> E.g. scanning the data and automatically extracting a schema. Is this an >> acceptable use case for JSON ? Or not ? >> >> If yes, then XQuery has a chance, because XQuery can do that and SQL >> cannot. >> >> If no, people will stick to what they know : SQL. >> >> >> He is right that statistical packages suck at data management but that >> won't isn't going to deter the R community. >> >> >> Yes, the R implementations (I looked at them in details about 2 years >> ago) have NO IDEA about how to deal with large volumes >> of data, so probably a mix between data technologies and database >> technologies is necessary. >> >> However, don?t underestimate companies like Oracle. They are not dummies, >> and the know what the market wants. >> R is supported natively inside the Oracle database now. >> >> I think that Stonebreaker exaggerates when he says that relational >> databases will disappear in 10 years. Well? I don?t think >> this will happen so quickly. >> >> >> Do you see XQuery fitting anywhere in this vision. It has potential as a >> pipeling technology as does for that matter SQL. I think it will always be >> problematic to do analytics on the source data because it is too dirty. >> >> >> XQuery COULD be a very good ?glue? language between data in various >> formats (CSV, Excel, PDF, HTML, XML, JSON, relational, whatever). >> >> But I say ?COULD? not ?CAN?. >> >> It needs many extensions to be good at that: scripting, support for JSON, >> modules to support a variety of data formats and data processing services. >> >> >> Best regards >> Dana >> >> >> >> P.S. >> >> I am continually surprised that people this smart believe that there is >> such a pool of data scientists people to draw from. >> >> >> Me too. I fell down from my chair when I saw the article saying that US >> needs 5 million data scientists in the next 2 years, aka, about 5% of the >> US working population. Not sure if this for laughing, or for crying. >> >> [[ aka, we will not have cashiers at Safeway anymore ?cause they are all >> data scientists?.]] >> >> Someone up there doing the math in this article doesn?t understand jack >> nothing about numbers and statistics ??. >> >> And all this while: >> >> http://www.nature.com/news/irreproducible-biology-research-costs-put-at-28-billion-per-year-1.17711?utm_content=buffer95bfb&utm_medium=social&utm_source=linkedin.com&utm_campaign=buffer >> >> God knows how many medicines are wrongly given to sick people, because >> nobody knows how to do a proper case study ? >> REALLY scary ? but that?s another discussion. >> >> Again the same discussion comes up: DON?T look for 5 million data >> scientists. Just do with a smaller number of smart ones, but GIVE >> THEM BETTER TOOLS and AUTOMATIZE THE PROCESS. >> >> But hey, how can you stop such a wold wide enthusiasm for ?data >> scientists? !?? Logic doesn?t do it?. >> >> >> >> >> On Tue, Jun 23, 2015 at 11:51 AM, daniela florescu >> wrote: >> >>> Ihe, >>> >>> >>> I had discussions with Michael Stonebreaker for 20 years about about the >>> fact that >>> XML ?exists? or not. With Jim Gray too, before he disappeared. They were >>> both extremely >>> supportive for me, yet were both thinking that I am crazy to waste my >>> research career on XML. >>> >>> Stonebreaker?s opinion: he doesn?t believe that XML ?exists? in >>> industry. >>> >>> So he will not mention it, because it doesn?t exist :-) >>> >>> But you have to remember that Stonebreaker is a database person. >>> Probably he will not >>> understand the facet of XML which is ?XML as documents?. It took me and >>> the other database >>> people involved in XQuery years before we swallowed it. (Don Chamberlin >>> of SQL fame >>> famously once said ?who in the world would care about such a corner case >>> as mixed content !?"). >>> >>> Don?t blame the database people that they don?t ?get? XML. On one hand, >>> it has never been explained >>> to them properly. >>> >>> And again, Stonebreaker, being a database person, he will look at ?XML >>> as data? aspect of the story. >>> And this today is INDEED non-existing in industry, or almost. Or, when t >>> is, it is mostly for log analysis. >>> >>> ============ >>> >>> JSON will completely change the landscape, in surprising ways, that none >>> of us can predict. >>> >>> And no, I trust that Michael Stonebreaker is too smart to believe that >>> SQL is a solution to process JSON. >>> >>> But time will tell. >>> >>> Best regards >>> Dana >>> >>> >>> >>> >>> >>> On Jun 23, 2015, at 12:15 AM, Ihe Onwuka wrote: >>> >>> https://www.youtube.com/watch?v=9K0SWs1mOD0 >>> >>> By implication it puts the kibosh on SQL as the basis of a solution for >>> the future. >>> _______________________________________________ >>> talk at x-query.com >>> http://x-query.com/mailman/listinfo/talk >>> >>> >>> >> >> > -------------- next part -------------- An HTML attachment was scrubbed... URL: From adam.retter at googlemail.com Sat Jun 27 12:34:42 2015 From: adam.retter at googlemail.com (Adam Retter) Date: Sat, 27 Jun 2015 20:34:42 +0100 Subject: [xquery-talk] xquery 3.1 wishlist In-Reply-To: References: Message-ID: Hi Wouter, If you want to directly contact the working group I would suggest filing a feature-request via Bugzilla - http://www.w3.org/XML/2005/04/qt-bugzilla. If you can't reach that you could try the public-qt-comments at w3.org mailing list. However, keep in mind that this would most likely now be aimed at an XQuery 3.2, so I guess we would need to accumulate a few feature requests/bugfixes yet to even get that off the ground. Personally I would also like to see a ternary operator, but I haven't mentioned it until now ;-) On 26 June 2015 at 12:18, W.S. Hager wrote: > Hello, > > I've been working with the recent xquery 3.1 implementation in the develop > branch eXist-db. I encountered some cases that were quite hard to work > around: > > - the lack of array:index-of() > - the lack of the iterator index in arrayfor-each and related higher-order > functions > > Perhaps someone of the workgroup is available to discuss those cases. > > Thanks, > Wouter > -- > > W.S. Hager > Lagua Web Solutions > http://lagua.nl > > > > -- > > W.S. Hager > Lagua Web Solutions > http://lagua.nl > > > > _______________________________________________ > talk at x-query.com > http://x-query.com/mailman/listinfo/talk -- Adam Retter skype: adam.retter tweet: adamretter http://www.adamretter.org.uk From christian.gruen at gmail.com Sat Jun 27 15:07:29 2015 From: christian.gruen at gmail.com (=?UTF-8?Q?Christian_Gr=C3=BCn?=) Date: Sun, 28 Jun 2015 00:07:29 +0200 Subject: [xquery-talk] xquery 3.1 wishlist In-Reply-To: References: Message-ID: > Personally I would also like to see a ternary operator, but I haven't > mentioned it until now ;-) +1 ;) But if I remember right, it has already been motivated and discussed in the group before. Talking about conditions: An if expression without 'else' branch would often be nice as well (if not present, an empty sequence could be returned). > On 26 June 2015 at 12:18, W.S. Hager wrote: >> Hello, >> >> I've been working with the recent xquery 3.1 implementation in the develop >> branch eXist-db. I encountered some cases that were quite hard to work >> around: >> >> - the lack of array:index-of() >> - the lack of the iterator index in arrayfor-each and related higher-order >> functions >> >> Perhaps someone of the workgroup is available to discuss those cases. >> >> Thanks, >> Wouter >> -- >> >> W.S. Hager >> Lagua Web Solutions >> http://lagua.nl >> >> >> >> -- >> >> W.S. Hager >> Lagua Web Solutions >> http://lagua.nl >> >> >> >> _______________________________________________ >> talk at x-query.com >> http://x-query.com/mailman/listinfo/talk > > > > -- > Adam Retter > > skype: adam.retter > tweet: adamretter > http://www.adamretter.org.uk > _______________________________________________ > talk at x-query.com > http://x-query.com/mailman/listinfo/talk From wshager at gmail.com Sun Jun 28 05:35:43 2015 From: wshager at gmail.com (W.S. Hager) Date: Sun, 28 Jun 2015 14:35:43 +0200 Subject: [xquery-talk] xquery 3.1 wishlist In-Reply-To: References: Message-ID: Hmm, I'm not so sure. The if/else clause is pretty short as it is, and semantically more clear. But it's another discussion altogether. For me the paint points remain in array support/semantics. I thought it best to let it rest for a while and see if the workarounds proof to be feasible. I think I was too eager to address this in the first place. Regards, Wouter 2015-06-28 0:07 GMT+02:00 Christian Gr?n : > > Personally I would also like to see a ternary operator, but I haven't > > mentioned it until now ;-) > > +1 ;) But if I remember right, it has already been motivated and > discussed in the group before. > > Talking about conditions: An if expression without 'else' branch would > often be nice as well (if not present, an empty sequence could be > returned). > > > > On 26 June 2015 at 12:18, W.S. Hager wrote: > >> Hello, > >> > >> I've been working with the recent xquery 3.1 implementation in the > develop > >> branch eXist-db. I encountered some cases that were quite hard to work > >> around: > >> > >> - the lack of array:index-of() > >> - the lack of the iterator index in arrayfor-each and related > higher-order > >> functions > >> > >> Perhaps someone of the workgroup is available to discuss those cases. > >> > >> Thanks, > >> Wouter > >> -- > >> > >> W.S. Hager > >> Lagua Web Solutions > >> http://lagua.nl > >> > >> > >> > >> -- > >> > >> W.S. Hager > >> Lagua Web Solutions > >> http://lagua.nl > >> > >> > >> > >> _______________________________________________ > >> talk at x-query.com > >> http://x-query.com/mailman/listinfo/talk > > > > > > > > -- > > Adam Retter > > > > skype: adam.retter > > tweet: adamretter > > http://www.adamretter.org.uk > > _______________________________________________ > > talk at x-query.com > > http://x-query.com/mailman/listinfo/talk > -- W.S. Hager Lagua Web Solutions http://lagua.nl -------------- next part -------------- An HTML attachment was scrubbed... URL: From wshager at gmail.com Sun Jun 28 11:32:52 2015 From: wshager at gmail.com (W.S. Hager) Date: Sun, 28 Jun 2015 20:32:52 +0200 Subject: [xquery-talk] xquery 3.1 wishlist In-Reply-To: References: Message-ID: One more consideration: function calls seem to be more expensive than inline expressions. And then there's that baggage of a custom library... 2015-06-28 14:35 GMT+02:00 W.S. Hager : > Hmm, I'm not so sure. The if/else clause is pretty short as it is, and > semantically more clear. But it's another discussion altogether. > > For me the paint points remain in array support/semantics. I thought it > best to let it rest for a while and see if the workarounds proof to be > feasible. I think I was too eager to address this in the first place. > > Regards, > Wouter > > 2015-06-28 0:07 GMT+02:00 Christian Gr?n : > >> > Personally I would also like to see a ternary operator, but I haven't >> > mentioned it until now ;-) >> >> +1 ;) But if I remember right, it has already been motivated and >> discussed in the group before. >> >> Talking about conditions: An if expression without 'else' branch would >> often be nice as well (if not present, an empty sequence could be >> returned). >> >> >> > On 26 June 2015 at 12:18, W.S. Hager wrote: >> >> Hello, >> >> >> >> I've been working with the recent xquery 3.1 implementation in the >> develop >> >> branch eXist-db. I encountered some cases that were quite hard to work >> >> around: >> >> >> >> - the lack of array:index-of() >> >> - the lack of the iterator index in arrayfor-each and related >> higher-order >> >> functions >> >> >> >> Perhaps someone of the workgroup is available to discuss those cases. >> >> >> >> Thanks, >> >> Wouter >> >> -- >> >> >> >> W.S. Hager >> >> Lagua Web Solutions >> >> http://lagua.nl >> >> >> >> >> >> >> >> -- >> >> >> >> W.S. Hager >> >> Lagua Web Solutions >> >> http://lagua.nl >> >> >> >> >> >> >> >> _______________________________________________ >> >> talk at x-query.com >> >> http://x-query.com/mailman/listinfo/talk >> > >> > >> > >> > -- >> > Adam Retter >> > >> > skype: adam.retter >> > tweet: adamretter >> > http://www.adamretter.org.uk >> > _______________________________________________ >> > talk at x-query.com >> > http://x-query.com/mailman/listinfo/talk >> > > > > -- > > W.S. Hager > Lagua Web Solutions > http://lagua.nl > -- W.S. Hager Lagua Web Solutions http://lagua.nl -------------- next part -------------- An HTML attachment was scrubbed... URL: From christian.gruen at gmail.com Sun Jun 28 11:35:03 2015 From: christian.gruen at gmail.com (=?UTF-8?Q?Christian_Gr=C3=BCn?=) Date: Sun, 28 Jun 2015 20:35:03 +0200 Subject: [xquery-talk] xquery 3.1 wishlist In-Reply-To: References: Message-ID: > One more consideration: function calls seem to be more expensive than inline > expressions. And then there's that baggage of a custom library... Doesn't that depend on the implementation? Functions may e.g. be inlined and further compiled, and the evaluated expression may differ a lot from the original expression. > > 2015-06-28 14:35 GMT+02:00 W.S. Hager : >> >> Hmm, I'm not so sure. The if/else clause is pretty short as it is, and >> semantically more clear. But it's another discussion altogether. >> >> For me the paint points remain in array support/semantics. I thought it >> best to let it rest for a while and see if the workarounds proof to be >> feasible. I think I was too eager to address this in the first place. >> >> Regards, >> Wouter >> >> 2015-06-28 0:07 GMT+02:00 Christian Gr?n : >>> >>> > Personally I would also like to see a ternary operator, but I haven't >>> > mentioned it until now ;-) >>> >>> +1 ;) But if I remember right, it has already been motivated and >>> discussed in the group before. >>> >>> Talking about conditions: An if expression without 'else' branch would >>> often be nice as well (if not present, an empty sequence could be >>> returned). >>> >>> >>> > On 26 June 2015 at 12:18, W.S. Hager wrote: >>> >> Hello, >>> >> >>> >> I've been working with the recent xquery 3.1 implementation in the >>> >> develop >>> >> branch eXist-db. I encountered some cases that were quite hard to work >>> >> around: >>> >> >>> >> - the lack of array:index-of() >>> >> - the lack of the iterator index in arrayfor-each and related >>> >> higher-order >>> >> functions >>> >> >>> >> Perhaps someone of the workgroup is available to discuss those cases. >>> >> >>> >> Thanks, >>> >> Wouter >>> >> -- >>> >> >>> >> W.S. Hager >>> >> Lagua Web Solutions >>> >> http://lagua.nl >>> >> >>> >> >>> >> >>> >> -- >>> >> >>> >> W.S. Hager >>> >> Lagua Web Solutions >>> >> http://lagua.nl >>> >> >>> >> >>> >> >>> >> _______________________________________________ >>> >> talk at x-query.com >>> >> http://x-query.com/mailman/listinfo/talk >>> > >>> > >>> > >>> > -- >>> > Adam Retter >>> > >>> > skype: adam.retter >>> > tweet: adamretter >>> > http://www.adamretter.org.uk >>> > _______________________________________________ >>> > talk at x-query.com >>> > http://x-query.com/mailman/listinfo/talk >> >> >> >> >> -- >> >> W.S. Hager >> Lagua Web Solutions >> http://lagua.nl > > > > > -- > > W.S. Hager > Lagua Web Solutions > http://lagua.nl From adam.retter at googlemail.com Sun Jun 28 11:57:38 2015 From: adam.retter at googlemail.com (Adam Retter) Date: Sun, 28 Jun 2015 19:57:38 +0100 Subject: [xquery-talk] xquery 3.1 wishlist In-Reply-To: References: Message-ID: On 28 June 2015 at 19:35, Christian Gr?n wrote: >> One more consideration: function calls seem to be more expensive than inline >> expressions. And then there's that baggage of a custom library... > > Doesn't that depend on the implementation? Functions may e.g. be > inlined and further compiled, and the evaluated expression may differ > a lot from the original expression. > Agreed. That is entirely down to the specific implementation. Different implementations offer different optimisations (or not). For example loop-unrolling, TCO, DCE, etc, etc. Function Inlining is just another optimisation that an implementation could offer where appropriate. > > >> >> 2015-06-28 14:35 GMT+02:00 W.S. Hager : >>> >>> Hmm, I'm not so sure. The if/else clause is pretty short as it is, and >>> semantically more clear. But it's another discussion altogether. >>> >>> For me the paint points remain in array support/semantics. I thought it >>> best to let it rest for a while and see if the workarounds proof to be >>> feasible. I think I was too eager to address this in the first place. >>> >>> Regards, >>> Wouter >>> >>> 2015-06-28 0:07 GMT+02:00 Christian Gr?n : >>>> >>>> > Personally I would also like to see a ternary operator, but I haven't >>>> > mentioned it until now ;-) >>>> >>>> +1 ;) But if I remember right, it has already been motivated and >>>> discussed in the group before. >>>> >>>> Talking about conditions: An if expression without 'else' branch would >>>> often be nice as well (if not present, an empty sequence could be >>>> returned). >>>> >>>> >>>> > On 26 June 2015 at 12:18, W.S. Hager wrote: >>>> >> Hello, >>>> >> >>>> >> I've been working with the recent xquery 3.1 implementation in the >>>> >> develop >>>> >> branch eXist-db. I encountered some cases that were quite hard to work >>>> >> around: >>>> >> >>>> >> - the lack of array:index-of() >>>> >> - the lack of the iterator index in arrayfor-each and related >>>> >> higher-order >>>> >> functions >>>> >> >>>> >> Perhaps someone of the workgroup is available to discuss those cases. >>>> >> >>>> >> Thanks, >>>> >> Wouter >>>> >> -- >>>> >> >>>> >> W.S. Hager >>>> >> Lagua Web Solutions >>>> >> http://lagua.nl >>>> >> >>>> >> >>>> >> >>>> >> -- >>>> >> >>>> >> W.S. Hager >>>> >> Lagua Web Solutions >>>> >> http://lagua.nl >>>> >> >>>> >> >>>> >> >>>> >> _______________________________________________ >>>> >> talk at x-query.com >>>> >> http://x-query.com/mailman/listinfo/talk >>>> > >>>> > >>>> > >>>> > -- >>>> > Adam Retter >>>> > >>>> > skype: adam.retter >>>> > tweet: adamretter >>>> > http://www.adamretter.org.uk >>>> > _______________________________________________ >>>> > talk at x-query.com >>>> > http://x-query.com/mailman/listinfo/talk >>> >>> >>> >>> >>> -- >>> >>> W.S. Hager >>> Lagua Web Solutions >>> http://lagua.nl >> >> >> >> >> -- >> >> W.S. Hager >> Lagua Web Solutions >> http://lagua.nl -- Adam Retter skype: adam.retter tweet: adamretter http://www.adamretter.org.uk From mike at saxonica.com Sun Jun 28 12:01:05 2015 From: mike at saxonica.com (Michael Kay) Date: Sun, 28 Jun 2015 20:01:05 +0100 Subject: [xquery-talk] xquery 3.1 wishlist In-Reply-To: References: Message-ID: > On 28 Jun 2015, at 19:32, W.S. Hager wrote: > > One more consideration: function calls seem to be more expensive than inline expressions. Saxon and I?m sure other products will inline function calls when they consider it appropriate. Because XQuery is side-effect-free and has no polymorphism, this is a pretty straightforward optimization. > And then there's that baggage of a custom library... > I?m not sure what you?re referring to here. Michael Kay Saxonica From wshager at gmail.com Sun Jun 28 12:05:10 2015 From: wshager at gmail.com (W.S. Hager) Date: Sun, 28 Jun 2015 21:05:10 +0200 Subject: [xquery-talk] xquery 3.1 wishlist In-Reply-To: References: Message-ID: Sorry, I didn't mention I was thinking about the case where I would create a library module instead of using inline functions. 2015-06-28 21:01 GMT+02:00 Michael Kay : > > > On 28 Jun 2015, at 19:32, W.S. Hager wrote: > > > > One more consideration: function calls seem to be more expensive than > inline expressions. > > Saxon and I?m sure other products will inline function calls when they > consider it appropriate. Because XQuery is side-effect-free and has no > polymorphism, this is a pretty straightforward optimization. > > > > And then there's that baggage of a custom library... > > > > I?m not sure what you?re referring to here. > > Michael Kay > Saxonica -- W.S. Hager Lagua Web Solutions http://lagua.nl -------------- next part -------------- An HTML attachment was scrubbed... URL: From adam.retter at googlemail.com Sun Jun 28 12:07:43 2015 From: adam.retter at googlemail.com (Adam Retter) Date: Sun, 28 Jun 2015 20:07:43 +0100 Subject: [xquery-talk] xquery 3.1 wishlist In-Reply-To: References: Message-ID: Your library module is still just functions, so they can also be optimised and inlined. If they are written in XQuery then the XQuery processor needs to support/offer that optimisation, if they are written in Java (or other) as processor extensions then it is likely that the Java compiler/JIT (or other) will perform that optimisation. On 28 June 2015 at 20:05, W.S. Hager wrote: > Sorry, I didn't mention I was thinking about the case where I would create a > library module instead of using inline functions. > > 2015-06-28 21:01 GMT+02:00 Michael Kay : >> >> >> > On 28 Jun 2015, at 19:32, W.S. Hager wrote: >> > >> > One more consideration: function calls seem to be more expensive than >> > inline expressions. >> >> Saxon and I?m sure other products will inline function calls when they >> consider it appropriate. Because XQuery is side-effect-free and has no >> polymorphism, this is a pretty straightforward optimization. >> >> >> > And then there's that baggage of a custom library... >> > >> >> I?m not sure what you?re referring to here. >> >> Michael Kay >> Saxonica > > > > > -- > > W.S. Hager > Lagua Web Solutions > http://lagua.nl -- Adam Retter skype: adam.retter tweet: adamretter http://www.adamretter.org.uk