Message from discussion
Meteor,what you think
Received: by 10.213.105.210 with SMTP id u18mr274474ebo.19.1334238925854;
Thu, 12 Apr 2012 06:55:25 -0700 (PDT)
X-BeenThere: nodejs@googlegroups.com
Received: by 10.213.13.216 with SMTP id d24ls405497eba.9.gmail; Thu, 12 Apr
2012 06:55:04 -0700 (PDT)
Received: by 10.204.143.143 with SMTP id v15mr280253bku.8.1334238904613;
Thu, 12 Apr 2012 06:55:04 -0700 (PDT)
Received: by 10.204.143.143 with SMTP id v15mr280252bku.8.1334238904577;
Thu, 12 Apr 2012 06:55:04 -0700 (PDT)
Return-Path: <carho...@gmail.com>
Received: from mail-bk0-f54.google.com (mail-bk0-f54.google.com [209.85.214.54])
by gmr-mx.google.com with ESMTPS id z15si7165234bkz.0.2012.04.12.06.55.04
(version=TLSv1/SSLv3 cipher=OTHER);
Thu, 12 Apr 2012 06:55:04 -0700 (PDT)
Received-SPF: pass (google.com: domain of carho...@gmail.com designates 209.85.214.54 as permitted sender) client-ip=209.85.214.54;
Authentication-Results: gmr-mx.google.com; spf=pass (google.com: domain of carho...@gmail.com designates 209.85.214.54 as permitted sender) smtp.mail=carho...@gmail.com; dkim=pass header...@gmail.com
Received: by bkcjc3 with SMTP id jc3so2093869bkc.13
for <nodejs@googlegroups.com>; Thu, 12 Apr 2012 06:55:04 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
d=gmail.com; s=20120113;
h=mime-version:in-reply-to:references:from:date:message-id:subject:to
:content-type;
bh=cZ9VQPKMLYw4bclIpm1owW+O/XfJ77/w8xFSWi8wArI=;
b=J5Bk7CQX6fYbD0owWCsaGl1dwB8kKhg8lJFd2vbrSGUjmw2mCQQ0DYsMYF9EiKuYv6
1ZvvLRaGCG0BIoBP5SHpEVPXgnXsJyi0O56XtzMqzK7K/+YPGV0JPUN/7cPOAW9sYE5u
yduICtpnPPQWjvUbbS897Olvl2qiNgMZkMGFtHHuNEaY4SbTLwxuU5dg1DQdf1uvKppt
8YSe7D2g6qqtl8S6+P6B/JPrt1pCT1pPZomeXqjeQ3ThlR4VknSGYd80A9Xq/wb00mga
MQ5/IHuONSZzqauPRHuPTjwkXkmXRy1EiTeP0XzkDOzFl3oXAUons+M3lfepZy59iDf/
1aFA==
Received: by 10.204.141.8 with SMTP id k8mr776143bku.24.1334238904391; Thu, 12
Apr 2012 06:55:04 -0700 (PDT)
MIME-Version: 1.0
Received: by 10.204.181.1 with HTTP; Thu, 12 Apr 2012 06:54:43 -0700 (PDT)
In-Reply-To: <CAPm8pjrK5fnAWhuoJ1Z29Rz58BaG-7s0iysDqW7a+t7Fr8P...@mail.gmail.com>
References: <4ec9b74a-4a70-46bc-9c65-e342284d3...@f37g2000yqc.googlegroups.com>
<39e1dc0b-0db9-4cff-a17f-b4b7f8955...@do4g2000vbb.googlegroups.com>
<CAKuqv0k276R3ngTcCV1qcd-HvRJbwzvPbRKNGiasD-kBX9D...@mail.gmail.com> <CAPm8pjrK5fnAWhuoJ1Z29Rz58BaG-7s0iysDqW7a+t7Fr8P...@mail.gmail.com>
From: Chris Rhoden <carho...@gmail.com>
Date: Thu, 12 Apr 2012 09:54:43 -0400
Message-ID: <CAH28bb0XUinmAMvStrRpoxvJyM+w_M=PAatmJg9obQE_Hi_...@mail.gmail.com>
Subject: Re: [nodejs] Re: Meteor,what you think
To: nodejs@googlegroups.com
Content-Type: multipart/alternative; boundary=0015175cd5fef1181804bd7bb330
--0015175cd5fef1181804bd7bb330
Content-Type: text/plain; charset=ISO-8859-1
On Thu, Apr 12, 2012 at 8:27 AM, Dean Landolt <d...@deanlandolt.com> wrote:
>
>
> On Thu, Apr 12, 2012 at 4:20 AM, Nuno Job <nunojobpi...@gmail.com> wrote:
>
>> It'll be interesting to see the pressure build to get
>>> fibers/coroutines in core if this gains in
>>> popularity (likely if you look at the HN score).
>>
>>
>> Knowing some of the core team I don't really think this will happen. In
>> the unlikely event of a water landing, it wouldn't be because of pressure
>> of some framework or HN. :)
>>
>
> I think it's safe to say it won't ever, regardless of pressure. Especially
> since es6 has an equivalently expressive feature -- generators (shallow
> continuations) w/o the well-documented problem of fibers (deep
> continuations). (And no, this is not to flame fibers. I think they're
> really interesting and useful as a stop gap for people that like that style
> until they have generators.)
>
> I do wonder though -- does anyone know if they're faking fibers on the
> client side? The demo shows sync interaction with the db -- are they using
> sync xhr? Or is it some crazy fancy rewriting, or some other exotic
> technique? They just did some hand-waving about latency compensation and I
> couldn't find anything in the docs.
>
It's very very unlikely that they'd be able to do that. It looks like they
have a MongoDB query parser in the package, so the most likely thing seems
to me to be that the query is executed against whatever data already exists
on the client (in cache) and then the object returned is backfilled with
additional data when it comes back from the server. Because of the
"everything realtime" principle, it seems like it would be conceptually
simple to just update the dataset when the query finished executing and
treat it the same on the application side as new records.
I haven't gotten deep enough into the code to see how it works, but that's
my gut.
> --
> Job Board: http://jobs.nodejs.org/
> Posting guidelines:
> https://github.com/joyent/node/wiki/Mailing-List-Posting-Guidelines
> You received this message because you are subscribed to the Google
> Groups "nodejs" group.
> To post to this group, send email to nodejs@googlegroups.com
> To unsubscribe from this group, send email to
> nodejs+unsubscribe@googlegroups.com
> For more options, visit this group at
> http://groups.google.com/group/nodejs?hl=en?hl=en
>
--
chrisrhoden
--0015175cd5fef1181804bd7bb330
Content-Type: text/html; charset=ISO-8859-1
Content-Transfer-Encoding: quoted-printable
<br><br><div class=3D"gmail_quote">On Thu, Apr 12, 2012 at 8:27 AM, Dean La=
ndolt <span dir=3D"ltr"><<a href=3D"mailto:d...@deanlandolt.com">dean@de=
anlandolt.com</a>></span> wrote:<br><blockquote class=3D"gmail_quote" st=
yle=3D"margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<br><br><div class=3D"gmail_quote"><div class=3D"im">On Thu, Apr 12, 2012 a=
t 4:20 AM, Nuno Job <span dir=3D"ltr"><<a href=3D"mailto:nunojobpinto@gm=
ail.com" target=3D"_blank">nunojobpi...@gmail.com</a>></span> wrote:<br>=
<blockquote class=3D"gmail_quote" style=3D"margin:0 0 0 .8ex;border-left:1p=
x #ccc solid;padding-left:1ex">
<div><blockquote class=3D"gmail_quote" style=3D"margin-top:0px;margin-right=
:0px;margin-bottom:0px;margin-left:0.8ex;border-left-width:1px;border-left-=
color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">
<span>=A0It'll be interesting to see the=A0</span><span>pressure build =
to get fibers/coroutines in core if this gains in<br>
</span><span>popularity (likely if you look at the HN score).</span></block=
quote><div><br></div></div><div>Knowing some of the core team I don't r=
eally think this will happen. In the unlikely event of a water landing, it =
wouldn't be because of pressure of some framework or HN. :)</div>
</blockquote><div><br></div></div><div>I think it's safe to say it won&=
#39;t ever, regardless of pressure. Especially since es6 has an equivalentl=
y expressive feature -- generators (shallow continuations) w/o the well-doc=
umented problem of fibers (deep continuations). (And no, this is not to fla=
me fibers. I think they're really interesting and useful as a stop gap =
for people that like that style until they have generators.)</div>
<div><br></div><div>I do wonder though -- does anyone know if they're f=
aking fibers on the client side? The demo shows sync interaction with the d=
b -- are they using sync xhr? Or is it some crazy fancy rewriting, or some =
other exotic technique? They just did some=A0hand-waving=A0about latency co=
mpensation and I couldn't find anything in the docs.</div>
</div></blockquote><div><br></div><div>It's very very unlikely that the=
y'd be able to do that. It looks like they have a MongoDB query parser =
in the package, so the most likely thing seems to me to be that the query i=
s executed against whatever data already exists on the client (in cache) an=
d then the object returned is backfilled with additional data when it comes=
back from the server. Because of the "everything realtime" princ=
iple, it seems like it would be conceptually simple to just update the data=
set when the query finished executing and treat it the same on the applicat=
ion side as new records.</div>
<div><br></div><div>I haven't gotten deep enough into the code to see h=
ow it works, but that's my gut.=A0</div><blockquote class=3D"gmail_quot=
e" style=3D"margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">=
<div class=3D"gmail_quote">
</div><div class=3D"HOEnZb"><div class=3D"h5">
<p></p>
-- <br>
Job Board: <a href=3D"http://jobs.nodejs.org/" target=3D"_blank">http://job=
s.nodejs.org/</a><br>
Posting guidelines: <a href=3D"https://github.com/joyent/node/wiki/Mailing-=
List-Posting-Guidelines" target=3D"_blank">https://github.com/joyent/node/w=
iki/Mailing-List-Posting-Guidelines</a><br>
You received this message because you are subscribed to the Google<br>
Groups "nodejs" group.<br>
To post to this group, send email to <a href=3D"mailto:nodejs@googlegroups.=
com" target=3D"_blank">nodejs@googlegroups.com</a><br>
To unsubscribe from this group, send email to<br>
<a href=3D"mailto:nodejs%2Bunsubscribe@googlegroups.com" target=3D"_blank">=
nodejs+unsubscribe@googlegroups.com</a><br>
For more options, visit this group at<br>
<a href=3D"http://groups.google.com/group/nodejs?hl=3Den?hl=3Den" target=3D=
"_blank">http://groups.google.com/group/nodejs?hl=3Den?hl=3Den</a><br>
</div></div></blockquote></div><br><br clear=3D"all"><div><br></div>-- <br>=
chrisrhoden<br>
--0015175cd5fef1181804bd7bb330--