<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Hacker News: belisarius222</title><link>https://news.ycombinator.com/user?id=belisarius222</link><description>Hacker News RSS</description><docs>https://hnrss.org/</docs><generator>hnrss v2.1.1</generator><lastBuildDate>Mon, 04 May 2026 03:33:29 +0000</lastBuildDate><atom:link href="https://hnrss.org/user?id=belisarius222" rel="self" type="application/rss+xml"></atom:link><item><title><![CDATA[New comment by belisarius222 in "Show HN: The Mog Programming Language"]]></title><description><![CDATA[
<p>Huh you're right. I had worked with interpreted WASM before, which is why I thought that was more common.<p>WASM is a great system, but quite complex -- the spec for Mog is roughly 100x smaller.</p>
]]></description><pubDate>Mon, 09 Mar 2026 21:13:11 +0000</pubDate><link>https://news.ycombinator.com/item?id=47315598</link><dc:creator>belisarius222</dc:creator><comments>https://news.ycombinator.com/item?id=47315598</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47315598</guid></item><item><title><![CDATA[New comment by belisarius222 in "Show HN: The Mog Programming Language"]]></title><description><![CDATA[
<p>The host is written in Rust, with `extern "C"`, which makes it able to be loaded as a C library by programs written in other languages. Most languages have support for this.<p>It's also designed to be run in an event loop. I've tested this with Bun's event loop that runs TypeScript. I haven't tried it with other async runtimes, but it should be doable.<p>As for the browser, I haven't tried it, but you might be able to compile it to WASM -- the async stuff would be the hardest part of that, I suspect. Could be cool!</p>
]]></description><pubDate>Mon, 09 Mar 2026 20:10:34 +0000</pubDate><link>https://news.ycombinator.com/item?id=47314779</link><dc:creator>belisarius222</dc:creator><comments>https://news.ycombinator.com/item?id=47314779</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47314779</guid></item><item><title><![CDATA[New comment by belisarius222 in "Show HN: The Mog Programming Language"]]></title><description><![CDATA[
<p>I generally agree. TypeScript is a great language, and JS runtimes have certainly had a lot of money and effort poured into them for a long time. I would add WASM to this category, as probably the closest thing to Mog. Write a program in some language, compile it to WASM, and load it into the host process. This is (probably) nice and safe, and relatively performant.<p>Since it's new, Mog will likely not yet beat existing systems at basically anything. Its potential lies in having better performance and a much smaller total system footprint and complexity than the alternatives. WASM is generally interpreted -- you <i>can</i> compile it, but it wasn't really designed for that as far as I know.<p>More generally, I think new execution environments are good opportunities for new languages that directly address the needs of that environment. The example that comes to mind is JavaScript, which turned webpages into dynamically loaded applications. AI agents have such heavy usage and specific problems that a language designed to be both written and executed by them is worth a shot in my opinion.</p>
]]></description><pubDate>Mon, 09 Mar 2026 20:07:30 +0000</pubDate><link>https://news.ycombinator.com/item?id=47314732</link><dc:creator>belisarius222</dc:creator><comments>https://news.ycombinator.com/item?id=47314732</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47314732</guid></item><item><title><![CDATA[New comment by belisarius222 in "Show HN: The Mog Programming Language"]]></title><description><![CDATA[
<p>Mog is AOT-compiled, not JIT'd.<p>JIT means the code is interpreted until some condition kicks in to trigger compilation. This is obviously common and provides a number of advantages, but it has downsides too:
1) Code might run slowly at first.
2) It can be difficult to predict performance -- when will the JIT kick in? How well will it compile the code?<p>With Mog, you do have to pay the up-front cost of compiling the program. However, what I said about "no process startup cost" is true: there is no other OS process. The compiler runs in process, and then the compiled machine code is loaded into the process. Trying to do this safely is an unusual goal as far as I can tell. One of the consequences of this security posture is that the compiler and host become part of the trusted computing base. JITs are not the simplest things in the world, and not the easiest things to keep secure either. The Mog compiler is written entirely in safe Rust for this reason.<p>This up-front compilation cost is paid once, then the compiled code can be reused. If you have a pre-tool-use hook, or some extension to the agent itself, that code runs thousands of times, or more. Ahead-of-time compilation is well-suited for this task.<p>If this is used for writing a script that agent runs once, then JIT compilation might turn out to be faster. But those scripts are often short, and our compiler is quite fast for them as it is in the benchmarking that I've done -- there are benchmarking scripts in the repo, and it would be interesting to extend them to map out this landscape more.<p>Also, in my experience, in this scenario, the vast majority of the total latency of waiting for the agent to do what you asked it is due to waiting for an LLM to finish responding, not compiling or executing the script it generated. So I've prioritized the end-to-end performance of Mog code that runs many times.</p>
]]></description><pubDate>Mon, 09 Mar 2026 19:56:18 +0000</pubDate><link>https://news.ycombinator.com/item?id=47314577</link><dc:creator>belisarius222</dc:creator><comments>https://news.ycombinator.com/item?id=47314577</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47314577</guid></item><item><title><![CDATA[Show HN: The Mog Programming Language]]></title><description><![CDATA[
<p>Hi, Ted here, creator of Mog.<p>- Mog is a statically typed, compiled, embedded language (think statically typed Lua) designed to be written by LLMs -- the full spec fits in 3,200 tokens.
- An AI agent writes a Mog program, compiles it, and dynamically loads it as a plugin, script, or hook.
- The host controls exactly which functions a Mog program can call (capability-based permissions), so permissions propagate from agent to agent-written code.
- Compiled to native code for low-latency plugin execution -- no interpreter overhead, no JIT, no process startup cost.
- The compiler is written in safe Rust so the entire toolchain can be audited for security. Even without a full security audit, Mog is already useful for agents extending themselves with their own code.
- MIT licensed, contributions welcome.<p>Motivations for Mog:<p>1. Syntax Only an AI Could Love: Mog is written for AIs to write, so the spec fits easily in context (~3200 tokens), and it's intended to minimize foot-guns to lower the error rate when generating Mog code. This is why Mog has no operator precedence: non-associative operations have to use parentheses, e.g.  (a + b) * c. It's also why there's no implicit type coercion, which I've found over the decades to be an annoying source of runtime bugs. There's also less support in Mog for generics, and there's absolutely no support for metaprogramming, macros, or syntactic abstraction.<p>When asking people to write code in a language, these restrictions could be onerous. But LLMs don't care, and the less expressivity you trust them with, the better.<p>2. Capabilities-Based Permissionsl: There's a paradox with existing security models for AI agents. If you give an agent like OpenClaw unfettered access to your data, that's insecure and you'll get pwned. But if you sandbox it, it can't do most of what you want. Worse, if you run scripts the agent wrote, those scripts don't inherit the permissions that constrain the agent's own bash tool calls, which leads to pwnage and other chaos. And that's not even assuming you run one of the many OpenClaw plugins with malware.<p>Mog tries to solve this by taking inspiration from embedded languages. It compiles all the way to machine code, ahead of time, but the compiler doesn't output any dangerous code (at least it shouldn't -- Mog is quite new, so that could still be buggy). This allows a host program, such as an AI agent, to generate Mog source code, compile it, and load it into itself using dlopen(), while maintaining security guarantees.<p>The main trick is that a Mog program on its own can't do much. It has no direct access to syscalls, libc, or memory. It can basically call functions, do heap allocations (but only within the arena the host gives it), and return something. If the host wants the Mog program to be able to do I/O, it has to supply the functions that the Mog program will call. A core invariant is that a Mog program should never be able to crash the host program, corrupt its state, or consume more resources than the host allows.<p>This allows the host to inspect the arguments to any potentially dangerous operation that the Mog program attempts, since it's code that runs in the host. For example, a host agent could give a Mog program a function to run a bash command, then enforce its own session-level permissions on that command, even though the command was dynamically generated by a plugin that was written without prior knowledge of those permission settings.<p>(There are a couple other tricks that PL people might find interesting. One is that the host can limit the execution time of the guest program. It does this using cooperative interrupt polling, i.e. the compiler inserts runtime checks that check if the host has asked the guest to stop. This causes a roughly 10% drop in performance on extremely tight loops, which are the worst case. It could almost certainly be optimized.)<p>3.  Self Modification Without Restart: When I try to modify my OpenClaw from my phone, I have to restart the whole agent. Mog fixes this: an agent can compile and run new plugins without interrupting a session, which makes it dynamically responsive to user feedback (e.g., you tell it to always ask you before deleting a file and without any interruption it compiles and loads the code to... actually do that).<p>Async support is built into the language, by adapting LLVM's coroutine lowering to our Rust port of the QBE compiler, which is what Mog uses for compilation. The Mog host library can be slotted into an async event loop (tested with Bun), so Mog async calls get scheduled seamlessly by the agent's event loop.
Another trick is that the Mog program uses a stack inside the memory arena that the host provides for it to run in, rather than the system stack. The system tracks a guard page between the stack and heap. This design prevents stack overflow without runtime overhead.<p>Lots of work still needs to be done to make Mog a "batteries-included" experience like Python. Most of that work involves fleshing out a standard library to include things like JSON, CSV, Sqlite, and HTTP. One high-impact addition would be an `llm` library that allows the guest to make LLM calls through the agent, which should support multiple models and token budgeting, so the host could prevent the plugin from burning too many tokens.<p>I suspect we'll also want to do more work to make the program lifecycle operations more ergonomic. And finally, there should be a more fully featured library for integrating a Mog host into an AI agent like OpenClaw or OpenAI's Codex CLI.</p>
<hr>
<p>Comments URL: <a href="https://news.ycombinator.com/item?id=47312728">https://news.ycombinator.com/item?id=47312728</a></p>
<p>Points: 163</p>
<p># Comments: 83</p>
]]></description><pubDate>Mon, 09 Mar 2026 17:57:00 +0000</pubDate><link>https://moglang.org</link><dc:creator>belisarius222</dc:creator><comments>https://news.ycombinator.com/item?id=47312728</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47312728</guid></item><item><title><![CDATA[Show HN: Mog, a programming language for AI agents]]></title><description><![CDATA[
<p>I wrote a programming language for extending AI agents, called Mog. It's like a statically typed Lua.<p>Most AI agents have trouble enforcing their normal permissions in plugins and hooks, since they're external scripts.<p>Mog's capability system gives the agent full control over I/O, so it can enforce whatever permissions it wants in the Mog code. This is even true if the plugin wants to run bash -- the agent can check each bash command the Mog code emits using the exact same predicate it uses for the LLM's direct bash tool.<p>Mog is a statically typed, compiled, memory-safe language, with native async support, minimal syntax, and its own compiler written in Rust and its own runtime, also written in Rust, with `extern "C"` so the runtime can easily be embedded in agents written in different languages.<p>It's designed to be written by LLMs. Its syntax is familiar, it minimizes foot-guns, and its full spec fits in a 3200-token file.<p>The language is quite new, so no hard security guarantees are claimed at present. Contributions welcome!</p>
<hr>
<p>Comments URL: <a href="https://news.ycombinator.com/item?id=47279263">https://news.ycombinator.com/item?id=47279263</a></p>
<p>Points: 3</p>
<p># Comments: 2</p>
]]></description><pubDate>Fri, 06 Mar 2026 18:46:10 +0000</pubDate><link>https://gist.github.com/belisarius222/203ac5edbc3306c34bf0481f451d4003</link><dc:creator>belisarius222</dc:creator><comments>https://news.ycombinator.com/item?id=47279263</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47279263</guid></item><item><title><![CDATA[New comment by belisarius222 in "LCM: Lossless Context Management [pdf]"]]></title><description><![CDATA[
<p>Did somebody say 'global namespace'? I spent years working on one of those as part of Urbit... In general, I think you're right. Each conversation is an append-only log at the lowest layer, and I see no reason not to expose that fact as a global namespace, as long as permissions are handled gracefully.<p>Of course getting permissions to work well might be easier said than done, but I like this direction.</p>
]]></description><pubDate>Tue, 17 Feb 2026 00:07:21 +0000</pubDate><link>https://news.ycombinator.com/item?id=47042018</link><dc:creator>belisarius222</dc:creator><comments>https://news.ycombinator.com/item?id=47042018</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47042018</guid></item><item><title><![CDATA[New comment by belisarius222 in "LCM: Lossless Context Management [pdf]"]]></title><description><![CDATA[
<p>Hi, I'm the other author on this paper. You've asked a good question. I had originally planned on writing an agentic_reduce operator to complement the agentic_map operator, but the more I thought about it, the more I realized I couldn't come up with a use case for it that wasn't contrived. Instead, having the main agent write scripts that perform aggregations on the result of an agentic_map or llm_map call made a lot more sense.<p>It's quite possible that's wrong. If so, I would write llm_reduce like this: it would spawn a sub-task for every pair of elements in the list, which would call an LLM with a prompt telling it how to combine the two elements into one. The output type of the reduce operation would need to be the same as the input type, just like in normal map/reduce. This allows for a tree of operations to be performed, where the reduction is run log(n) times, resulting in a single value.<p>That value should probably be loaded into the LCM database by default, rather than putting it directly into the model's context, to protect the invariant that the model should be able to string together arbitrarily long sequences of maps and reduces without filling up its own context.<p>I don't think this would be hard to write. It would reuse the same database and parallelism machinery that llm_map and agentic_map use.</p>
]]></description><pubDate>Mon, 16 Feb 2026 23:52:21 +0000</pubDate><link>https://news.ycombinator.com/item?id=47041928</link><dc:creator>belisarius222</dc:creator><comments>https://news.ycombinator.com/item?id=47041928</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47041928</guid></item><item><title><![CDATA[New comment by belisarius222 in "Urbit"]]></title><description><![CDATA[
<p>Today, Urbit has chat, blogging, a basic weather app, and a lot of programming facilities.  Eventually it should be able to run a document editor, and you can do things similar to internet browsing even on today's Urbit.<p>Urbit is a long-term project starting from the foundations and working up the stack. It'll be stable soon, but it probably won't be ready to run something as heavy as a modern web browser for a while.  That being said, it does work, and it's fun to play with as-is.</p>
]]></description><pubDate>Sun, 01 Dec 2019 06:29:47 +0000</pubDate><link>https://news.ycombinator.com/item?id=21674189</link><dc:creator>belisarius222</dc:creator><comments>https://news.ycombinator.com/item?id=21674189</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=21674189</guid></item><item><title><![CDATA[New comment by belisarius222 in "Urbit"]]></title><description><![CDATA[
<p>Yes, that's an important point. You'll have a service contract with the infrastructure node responsible for routing packets to you -- you'll pay them to route to you.  There are two layers of infrastructure nodes to facilitate scaling and hopefully maintain a healthy competitive market for routing services.</p>
]]></description><pubDate>Sun, 01 Dec 2019 06:23:33 +0000</pubDate><link>https://news.ycombinator.com/item?id=21674169</link><dc:creator>belisarius222</dc:creator><comments>https://news.ycombinator.com/item?id=21674169</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=21674169</guid></item><item><title><![CDATA[New comment by belisarius222 in "Urbit"]]></title><description><![CDATA[
<p>Overlay OS might not be a great term.<p>Urbit is a program you can run on Linux or MacOS intended to provide a complete personal computing experience on its own.  It runs as a virtual machine for now, although it could run as a unikernel on bare metal (good project for a contributor who's interested!).<p>This VM acts like an operating system, in the sense that it loads and runs other applications within itself, and in the sense that it presents an application switcher and overall system management tools to the user.<p>This VM is designed from scratch to be as simple as possible, based on the thesis that the reason everyone has thought of a personal server but nobody runs one is that it's too complicated to do your own sysadmin.<p>Why is it complicated to do your own sysadmin?  Because Linux is 15 million lines of code, and then there are tons of layers on top of that.  What percentage of programmers even know how the internet works?  A fair number of programmers have a decent sense for some corner of the modern computing world, but even seasoned professionals don't usually know the full structure of the digital world.  How does BGP interact with the IP protocol?  How do you make sure fsync() actually did what you wanted it to do?  How does Linux overcommit_memory work? etc.<p>Urbit is weird, but that's mostly because it's a parallel universe of computing, not because it's inherently crazier than the alternative.  We all have Stockholm Syndrome about 'ls -alH', and don't tell me 'grep' is an intuitive name.<p>In fact, there are very few basic building blocks in Urbit: binary trees of integers, the idea of a persistent event-log-based computer, and cryptographic identities.  Pretty much everything is constructed out of those components.<p>And it's designed for a modern world with billions of users who might not all be completely trustworthy, so whole categories of complexity go away -- such as NATs.<p>So there's no standard industry term for describing this system, because there are no direct analogs or competitors.</p>
]]></description><pubDate>Sun, 01 Dec 2019 06:20:38 +0000</pubDate><link>https://news.ycombinator.com/item?id=21674161</link><dc:creator>belisarius222</dc:creator><comments>https://news.ycombinator.com/item?id=21674161</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=21674161</guid></item><item><title><![CDATA[New comment by belisarius222 in "Urbit"]]></title><description><![CDATA[
<p>I do work for Tlon, if that wasn't obvious. I also find the "computer" terminology misleading, so I'm with you on that.<p>Why would you want to use Urbit?  The same reasons you want to use the modern consumer internet, which Urbit intends to pave over and replace with something better.<p>How is Urbit better?  Because you'll have all your data and programs on one machine, which you control, using an open source operating system.  You can build a peer-to-peer twitter or facebook clone on Urbit in a day or two, because the OS handles more of the distributed systems and identity problems that have killed most peer-to-peer projects in the past.<p>It's still in alpha, so it's a bit slow and buggy, and a lot more work has been put into kernelspace than userspace so far.  What will make you way "wow this is cool" varies widely, but some good candidates are:
- an internet experience not predicated on surveillance capitalism
- no ads
- control over your UI
- a minimal aesthetic
- interesting people to talk to on the network
- lack of the twitter "thunderdome" feel
- if you like to write programs, the Urbit system is fascinating to work with; I've learned a lot more CS from working on it<p>The other thing that's cool is that this new world isn't yet fully settled.  You can write a little talkbot or something and still have a big effect on the culture.</p>
]]></description><pubDate>Sun, 01 Dec 2019 05:58:42 +0000</pubDate><link>https://news.ycombinator.com/item?id=21674098</link><dc:creator>belisarius222</dc:creator><comments>https://news.ycombinator.com/item?id=21674098</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=21674098</guid></item><item><title><![CDATA[New comment by belisarius222 in "Urbit"]]></title><description><![CDATA[
<p>from the FAQ:
"In early 2019, Curtis left the Urbit project and gave all of his voting interest (both as address space and voting shares in the company) back to Tlon. He retains a non-voting, minority interest in both the address space and the company — but is not involved in the day-to-day development or operations."</p>
]]></description><pubDate>Sun, 01 Dec 2019 05:42:23 +0000</pubDate><link>https://news.ycombinator.com/item?id=21674058</link><dc:creator>belisarius222</dc:creator><comments>https://news.ycombinator.com/item?id=21674058</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=21674058</guid></item><item><title><![CDATA[New comment by belisarius222 in "Urbit"]]></title><description><![CDATA[
<p>Yes.  Not exactly a standard term, but there is no standard term for what Urbit is.  It's VM, personal server, yes -- but those don't clearly convey the scope of the project.</p>
]]></description><pubDate>Sun, 01 Dec 2019 03:10:55 +0000</pubDate><link>https://news.ycombinator.com/item?id=21673578</link><dc:creator>belisarius222</dc:creator><comments>https://news.ycombinator.com/item?id=21673578</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=21673578</guid></item><item><title><![CDATA[New comment by belisarius222 in "Urbit"]]></title><description><![CDATA[
<p>Canonical pronunciation for each character is a wonderful thing, and I use it all the time to discuss code.  If there's one thing other projects should steal from Urbit, it's this.<p>Spoken programming languages FTW.<p>The pronunciations are no more exclusionary than learning Cyrillic, and the effort pays off.</p>
]]></description><pubDate>Sun, 01 Dec 2019 03:08:05 +0000</pubDate><link>https://news.ycombinator.com/item?id=21673565</link><dc:creator>belisarius222</dc:creator><comments>https://news.ycombinator.com/item?id=21673565</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=21673565</guid></item><item><title><![CDATA[New comment by belisarius222 in "Urbit"]]></title><description><![CDATA[
<p>Urbit only uses a blockchain as a ledger of who owns which addresses within the network and root DNS for peer discovery.<p>The OS itself runs as a VM on your machine (either a Linux or MacOS host, for now), and that is the only place your data lives.<p>Urbit does implement a peer-to-peer encrypted, authenticated network among these VMs. It's not solely socially focused, though.<p>It's also intended to be your personal archive for things like your personal financial data, pictures, nusic, notes, and private documents like tax records and medical histories.<p>And not only an archive, but also your personal "agent", in the sense that it's a program that's on all the time, on the network on your behalf, to serve your blog, for example.<p>You can access Urbit through the command-line or a webpage that it serves for you.<p>The state of an Urbit VM is a folder on the host OS. You can zip it up, move it to another computer, and restart it there seamlessly.<p>None of these features by themselves is particularly interesting.  What's unique about Urbit is that all of this is accomplished using a very small set of primitives, making it easier to write applications that don't go through some huge company that tracks your every move and has a conflict of interest between serving you and serving advertisers.<p>If you're interested in learning more details of how it works, there is actually quite a bit of technical documentation at <a href="https://urbit.org/docs" rel="nofollow">https://urbit.org/docs</a><p>We're obviously still trying to figure out how to describe this thing.  It doesn't occupy a slot that people already have in their minds for a piece of software, except maybe "personal server", but even that is somewhat vague.<p>Because there's a different world of computing inside Urbit, with its own libraries, apps, languages, etc., it can take a while to wrap your head around.<p>What's funny about this is that the Urbit world is orders of magnitude simpler than a standard Unix-based stack.  We've just spent so much time learning things like DNS A records vs. CNAMEs and what 'xzvf' do for tar, that a parallel universe of these constructs seems bewildering again.</p>
]]></description><pubDate>Sun, 01 Dec 2019 03:02:17 +0000</pubDate><link>https://news.ycombinator.com/item?id=21673541</link><dc:creator>belisarius222</dc:creator><comments>https://news.ycombinator.com/item?id=21673541</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=21673541</guid></item><item><title><![CDATA[Lug-Nut Driven Development]]></title><description><![CDATA[
<p>Article URL: <a href="https://medium.com/@belisarius222/how-to-start-a-software-project-ad51373c1510#.rcl1ppk83">https://medium.com/@belisarius222/how-to-start-a-software-project-ad51373c1510#.rcl1ppk83</a></p>
<p>Comments URL: <a href="https://news.ycombinator.com/item?id=11306479">https://news.ycombinator.com/item?id=11306479</a></p>
<p>Points: 17</p>
<p># Comments: 4</p>
]]></description><pubDate>Thu, 17 Mar 2016 18:32:14 +0000</pubDate><link>https://medium.com/@belisarius222/how-to-start-a-software-project-ad51373c1510#.rcl1ppk83</link><dc:creator>belisarius222</dc:creator><comments>https://news.ycombinator.com/item?id=11306479</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=11306479</guid></item><item><title><![CDATA[New comment by belisarius222 in "Meteor in the Wild: How I Learned to Stop Worrying and Love Reactive Programming"]]></title><description><![CDATA[
<p>jspot dev here.  fixed speed issue with help from Nick Martin from Meteor.  Turns out I was running a dev-mode proxy to auto-reload code, but Nick figured out we could bypass it in the nginx config.  Should be much faster now.</p>
]]></description><pubDate>Thu, 07 Mar 2013 01:41:41 +0000</pubDate><link>https://news.ycombinator.com/item?id=5335400</link><dc:creator>belisarius222</dc:creator><comments>https://news.ycombinator.com/item?id=5335400</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=5335400</guid></item><item><title><![CDATA[New comment by belisarius222 in "Meteor in the Wild: How I Learned to Stop Worrying and Love Reactive Programming"]]></title><description><![CDATA[
<p>@saint-loup Good catch!  That was old code, not noticeable in my usual browser.  It's gone now.</p>
]]></description><pubDate>Thu, 07 Mar 2013 01:00:00 +0000</pubDate><link>https://news.ycombinator.com/item?id=5335226</link><dc:creator>belisarius222</dc:creator><comments>https://news.ycombinator.com/item?id=5335226</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=5335226</guid></item><item><title><![CDATA[Meteor in the Wild: How I Learned to Stop Worrying and Love Reactive Programming]]></title><description><![CDATA[
<p>Article URL: <a href="https://joinjspot.com/blog/meteor-in-the-wild">https://joinjspot.com/blog/meteor-in-the-wild</a></p>
<p>Comments URL: <a href="https://news.ycombinator.com/item?id=5335008">https://news.ycombinator.com/item?id=5335008</a></p>
<p>Points: 63</p>
<p># Comments: 35</p>
]]></description><pubDate>Thu, 07 Mar 2013 00:16:09 +0000</pubDate><link>https://joinjspot.com/blog/meteor-in-the-wild</link><dc:creator>belisarius222</dc:creator><comments>https://news.ycombinator.com/item?id=5335008</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=5335008</guid></item></channel></rss>