Live data from Hacker News

I’ve Consed Every Pair

medium.com

101–110 of 228 posts

Re: I’ve Consed Every Pair

#101

Earlier quoted context omitted.

This is no more a lisp discussion than a Johnny Cash discussion. You can ignore the top post if it doesn’t interest you. As an aside, obesity is a disease that hormonally and mentally encourages self deception. The point of writing everything down and (most importantly) translating this list into objective calorie counts (usually looked up from a third party reference) is to remove this self deception. It is one of t…

The post is a topic that discusses tech. The commenter discussed eating advice to “avoid getting fat” that is plainly unbelievable to people who experience weight gain following said advice and who don’t benefit from being told to starve themselves more or be more hyper aware of the fact that it doesn’t matter how little they eat they gain weight. The post had nothing to do with getting fat. Of course I’m welcome to…

> who experience weight gain following said advice

> it doesn’t matter how little they eat they gain weight

A few thoughts in no particular order:

* Weight gain (of the adipose sort) is quite literally your body storing energy.

* Energy can neither be created nor destroyed. [citation needed]

* Unless your gut is performing nuclear physics, your energy intake is directly equivalent to the food you consume.

* Obesity is primarily a hunger problem - you're feeling hungry when you don't require additional calories.

* Some foods (ex broccoli, leafy greens) are nearly physically impossible to consume too many calories from.

* Some foods (ex macadamia nuts) are _incredibly easy_ to consume too many calories from.

Re: I’ve Consed Every Pair

#102

