﻿<?xml version="1.0" encoding="utf-8"?><rss version="2.0"><channel><title>Ayende @ Rahien</title><link>http://ayende.com</link><description>Ayende @ Rahien</description><copyright>Copyright (C) Ayende Rahien  2004 - 2021 (c) 2026</copyright><ttl>60</ttl><item><title>Russ Kahler commented on NHibernate HQL AST Parser</title><description>Does adding an AST parser solve the NH -514 issue as well?  Is this not the part that was missing in order to support additional "ON" or join filters as well? 
  
</description><link>http://ayende.com/3888/nhibernate-hql-ast-parser#comment15</link><guid>http://ayende.com/3888/nhibernate-hql-ast-parser#comment15</guid><pubDate>Mon, 09 Mar 2009 15:15:00 GMT</pubDate></item><item><title>Ayende Rahien commented on NHibernate HQL AST Parser</title><description>Frans,
  
The ANTLT dialect used by Hibernate is 2.0
  
2.0 isn't well supported for C#
  
3.0 is drastically different.
  
  
The work that Steve is doing is porting that to .Net
</description><link>http://ayende.com/3888/nhibernate-hql-ast-parser#comment14</link><guid>http://ayende.com/3888/nhibernate-hql-ast-parser#comment14</guid><pubDate>Mon, 02 Mar 2009 16:31:22 GMT</pubDate></item><item><title>Frans Bouma commented on NHibernate HQL AST Parser</title><description>Hibernate has an ANTLR based HQL parser for quite some time, why isn't that work re-used? Or is the HQL that much different?
  
  
It's easier to write a Linq to HQL interpreter of expression trees, than it is to write a Linq to Criteria + query specifics system. I think that's the idea behind this AST approach? (i.o.w.: solve some things like derived-table creation on the fly in the HQL AST, so the linq to HQL interpreter is quite simple. ? 
</description><link>http://ayende.com/3888/nhibernate-hql-ast-parser#comment13</link><guid>http://ayende.com/3888/nhibernate-hql-ast-parser#comment13</guid><pubDate>Mon, 02 Mar 2009 12:02:00 GMT</pubDate></item><item><title>Ayende Rahien commented on NHibernate HQL AST Parser</title><description>Andrey,
  
It was translated directly into the query model.
</description><link>http://ayende.com/3888/nhibernate-hql-ast-parser#comment12</link><guid>http://ayende.com/3888/nhibernate-hql-ast-parser#comment12</guid><pubDate>Tue, 24 Feb 2009 14:48:05 GMT</pubDate></item><item><title>Andrey Shchekin commented on NHibernate HQL AST Parser</title><description>Ok, it seems I have missed the main point -- how the HQL worked all this time without AST? As a person not really familiar with NH, I was sure that it was parsed into some kind of object model (criteria?).
  
</description><link>http://ayende.com/3888/nhibernate-hql-ast-parser#comment11</link><guid>http://ayende.com/3888/nhibernate-hql-ast-parser#comment11</guid><pubDate>Tue, 24 Feb 2009 06:23:19 GMT</pubDate></item><item><title>Ayende Rahien commented on NHibernate HQL AST Parser</title><description>Andrey,
  
The problem is what do you do with the Linq AST? 
  
NH didn't have a good way of translating that to the actual query.
</description><link>http://ayende.com/3888/nhibernate-hql-ast-parser#comment10</link><guid>http://ayende.com/3888/nhibernate-hql-ast-parser#comment10</guid><pubDate>Tue, 24 Feb 2009 02:29:11 GMT</pubDate></item><item><title>Ayende Rahien commented on NHibernate HQL AST Parser</title><description>Bob,
  
The main difficulty is related to the way we do queries.
  
NH has several ways for doing that, but no single cohesive way.
  
That means that a Linq provider for NH needs to work with a query mode, or write our own.
  
That is problematic, because of the number of features that NH has that needs to play way with Linq.
  
We could have bolted that on, but that would have caused issues down the road.
  
NH had a working Linq implementation during the Alpha period, that is not the issue. The issue that what we consider a 1.0 release for Linq support is a high bar to cross, so we weren't wiling to release something that answer only partial need.
  
</description><link>http://ayende.com/3888/nhibernate-hql-ast-parser#comment9</link><guid>http://ayende.com/3888/nhibernate-hql-ast-parser#comment9</guid><pubDate>Tue, 24 Feb 2009 02:28:23 GMT</pubDate></item><item><title>jbland commented on NHibernate HQL AST Parser</title><description>@Andrey,
  
reading between the lines of Steve's post, it seems that this possibility was considered and discarded.
</description><link>http://ayende.com/3888/nhibernate-hql-ast-parser#comment8</link><guid>http://ayende.com/3888/nhibernate-hql-ast-parser#comment8</guid><pubDate>Mon, 23 Feb 2009 23:57:01 GMT</pubDate></item><item><title>Andrey Shchekin commented on NHibernate HQL AST Parser</title><description>Why do you need an HQL AST parser for LINQ which already gives you an AST? As for set-based DML operations -- is it possible to do them with other NH APIs in current version?
</description><link>http://ayende.com/3888/nhibernate-hql-ast-parser#comment7</link><guid>http://ayende.com/3888/nhibernate-hql-ast-parser#comment7</guid><pubDate>Mon, 23 Feb 2009 23:54:32 GMT</pubDate></item><item><title>nefajciar commented on NHibernate HQL AST Parser</title><description>Hi, could you quickly explain in a more detail (w/o linking to previous numerous post) why it is such a problem to make LINQ provider for NHibernate?
  
  
simple question, but maybe a hard answer...
  
  
There are numerous OR/M frameworks that have LINQ working for couple of months now already (although some of them only partial), actually I am having a hard time finding one which is more "backwards" with LINQ progress that NHibernate is (with exception of Subsonic 3.0, which is complete rewrite so that is ok).
</description><link>http://ayende.com/3888/nhibernate-hql-ast-parser#comment6</link><guid>http://ayende.com/3888/nhibernate-hql-ast-parser#comment6</guid><pubDate>Mon, 23 Feb 2009 23:23:59 GMT</pubDate></item><item><title>Bunter commented on NHibernate HQL AST Parser</title><description>Giving dialects access to AST would make dialect writing a hell of a lot more flexible. I hope this is considered.
</description><link>http://ayende.com/3888/nhibernate-hql-ast-parser#comment5</link><guid>http://ayende.com/3888/nhibernate-hql-ast-parser#comment5</guid><pubDate>Mon, 23 Feb 2009 06:19:57 GMT</pubDate></item><item><title>Bob commented on NHibernate HQL AST Parser</title><description>Oh... got bit idea now after reading steve post. NHibernate did _not_ have AST parser. Really excited about linq to NH :)
</description><link>http://ayende.com/3888/nhibernate-hql-ast-parser#comment4</link><guid>http://ayende.com/3888/nhibernate-hql-ast-parser#comment4</guid><pubDate>Mon, 23 Feb 2009 04:57:50 GMT</pubDate></item><item><title>Bob commented on NHibernate HQL AST Parser</title><description>I'm very interested to know what kind of work/refactoring is actually being done on the AST parser. Particularly this part: "The most significant milestone has been reached, and we are currently able to execute ( a very simple ) query and get the results back."
  
Why does HQL need refactoring to be able to execute that query?
</description><link>http://ayende.com/3888/nhibernate-hql-ast-parser#comment3</link><guid>http://ayende.com/3888/nhibernate-hql-ast-parser#comment3</guid><pubDate>Mon, 23 Feb 2009 04:53:15 GMT</pubDate></item><item><title>Ayende Rahien commented on NHibernate HQL AST Parser</title><description>John,
  
  
delete from Rule ar
  
where ar.Enabled = false
  
  
Which will be translated to the correct SQL for the database.
  
In other words, this is HQL DML
</description><link>http://ayende.com/3888/nhibernate-hql-ast-parser#comment2</link><guid>http://ayende.com/3888/nhibernate-hql-ast-parser#comment2</guid><pubDate>Sun, 22 Feb 2009 23:46:42 GMT</pubDate></item><item><title>John commented on NHibernate HQL AST Parser</title><description>Could you explain "Set based DML operations on top of the domain model"?
</description><link>http://ayende.com/3888/nhibernate-hql-ast-parser#comment1</link><guid>http://ayende.com/3888/nhibernate-hql-ast-parser#comment1</guid><pubDate>Sun, 22 Feb 2009 23:36:36 GMT</pubDate></item></channel></rss>