<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: spacemanaki</title><link>https://news.ycombinator.com/user?id=spacemanaki</link><description>Hacker News RSS</description><docs>https://hnrss.org/</docs><generator>hnrss v2.1.1</generator><lastBuildDate>Thu, 16 Apr 2026 14:13:39 +0000</lastBuildDate><atom:link href="https://hnrss.org/user?id=spacemanaki" rel="self" type="application/rss+xml"></atom:link><item><title><![CDATA[New comment by spacemanaki in "Look at the humongous type that Hindley-Milner infers for this tiny program"]]></title><description><![CDATA[
<p>Actually, these examples are similar to the first example in my post (under the first "pathological case" heading) and don't quite exhibit the worst case behavior since the type can be represented in linear space as a dag.</p>
]]></description><pubDate>Mon, 04 Aug 2014 12:09:18 +0000</pubDate><link>https://news.ycombinator.com/item?id=8131340</link><dc:creator>spacemanaki</dc:creator><comments>https://news.ycombinator.com/item?id=8131340</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=8131340</guid></item><item><title><![CDATA[New comment by spacemanaki in "Look at the humongous type that Hindley-Milner infers for this tiny program"]]></title><description><![CDATA[
<p>Clearly I should write more blog posts with lots of questions at the end, thanks!</p>
]]></description><pubDate>Mon, 04 Aug 2014 12:06:21 +0000</pubDate><link>https://news.ycombinator.com/item?id=8131327</link><dc:creator>spacemanaki</dc:creator><comments>https://news.ycombinator.com/item?id=8131327</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=8131327</guid></item><item><title><![CDATA[New comment by spacemanaki in "Look at the humongous type that Hindley-Milner infers for this tiny program"]]></title><description><![CDATA[
<p>Thanks for pointing that out! I hadn't made the connection and now I've got another reason to figure out how fold works (have yet to wade through all of <a href="http://mlton.org/Fold" rel="nofollow">http://mlton.org/Fold</a>)</p>
]]></description><pubDate>Mon, 04 Aug 2014 12:04:42 +0000</pubDate><link>https://news.ycombinator.com/item?id=8131318</link><dc:creator>spacemanaki</dc:creator><comments>https://news.ycombinator.com/item?id=8131318</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=8131318</guid></item><item><title><![CDATA[New comment by spacemanaki in "Look at the humongous type that Hindley-Milner infers for this tiny program"]]></title><description><![CDATA[
<p>It's unlikely to occur as the type is exponential in size and thus quite unwieldy to do anything with! I haven't worked with generated ML or Haskell code, but I still think it's unlikely to be an issue in "real" code.</p>
]]></description><pubDate>Mon, 04 Aug 2014 05:55:08 +0000</pubDate><link>https://news.ycombinator.com/item?id=8130542</link><dc:creator>spacemanaki</dc:creator><comments>https://news.ycombinator.com/item?id=8130542</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=8130542</guid></item><item><title><![CDATA[New comment by spacemanaki in "Look at the humongous type that Hindley-Milner infers for this tiny program"]]></title><description><![CDATA[
<p>Thanks, that's very flattering as I've been a long time fan of your blog!</p>
]]></description><pubDate>Mon, 04 Aug 2014 05:50:44 +0000</pubDate><link>https://news.ycombinator.com/item?id=8130530</link><dc:creator>spacemanaki</dc:creator><comments>https://news.ycombinator.com/item?id=8130530</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=8130530</guid></item><item><title><![CDATA[New comment by spacemanaki in "Look at the humongous type that Hindley-Milner infers for this tiny program"]]></title><description><![CDATA[
<p>That's very interesting! This seems to me like it might be a different kind of edge case though, since the type of x is still t -> t, even if it takes a long time for the type checker to arrive at this. From the little I got out of Mairson's paper, it seems that the proof he uses depends on the exponential size of the type itself, but I could be mistaken... either way I wonder how they're related?</p>
]]></description><pubDate>Mon, 04 Aug 2014 05:48:50 +0000</pubDate><link>https://news.ycombinator.com/item?id=8130526</link><dc:creator>spacemanaki</dc:creator><comments>https://news.ycombinator.com/item?id=8130526</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=8130526</guid></item><item><title><![CDATA[New comment by spacemanaki in "Ask HN: Who is hiring? (July 2014)"]]></title><description><![CDATA[
<p>Rent the Runway - New York, NY (VISA candidates welcome!)<p>Rent the Runway is building the first online rental platform for retail goods. We're a disruptive e-commerce business that believes democratizing luxury products in the US is just the first step of a broader vision to drive aspirational experiences for tens of millions of users across the globe. We're more than "Netflix for dresses"—we're Cinderella Experience as a Service. Find out more about the challenging product-oriented problems we face across the boundaries of e-commerce, mobile, analytics and shipping/fulfillment here: <a href="http://blog.tech.renttherunway.com/" rel="nofollow">http://blog.tech.renttherunway.com/</a><p>We are hiring front-end, back-end, DevOps, and mobile (iOS) engineers. Our stack:<p>* Service-oriented architecture with Java 7 (soon to be 8!) and DropWizard: Modern Java is a thing and we've got the proof!<p>* Ruby and Sinatra for lightweight, scalable web applications.<p>* JavaScript and Backbone for a front end that's becoming faster and more awesome to work on every day.<p>Job postings: <a href="http://www.renttherunway.com/careers" rel="nofollow">http://www.renttherunway.com/careers</a></p>
]]></description><pubDate>Tue, 01 Jul 2014 15:50:30 +0000</pubDate><link>https://news.ycombinator.com/item?id=7971475</link><dc:creator>spacemanaki</dc:creator><comments>https://news.ycombinator.com/item?id=7971475</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=7971475</guid></item><item><title><![CDATA[New comment by spacemanaki in "Let the Type System do the Work"]]></title><description><![CDATA[
<p>Well here's another honest question: what's real object-oriented programming and where can I learn more about it?</p>
]]></description><pubDate>Mon, 21 Apr 2014 23:37:06 +0000</pubDate><link>https://news.ycombinator.com/item?id=7624726</link><dc:creator>spacemanaki</dc:creator><comments>https://news.ycombinator.com/item?id=7624726</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=7624726</guid></item><item><title><![CDATA[New comment by spacemanaki in "Ask HN: Who is hiring? (April 2014)"]]></title><description><![CDATA[
<p>Rent the Runway is hiring all sorts of engineers (Java, Data, iOS, full stack) in the NYC area.<p>Rent the Runway is building the first online rental platform for retail goods. We are a disruptive e-commerce business that believes that democratizing luxury products in the US is just the first step of a broader vision of helping drive better aspirational experiences for tens of millions of users across the globe.<p>Our engineering team works on challenging product-oriented problems across the boundaries of e-commerce, mobile, analytics and shipping/fulfillment, and the backbone of our business is served by our custom logistics management system which is core to our capacity to deliver the right product to the right user at the right time. We utilize data, engineering and algorithms to create a personalized website and an adaptive supply chain to fulfill our commitment to an amazing customer experience.<p>Engineers at Rent the Runway focus on solving business problems first, and receive the satisfaction that they have true impact on the success of the company. Many of our engineers are entrepreneurs themselves, and we strongly encourage a collaborative, product-driven culture across our organization. We have a very diverse team and welcome those with supernerd CS degrees as well as those with non-traditional backgrounds.<p><a href="http://www.renttherunway.com/careers" rel="nofollow">http://www.renttherunway.com/careers</a></p>
]]></description><pubDate>Tue, 01 Apr 2014 13:53:46 +0000</pubDate><link>https://news.ycombinator.com/item?id=7508160</link><dc:creator>spacemanaki</dc:creator><comments>https://news.ycombinator.com/item?id=7508160</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=7508160</guid></item><item><title><![CDATA[New comment by spacemanaki in "What's new in purely functional data structures since Okasaki? (2010)"]]></title><description><![CDATA[
<p>Short answer: I don't think LYAH would be entirely sufficient background, and I think familiarity with imperative equivalents is a prerequisite, but along with some other background.<p>Long version: I stumbled a bit when trying to read this book, because I'm not super comfortable with the formal techniques for analyzing algorithms. I'm not talking about the kind of fluffy-tech-company-interview-"knows what big Oh is and can estimate it roughly on a whiteboard" ability but actually something much more concrete and formal, the kind taught in an undergrad algorithms class or in CLRS. I've taken those classes, I have CLRS on my shelf and have read some of it, but it's been a long time and it's not at my fingertips. There are exercises in the book ("prove that this data structure has this amortized performance", "prove that it does if you change this one thing", etc...) that challenged me quite a bit, and I ended up putting it down after a while thinking I would revisit it after refreshing my fundamentals.<p>The ML code is easy enough to follow if you know Haskell, but since the point is often to understand the subtlety of the performance characteristics of the data structures and algorithms, just reading and playing with the code wasn't enough for me. After all you can trivially implement functional data structures naively just by copying everything on every operation.<p>Frankly, Rich Hickey's videos on Clojure's data structures have done a lot more for me in terms of understanding how functional data structures work, even though they are much less formal in presentation. To be clear: I think Okasaki's book is probably a very good book and an important work, but am not so sure it is crucial for the working functional programmer to internalize all the mathematical details.<p>Anyway, YMMV. Check out his thesis and see what you think before buying it.</p>
]]></description><pubDate>Sat, 18 Jan 2014 17:44:55 +0000</pubDate><link>https://news.ycombinator.com/item?id=7081545</link><dc:creator>spacemanaki</dc:creator><comments>https://news.ycombinator.com/item?id=7081545</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=7081545</guid></item><item><title><![CDATA[New comment by spacemanaki in "Things I Wish Someone Had Told Me When I Was Learning How to Code"]]></title><description><![CDATA[
<p>A researcher in programming languages once told me that when she encounters the "HTML isn't a programming language" meme she always thinks: Agda and Coq aren't Turing complete, are they also not programming languages?<p>The point being, I think, that drawing this bright line at Turing completeness doesn't hold up when you give it any thought, and so it's not very useful. Aside from that, you've utterly missed the point of the OP.</p>
]]></description><pubDate>Sun, 24 Nov 2013 15:41:45 +0000</pubDate><link>https://news.ycombinator.com/item?id=6789834</link><dc:creator>spacemanaki</dc:creator><comments>https://news.ycombinator.com/item?id=6789834</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=6789834</guid></item><item><title><![CDATA[New comment by spacemanaki in "HTML5 game written in 0 lines of JS"]]></title><description><![CDATA[
<p>Please feel free to submit things that you think are more suitable for Hacker News.</p>
]]></description><pubDate>Fri, 22 Nov 2013 13:21:22 +0000</pubDate><link>https://news.ycombinator.com/item?id=6780533</link><dc:creator>spacemanaki</dc:creator><comments>https://news.ycombinator.com/item?id=6780533</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=6780533</guid></item><item><title><![CDATA[New comment by spacemanaki in "Why monads have not taken the Common Lisp world by storm (2008)"]]></title><description><![CDATA[
<p>I have no idea what you're working on, but I spent a few weeks this summer writing parsers and trying to figure out how to tackle the ugliness that seems to be inherent in hand-written recursive descent parsers. While I learned a lot, I am not an expert by a long shot. However I did find an interesting technique that is not well covered elsewhere.<p>I came across this* article, which uses JavaScript as the implementation language, and found it very interesting, in large part because this approach (Top down operator precedence) sort of pulls the precedence hierarchy out of the call graph of a recursive descent parser and into a table, but also because it's an approach that OOP (and JavaScript in particular) is well suited to. I've used it (in combination with traditional recursive descent) in a functional setting (Standard ML) as well, and would use it again, especially for parsing infix expressions (arithmetic expressions, type annotation expressions).<p>This is a bit of a tangent, but I thought you might be interested given the intersection of parsing and JavaScript. I've been meaning to write this up in a short blog post...<p>* <a href="http://javascript.crockford.com/tdop/tdop.html" rel="nofollow">http://javascript.crockford.com/tdop/tdop.html</a> There's another article on this using Java as the implementation language: <a href="http://journal.stuffwithstuff.com/2011/03/19/pratt-parsers-expression-parsing-made-easy/" rel="nofollow">http://journal.stuffwithstuff.com/2011/03/19/pratt-parsers-e...</a></p>
]]></description><pubDate>Tue, 17 Sep 2013 14:26:38 +0000</pubDate><link>https://news.ycombinator.com/item?id=6399448</link><dc:creator>spacemanaki</dc:creator><comments>https://news.ycombinator.com/item?id=6399448</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=6399448</guid></item><item><title><![CDATA[New comment by spacemanaki in "Technical Interviews Make Me Cry"]]></title><description><![CDATA[
<p>The purpose of a question like this, and of the classic FizzBuzz question, is to be a lightweight test of whether a candidate can actually write code or not. That's all. It provides a negative signal if they fall completely to get anywhere close, and nothing more.<p>There are alternatives, you could ask them to explain a piece of code they wrote on their own before the interview, any piece of code would do. I suppose that could be gamed which is why most companies opt for FizzBuzz.<p>Personally, once I started thinking about these kinds of questions like this, I had less issue with them. Interviewing people who failed to write FizzBuzz opened my eyes too.</p>
]]></description><pubDate>Mon, 16 Sep 2013 04:36:30 +0000</pubDate><link>https://news.ycombinator.com/item?id=6391656</link><dc:creator>spacemanaki</dc:creator><comments>https://news.ycombinator.com/item?id=6391656</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=6391656</guid></item><item><title><![CDATA[New comment by spacemanaki in "SICP translated to JavaScript"]]></title><description><![CDATA[
<p>It's not about macros, it's about homoiconicity. I encourage you to read chapters 4 and 5 and think about how sweet.js would help you port those chapters to JS.</p>
]]></description><pubDate>Sat, 14 Sep 2013 19:15:36 +0000</pubDate><link>https://news.ycombinator.com/item?id=6386710</link><dc:creator>spacemanaki</dc:creator><comments>https://news.ycombinator.com/item?id=6386710</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=6386710</guid></item><item><title><![CDATA[New comment by spacemanaki in "SICP translated to JavaScript"]]></title><description><![CDATA[
<p>As others have pointed out, chapters 4 and 5 are as wonderful and rich as they are because Scheme is homoiconic which makes writing Scheme interpreters and compilers in Scheme very easy -- no need for hairy lexing and parsing steps. Since (IMHO) these chapters are the best introduction to the study of programming languages and their implementation, it would be a real shame to discard them simply because JavaScript is more widely known and used than Scheme.<p>It's true that the ideas in the book transcend programming languages, and that the first 3 chapters could probably could be covered in JavaScript with little modification, if a little clumsily. But rewriting the 4th and 5th to include sections on parsing JavaScript would be quite challenging, and furthermore JavaScript does not have as simple semantics as Scheme, so there would be a loss of a great deal of elegance and beauty. The metacircular Scheme interpreter can run itself, which would be harder to do in JavaScript since its core is more rich and Scheme's core: objects, methods and so on complicate it quite a bit.</p>
]]></description><pubDate>Sat, 14 Sep 2013 19:14:28 +0000</pubDate><link>https://news.ycombinator.com/item?id=6386705</link><dc:creator>spacemanaki</dc:creator><comments>https://news.ycombinator.com/item?id=6386705</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=6386705</guid></item><item><title><![CDATA[New comment by spacemanaki in "Start Using Emacs – A Thorough Guide for Beginners"]]></title><description><![CDATA[
<p>C-_ is undo in Emacs. That's hold Control, and press "underscore". On my keyboard (most keyboards?) this requires holding Shift and pressing the "minus" key. Hopefully that's clear.</p>
]]></description><pubDate>Tue, 03 Sep 2013 17:56:48 +0000</pubDate><link>https://news.ycombinator.com/item?id=6322513</link><dc:creator>spacemanaki</dc:creator><comments>https://news.ycombinator.com/item?id=6322513</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=6322513</guid></item><item><title><![CDATA[New comment by spacemanaki in "Knowing When It’s Time to Move On"]]></title><description><![CDATA[
<p>> When did it become something we have to love and wrap up so much of our self-image into?<p>When we started spending 50, 60 hours a week at work. Even at 40 hours a week, it's exhausting to try to find any real time to devote to hobbies and "extracurricular" learning outside of work. If you feel like you're stagnating, feeling like you're wasting those 40 hours of life every week, why stay, just because "work is a financial transaction" ?</p>
]]></description><pubDate>Mon, 19 Aug 2013 03:39:50 +0000</pubDate><link>https://news.ycombinator.com/item?id=6235473</link><dc:creator>spacemanaki</dc:creator><comments>https://news.ycombinator.com/item?id=6235473</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=6235473</guid></item><item><title><![CDATA[New comment by spacemanaki in "Getting started with Clojure"]]></title><description><![CDATA[
<p>IANAL but I don't think you need to worry about this too much as an application or open source developer USING Clojure the language and Clojure's standard libs. This question and its answers on Stack Overflow points to an interpretation that makes sense intuitively to me, but again, not a lawyer, pretty ignorant of this stuff, etc...<p><a href="http://stackoverflow.com/questions/168254/can-you-write-gpl-software-using-cpl-libraries" rel="nofollow">http://stackoverflow.com/questions/168254/can-you-write-gpl-...</a><p>It would be nice if someone from the Clojure team would add a FAQ page or something about the license to clojure.org as it pertains to users of the language... Since this seems to come up a lot.</p>
]]></description><pubDate>Sat, 10 Aug 2013 16:53:28 +0000</pubDate><link>https://news.ycombinator.com/item?id=6191726</link><dc:creator>spacemanaki</dc:creator><comments>https://news.ycombinator.com/item?id=6191726</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=6191726</guid></item><item><title><![CDATA[New comment by spacemanaki in "SWAT-Team Nation: The Militarization of the U.S. Police"]]></title><description><![CDATA[
<p>As others have pointed out, apparently the police can seize your property under certain circumstances. This was discussed recently when the article mentioned in this blog post was submitted here, well worth the read IMHO <a href="https://news.ycombinator.com/item?id=6161465" rel="nofollow">https://news.ycombinator.com/item?id=6161465</a></p>
]]></description><pubDate>Fri, 09 Aug 2013 20:16:58 +0000</pubDate><link>https://news.ycombinator.com/item?id=6188177</link><dc:creator>spacemanaki</dc:creator><comments>https://news.ycombinator.com/item?id=6188177</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=6188177</guid></item></channel></rss>