> While that is a sentiment with which I can wholeheartedly agree, ... ... (since, ya know, I rewrote a Lisp book to make it about Python, so if I said what I really think, there would be no end to the crow I'd have to eat), but anyway ...

Peter Norvig explained why he came to Python from Lisp in an HN posting a decade ago:

https://news.ycombinator.com/item?id=1803815

>norvig on Oct 18, 2010 | parent | favorite | on: Ask PG: Lisp vs Python (2010)

>Peter Norvig here. I came to Python not because I thought it was a better/acceptable/pragmatic Lisp, but because it was better pseudocode. Several students claimed that they had a hard time mapping from the pseudocode in my AI textbook to the Lisp code that Russell and I had online. So I looked for the language that was most like our pseudocode, and found that Python was the best match. Then I had to teach myself enough Python to implement the examples from the textbook. I found that Python was very nice for certain types of small problems, and had the libraries I needed to integrate with lots of other stuff, at Google and elsewhere on the net.

>I think Lisp still has an edge for larger projects and for applications where the speed of the compiled code is important. But Python has the edge (with a large number of students) when the main goal is communication, not programming per se.

>In terms of programming-in-the-large, at Google and elsewhere, I think that language choice is not as important as all the other choices: if you have the right overall architecture, the right team of programmers, the right development process that allows for rapid development with continuous improvement, then many languages will work for you; if you don't have those things you're in trouble regardless of your language choice.

Kenny Tilton (smuglispweeny) tells this story, that ced posted a link to in the same discussion:

https://news.ycombinator.com/item?id=1803627

>ced on Oct 18, 2010 | parent | favorite | on: Ask PG: Lisp vs Python (2010)

>That reminds me of a cool story, in Norvig's talk about Python...

>When he finished Peter [Norvig] took questions and to my surprise called first on the rumpled old guy who had wandered in just before the talk began and eased himself into a chair just across the aisle from me and a few rows up.

>This guy had wild white hair and a scraggly white beard and looked hopelessly lost as if he had gotten separated from the tour group and wandered in mostly to rest his feet and just a little to see what we were all up to. My first thought was that he would be terribly disappointed by our bizarre topic and my second thought was that he would be about the right age, Stanford is just down the road, I think he is still at Stanford -- could it be?

>"Yes, John?" Peter said.

>I won't pretend to remember Lisp inventor John McCarthy's exact words which is odd because there were only about ten but he simply asked if Python could gracefully manipulate Python code as data.

>"No, John, it can't," said Peter and nothing more, graciously assenting to the professor's critique, and McCarthy said no more though Peter waited a moment to see if he would and in the silence a thousand words were said.

http://smuglispweeny.blogspot.com/2008/02/ooh-ooh-my-turn-wh...

Re: I’ve Consed Every Pair

#103

Earlier quoted context omitted.

This is no more a lisp discussion than a Johnny Cash discussion. You can ignore the top post if it doesn’t interest you. As an aside, obesity is a disease that hormonally and mentally encourages self deception. The point of writing everything down and (most importantly) translating this list into objective calorie counts (usually looked up from a third party reference) is to remove this self deception. It is one of t…

The post is a topic that discusses tech. The commenter discussed eating advice to “avoid getting fat” that is plainly unbelievable to people who experience weight gain following said advice and who don’t benefit from being told to starve themselves more or be more hyper aware of the fact that it doesn’t matter how little they eat they gain weight. The post had nothing to do with getting fat. Of course I’m welcome to…

Seriously, you need to chill out and go get some exercise.

One plate is great advice for almost everybody. You sound insanely unhealthy and clearly like complaining about it publicly.

Re: I’ve Consed Every Pair

#104
post #27

I tried writing some of my own verses for this song, but I couldn't think of anything that rhymed with RPLACA and CDADAADR. Speaking of consing every pair, here's a previous discussion about "The Origin of CAR and CDR in Lisp (2005) (iwriteiam.nl)": https://news.ycombinator.com/item?id=16008239 http://www.iwriteiam.nl/HaCAR_CDR.html

Funny you bring up rhymes; my brain keeps matching "I've Consed Every Pair, Man" with "Bicycle Repairman". https://www.dailymotion.com/video/x2howud

Straight up admission of HN's rabid pro-Python bias at the end there.

Re: I’ve Consed Every Pair

#105
post #14

The most important thing I ever learned from Professor Norvig was how to not get fat at Google. He said, "Never take a tray. If it won't fit on one plate, it's too much". A wise man. I mean I suppose some of the stuff I learned from his textbook was pretty useful too.

What advice would you give to those of us who struggle with our weight, regardless of the size of our plate, who came here to discuss lisp and not what the author of the blog post said to you one time about food portions?

Please don't be a jerk in HN comments, even if you find another comment provocative. It helps nothing, and just makes the thread even worse.

https://news.ycombinator.com/newsguidelines.html

Re: I’ve Consed Every Pair

#107
post #71

Earlier quoted context omitted.

And I believe similar closures for keeping state?

Yes. An elegant approach with poor scalability and availability characteristics.

HN still uses it extensively for its more obscure operations—the ones that don't need to scale. We switched all the most common handlers to regular links years ago. It's hard to remember now that the most common complaint here (by far) used to be about those "Unknown or expired link" messages. In fact, you can tell from the histogram of https://hn.algolia.com/?dateRange=all&page=0&prefix=true&que... when it was that we fixed this—six years ago—because that's when the complaints slow down to a trickle.

As long as you don't use it for things that you need a lot of, it's a great approach that holds up well. The primary downside is that they all get discarded when we restart the server process. Another downside is that they don't work well with the back button.

Edit: I just remembered another issue with them. Sometimes browsers pre-visit these links, which 'uses' them so that by the time the user goes to click on it, it has already expired. (Yes, this is an issue with using GET for these.)

Re: I’ve Consed Every Pair

#108

I'll admit I don't think I've really noticed the presence of lisp online other than when people want to talk about lisp. Can someone share some practical examples of where lisp is being used? Maybe a popular open source project I never realised was written in a lisp family language?

HN itself is one. Usually somebody jumps to point that out, but it looks like I have the that-guy role this time.

Re: I’ve Consed Every Pair

#109

Earlier quoted context omitted.

You haven't been around long enough, at least under the same name, to remember when there was an implicit time limit on the comment reply page, inflicted by those stored closures silently timing out. Having long comments so often eaten that way was actually the specific thing that annoyed me into first installing It's All Text. It's an interesting approach, as attempts to force statefulness on a stateless-by-design p…

My account was reset. I've been around since day two. :) You're right, it has some downfalls. But a lot of the time it simply doesn't matter. All the links at https://www.tensorfork.com/tpus are dynamic, and the speed you gain by being able to whip up a feature in 10 minutes is worth the pain of an occasional dead link. On the other hand, I did some work for "deduplicating fnids": http://arclanguage.com/item?id=20996…

(Darn, I linked to the wrong comment. http://arclanguage.com/item?id=20996 has the writeup about the function deduplication in Arc.)

Re: I’ve Consed Every Pair

#110
post #107

Earlier quoted context omitted.

Yes. An elegant approach with poor scalability and availability characteristics.

HN still uses it extensively for its more obscure operations—the ones that don't need to scale. We switched all the most common handlers to regular links years ago. It's hard to remember now that the most common complaint here (by far) used to be about those "Unknown or expired link" messages. In fact, you can tell from the histogram of https://hn.algolia.com/?dateRange=all&page=0&prefix=true&que... when it was that…

The primary downside is that they all get discarded when we restart the server process.

For solving this, http://arclanguage.com/item?id=20996 has some theoretical ideas.

It's way easier in elisp than in racket, but, the idea is to write out the function + the closure variables to disk.

The hard part is that you'd have to fix up object references. (If two closures both capture x, and x is a hash table, then the values of x for both closures should be the same hash table after a reboot.) But it's doable.

And of course, if it's possible to write the closures to disk, that means you can write them out to a database shared by multiple Arc webservers. As long as the state is also shared (perhaps the values of the variables can also be stored in the database?) then this means the technique can horizontally scale, just like any other.

I spent like a year trying to brainstorm ways of showing that Arc can go toe-to-toe with any of the popular frameworks, with no downsides. "Reboots wipe the closures" implies "Arc can't scale horizontally," which would be a serious limitation in a corporate setting. But in principle I think you could write closures to disk.

That would also result in a funny situation: if closures persist forever, it means that a closure could potentially be activated years after it was first stored. So it'll run with years-old code, rather than the latest version. :) But if people are using global names for functions, then it'll just call the latest versions of those functions, which will probably work fine in most cases.

Post reply on HN