Talk:Language Integrated Query

message: I'm open to other opinions but to me (as a developer of many years), the introduction seems overly complex - It makes sense to me but wouldn't mean anything to most non-developers I know. I'm aware it's a complex topic and specifically a programming one but something along the lines of "It allows developers to integrate database [data store?] queries into their code far more easily with strong typing whilst removing the risk of SQL injection attacks" or similar would be more comprehensible. I'm not a frequent editor so go easy on me... Basiclife (talk) 02:35, 18 December 2010 (UTC)
replies: text: Feel free to change the introduction. But make sure that some of the stuff mentioned remains in the article (event handlers, parsers...). I've introduced these as some kind of arguments for why the article was bad and bordering on incorrectness by being too specific to collections and queries. (Btw., new discussions should be started at the bottom of a talk page. Yeah, I know this is strange, and I've violated it quite some time, but that's how it seems to be customary.) --Daniel5Ko (talk) 23:00, 6 January 2011 (UTC)

text: Thank you for your suggestion. When you believe an article needs improvement, please feel free to make those changes.  Wikipedia is a wiki, so anyone can edit almost any article by simply following the  link at the top.</br> The Wikipedia community encourages you to be bold in updating pages. Don't worry too much about making honest mistakes—they're likely to be found and corrected quickly. If you're not sure how editing works, check out how to edit a page, or use the sandbox to try out your editing skills.  New contributors are always welcome. You don't even need to log in (although there are many reasons why you might want to). Diego (talk) 10:22, 17 July 2011 (UTC)
thread_title: Introduction

message: Having used LINQ in a project for the past 2 weeks, I am amazed at the power it gives developers. Instead of having to mix my code with SQL, I can treat the database tables as if they were classes. The current release of LINQ still lacks intellisense but it had enough added value to move my project into it. Performance is also impressive.
--Ohadgliksman 13:13, 24 April 2006 (UTC)
thread_title: linq

message: You guys might want to add some historical detail in; from  pg 6 of "The History of Haskell":
:But many of the features in C# were pioneered by Haskell and other functional languages, notably polymorphic types and LINQ (Language Integrated Query). Erik Meijer, a principal designer of LINQ, says that LINQ is directly inspired by the monad comprehension in Haskell.
--maru   (talk)  contribs 02:25, 15 July 2006 (UTC)
replies: text: Those features werent there in imperative languages, and c# is not a functional language (like haskell, lisp) but an imperative one (like c, c++, java) --soumসৌমোyasch 06:15, 15 July 2006 (UTC)
replies: text:  http://blogs.msdn.com/charlie/archive/2007/01/26/anders-hejlsberg-on-linq-and-functional-programming.aspx Dpser 09:38, 26 June 2007 (UTC)
replies: text:  Didnt I already say that this is bringing functional programming constructs to imperative languages? --soum talk 09:41, 26 June 2007 (UTC)
replies: text:  No, and what if you did? I just posted the link in case you find it useful for addition... Dpser 08:13, 28 June 2007 (UTC)
replies: text: Oh ok, I thought you added the link with respect to the debate we had been having a year back. Thats why if you are saying something that is unrelated to a previous conversation, its best to start a new section and set some context. --soum talk 08:27, 28 June 2007 (UTC)
thread_title:  Haskell influence 

message: Language Integrated Query (LINQ) is a Microsoft project that adds a native querying syntax reminiscent of SQL to .NET Framework programming languages, initially to the C# and Visual Basic .NET languages. Many of the concepts that LINQ has introduced were originally trialled in Microsoft's Cω research project.
:I dont think this is entirely correct. LINQ is implemented basically by using a few generic methods - Select<T>, Where<T> etc etc + IQueryable<T> and implementations of this is what is the crux of LINQ. As such it is available to all .NET languages, not just C# ad VB.NET even in the initial release. Though the query syntax (which is just syntactic sugar for these functions) is currently limited to C# and VB.NET (+ implicitly typed variables) - but they are not the major components of LINQ (though, the most visible).
:As such, I would suggest a rewrite. Just dunno how best to phrase it. --soum (0_o) 06:02, 10 April 2007 (UTC)
replies: text: I disagree. The clue is in the name: 'language integrated' means it's integrated into the language. Without the language integration what you'd be left with is a framework for performing queries, and a number of providers for specific data sources. i.e, 'LINQ' minus 'LIN'. Forgotten account 14:04, 22 April 2007 (UTC)
replies: text: What are you disagreeing with? That it will work without the language extensions? I never said that the language extensions were not part of LINQ. I just said the project is not limited to having them in the language - querying will work even without the querying syntax, only will not look as elegant - and that should be made clear. And that means making clear that the queries are actually converted by the compiler into equivalent method calls. --soum (0_o) 14:46, 22 April 2007 (UTC)
replies: text: Read my comment again - I disagree that 'LINQ' is available to all languages regardless of whether they have language extensions. The underlying libraries are plain .NET - that is not in question. However the language extensions are a key part of LINQ: three quarters of the acronym 'LINQ' is dedicated to fact that language extensions integrate the facility into the language! :-) Forgotten account 12:50, 30 April 2007 (UTC)
replies: text:  :) Even I am not saying that. I am saying that not having the syntactic extensions will not prevent any language from using the libraries to guery data stores, though the end result might not look as declarative. Its the emphasized part that should be clarified - whether someone calls it LINQ or not is not my botheration. --soum (0_o) 13:01, 30 April 2007 (UTC)
thread_title:  Lead 

