HOME JAVA & JEE OPEN SOURCE .NET WEB & RIA CLOUD & GRID ARCHITECTURE & DDD AGILE PM & SCRUM AGILE TESTING & BDD OS, MOBILE & SERVER  
London .NET User Group:Push LINQ: Watching Data Fly By
Push LINQ: Watching Data Fly By
In this session Jon Skeet, author of Manning's C# In Depth, explains the "Push LINQ" framework he developed with Marc Gravell.

The "standard" LINQ to Objects is based on IEnumerable, involving the consumer "pulling" data from a supplier. This works very well in many cases, but has some unfortunate consequences when many consumers are interested in the same data, or when a producer wishes to push data selectively from a single source to different consumers.

Push LINQ is based on observers subscribing to events to see data as it's produced. This enables multiple aggregates to be computed with a single pass through the data, as well as allowing data to be fully streamed in cases which might otherwise require buffering.

Review:
Jon Skeet reveals the Push LINQ framework that he and Marc Gravell have developed to provide a solution for a familiar issue of traversing data stored in a linked list whilst having an efficient implementation for pulling such data without the need for more than one traversal. Jon begins with the explanation of how his framework operates, via user interaction; he provides a solid foundation of understanding for viewers to translate his ideas into the C# code behind the ideas. He outlines the advantages and limitations of his framework, such as allowing multiple aggregates to be computed with single traversals through potentially large amount of streaming data and inability to direct such data to multiple consumers. Although currently Jon and Marc’s framework may appear to have few real world applications, it is certainly very promising - especially if the ability to use multiple consumers is implemented.
Review by Jim Li


ABOUT JON SKEET
Jon Skeet is a C# and Java developer currently working at Google in the UK. For many years he has been a frequent poster in technical newsgroups, and has been awarded as a C# MVP by Microsoft since 2003...
More about Jon Skeet
PODCAST PUSH LINQ: WATCHING DATA FLY BY
Digg! StumbleUpon
OPEN SOURCE .NET PODCASTS
Neil Robbins:CQRS Pattern, Event Sourcing and Their Real World Applications, CQRS Pattern, Event Sourcing and Their R
Neil Robbins : 4th Mar 2010
View Podcast: CQRS Pattern, Event Sourcing and Their Real World Applications,
Oren Eini aka Ayende Rahien:Lessons learned from building the NHibernate Profiler, Lessons from building the NHibernate Pro
Oren Eini aka Ayende Rahien : 24th Feb 2010
View Podcast: Lessons learned from building the NHibernate Profiler,
Udi Dahan:Command Query Responsibility Segregation, Command Query Responsibility Segregation
Udi Dahan : 15th Feb 2010
View Podcast: Command Query Responsibility Segregation,
Colin Howe:Re-writing Java classes in Scala - and making your code lovely, Re-writing Java classes in Scala - and m
Colin Howe : 8th Feb 2010
View Podcast: Re-writing Java classes in Scala - and making your code lovely,
Emma McGrattan:Waking up to the New Economics of IT, Waking up to the New Economics of IT
Emma McGrattan : 15th Dec 2009
View Podcast: Waking up to the New Economics of IT,
Ian Cooper:A real world guide to architecting MVC Applications, A real world guide to architecting MVC A
Ian Cooper : 14th Dec 2009
View Podcast: A real world guide to architecting MVC Applications,
Sadek Drobi:Computation Abstraction, Computation Abstraction
Sadek Drobi : 7th Dec 2009
View Podcast: Computation Abstraction,
Ganesh Sittampalam:Functional Programming for Quantitative Modelling at Credit Suisse, Functional Programming for Quantita...
Ganesh Sittampalam : 7th Dec 2009
View Podcast: Functional Programming for Quantitative Modelling at Credit Suisse,
Anton Schwaighofer:F# and Units-of-measure for Technical Computing, F# and Units-of-measure for Technical Co
Anton Schwaighofer : 7th Dec 2009
View Podcast: F# and Units-of-measure for Technical Computing,
 :Parkbench Panel Discussion, Parkbench Panel Discussion
: 7th Dec 2009
View Podcast: Parkbench Panel Discussion,
Robert Pickering:Using combinators to tackle the HTML rendering problem, Using combinators to tackle the HTML ren
Robert Pickering : 7th Dec 2009
View Podcast: Using combinators to tackle the HTML rendering problem,
Toby  Henderson:An Introduction to Mono , Mono
Toby Henderson : 3rd Dec 2009
View Podcast: An Introduction to Mono ,
Dylan Beattie :HTML 5 and ASP.NET, HTML 5 and ASP.NET
Dylan Beattie : 2nd Nov 2009
View Podcast: HTML 5 and ASP.NET,
Mike Hadlow:Enterprise Integration with MassTransit, Enterprise Integration with MassTransit
Mike Hadlow : 1st Oct 2009
View Podcast: Enterprise Integration with MassTransit,
Jan Machacek:Web Applications, Web Applications
Jan Machacek : 21st Sep 2009
View Podcast: Web Applications,
OTHER OPEN SOURCE .NET EVENTS
London .NET User Group:Mixing Functional and Object Oriented Approaches to Programming in C# , London .NET User Group
FREE EVENT: Functional and OO Approaches t
London, Wednesday, March 31st
Oren Eini aka Ayende Rahien:Ayende Rahien's Core NHibernate: Persistence with NHibernate,  Persistence with NHibernate
3 DAY COURSE. Featuring Oren Eini aka Ayende Rahien
London, Monday, April 26th
Oren Eini aka Ayende Rahien Introduction into Raven DB,  Introduction into Raven DB
FREE EVENT: In The Brain of Oren Eini aka Ayende Rahien
London, Wednesday, April 28th
London F-Sharp User Group:F-Sharp Numerical Optimization and Instant Messaging, London F-Sharp User Group
FREE EVENT: F-Sharp Numerical Optimization
London, Thursday, April 29th
Robert Pickering:Robert Pickering's Beginning F# Workshop,  Robert Pickering's Beginning F# Workshop
2 DAY COURSE. Featuring Robert Pickering
London, Monday, May 10th
Progressive .NET Tutorials, Progressive .NET Tutorials
CONFERENCE (3 DAYS)
London, Wednesday, May 12th BOOK NOW!
Oren Eini aka Ayende Rahien:Ayende Rahien's Core NHibernate: Persistence with NHibernate,  Persistence with NHibernate
3 DAY COURSE. Featuring Oren Eini aka Ayende Rahien
London, Monday, May 17th
:Agile Web Development with the Castle Framework,  Agile Castle Web Development
2 DAY COURSE.
Paris, Tuesday, May 18th
© Copyright 2003-2010, Skills Matter Ltd
  Web development by You In Control
About Us  Jobs  Find Us  Meeting & Training Rooms  Newsletter  Community  Community-FR  Apress  1st Teach  Jobs: Sales Executive  Jobs: Student Podcaster  jobs - marketing assistant  Spring Certification