message: There is a link to SQL Join article from "group join" link in the LINQ article. But "group join" is not mentioned anywhere in the SQL Join article. I have been using SQL for many years and have not heard the term "group join" before. Can someone either add "group join" to the SQL Join article, or elaborate on it in this article? Lmcphee69 (talk) 14:08, 24 June 2008 (UTC)
thread_title:  What's a "group join" 

message: LINQ to Objects is dynamic! Consider the following example:
int [] nums = { 1, 2, 3, 4, 5};
var selection = from i in nums where i > 4 select i;
foreach (var num in selection)
{
  Console.WriteLine("{0}",num);
}
Console.WriteLine("==");
nums[0]=10;
foreach (var num in selection)
{
  Console.WriteLine("{0}",num);
}
Output is:
5
==
10
5
Conclusion: LINQ to Objects is dynamic!
:This behavior is well-documented in MSDN, and is called "deferred execution". If you open documentation for almost any extension method in class System.Linq.Enumerable, in the "Remarks" section, the very first paragraph usually is:
:This method is implemented by using deferred execution. The immediate return value is an object that stores all the information that is required to perform the action. The query represented by this method is not executed until the object is enumerated either by calling its GetEnumerator method directly or by using foreach in Visual C# or For Each in Visual Basic.
:-- int19h (talk) 05:45, 18 July 2008 (UTC)
thread_title:  LINQ to Objects is dynamic 

message: I miss to read pro and cons of linq, currently im searching for information related with linq and as far im found linq produce a performance hit also can break/incompatible with previous oo models.
--190.47.241.187 (talk) 18:13, 12 August 2008 (UTC)
replies: text: If you want to boost performance of your LINQ to Object queries, you may use i4o which can index your in-memory collections: http://www.codeplex.com/i4o --Ondrejsv (talk) 14:16, 5 December 2008 (UTC)
thread_title: Pros and cons of Linq 

message: I'm considering adding a LINQ-TO-XML syntax example similar to the one already in-place for the LINQ-TO-SQL. If I added a syntax example which extracted elements from a well known XML document type like  RSS 2.0 or  Atom 1.0, would this be acceptable? --Omgcapitalism (talk) 18:10, 27 April 2010 (UTC)
replies: text: Why should it not be acceptable? I'd say, go ahead and add it. Also, as a general rule, don't try to establish consensus beforehand. Be bold. --Daniel5Ko (talk) 17:48, 28 April 2010 (UTC)
thread_title:  LINQ-TO-XML Syntax Examples 

message: There is some dispute about the pronunciation of 'LINQ'. I just reverted an edit by an anonmyous author which changed the pronunciation from 'link' to 'lin q'. Most of the comments on [] indicate that 'link' is the most common pronunciation, including the one used in Microsoft. Julianhyde (talk)  —Preceding undated comment added 22:07, 17 March 2011 (UTC)
replies: text: Well, I'd say, just listen to Erik Meijer et al. at Channel 9. There's no doubt that the pronounciation is 'link'. And if MS is not the definite source, who else should be? --Daniel5Ko (talk) 00:07, 18 March 2011 (UTC)
thread_title:  Pronunciation 

message: I think a basic description on how LINQ works should not miss which role laziness plays there.  — Preceding unsigned comment added by Wikitester2501 (talk • contribs) 10:15, 21 October 2012 (UTC)
thread_title:  Laziness 

message: This discussion indicated a preference for a very selective merge from Cω to this article. I'd like to get this completed, but this is not my field. If someone could indicate what should be moved over, and (most especially) where it should be placed, I'd be grateful. Pinging , but I'd be happy to hear from anyone with more knowledge than I have (i.e. "just about anyone"). Joyous! | Talk 16:32, 26 February 2023 (UTC)
thread_title:  [[Wikipedia:Articles for deletion/Cω]] merge