jkeisling/hacker-news-corpus-2007-2022 huggingface dataset:
It's not a C compilers, but Mlton is an interesting SML whole program compiler. There's also JHC for Haskell which is nifty but can't quite compile all Haskell programs. I also found the Stalin Scheme compiler very interesting since it seems like a whole program compiler for a dynamically typed language like Scheme should be able to do a lot of interesting things.
I am not so sure about the actual state-of-the-art (I have read some PEG papers and some OMeta stuff from vpri, plus used ANTLR, Bison, and Coco/R), but a very interesting comment on HN (http://news.ycombinator.com/item?id=1643715) points out that most production compilers use hand-written recursive-descent parsers, primarily due to practical reasons.

I have taken two compiler construction courses during my college years, one with LL(1) grammar using a recursive descent parser, the other one with LR(1) grammar using flex+bison tool-chain. I found the experience from the LL case helped me tremendously in the course of writing the LR-language compiler. I think that recursive-descent experience also helps understanding attribute grammars, too. Probably the best introduction to recursive-descent parsers is from Niklaus Wirth's compiler construction book (http://www-old.oberon.ethz.ch/WirthPubl/CBEAll.pdf).
State of the art in parsing is SGLR (http://strategoxt.org/Sdf/SGLR) and GLL parsing
Design implies an authoritative, non-iterative mega-deployment. Growing implies an iterative, heterogeneous, observation-laden process with potential for feedback and adjustment. Where humans are involved, the latter is superior, if you want coherency and efficiency.
It's true that "reproduce" can mean different things in software and science. But having the code available to "reproduce" any plots in a paper should be a requirement for publication, imo. It certainly is the case for my papers.
I’m in Australia and just recorded it. There was Agree and an X in the corner... I X’d and it kept working.
On the contrary, portrait is about the only thing you can do effectively with this lens.

Since it doesn’t have a flat plane of focus, you can never get any more than a small portion of the picture in focus.

You could maybe do a shot with only a single tree in focus, or something, but not a regular landscape.
Yeah dude, the “Camp Auschwitz” guy has been deplatformed so many times he became a nazi. Got it.
Pretty sure once you reach the salary range limits of normal companies, the only way up in comp is FAANG.
Your scared of the wrong thing and the wrong person.

You should be scared of the people who have lost faith in a court full of cowards and an election system that was flooded with mail in ballots from dead people.
How about electronic voting systems backed by paper ballots?
Going to continue to improve my art newsletter:

https://randomdailyart.com

I'm going to launch an online course to teach people automation using a number of free tools.
* Man pointing an AR-15: https://twitter.com/JasonRCharter/status/1346988230101528579

* Man carrying a Glock and zipties: https://twitter.com/JasonRCharter/status/1347030226845446144...
I especially enjoyed the Brownie card. Had my fair helpings to those cards...
Meaning it's not scarce now and there's no easy way to make it scarce.

Like oxygen.

I can grow food in my back garden. I can't grow medical care.
Do you feel the chair does justice to the price? How is your experience so far?
> Your business won't succeed if you're hacked daily.

Which can be the consequence of setting the wrong isolation level: http://www.bailis.org/papers/acidrain-sigmod2017.pdf
Not many yet, general consensus is to first warn and get companies to implement better compliance - only those who really openly shit on GDPR get the fines.
In addition to the fully open ISAs listed in the article (OpenSPARC and RISC-V) the POWER ISA (of PowerPC origin) is also fully open. This is a somewhat recent development.
VDARE, one of the sites mentioned in the article, does favor cutting legal and illegal immigration in order to preserve a white majority in the U.S. It does not advocate violence and is not the KKK. I don't think the goal of immigration policy should be to maintain a white majority in the U.S., but I also don't think that people who have that view should be banished from social media.
I agree that the language "This is more than a one-time upgrade: once a Windows device is upgraded to Windows 10, we will continue to keep it current for the supported lifetime of the device – at no additional charge." found on Terry Myerson's blog ( http://blogs.windows.com/bloggingwindows/2015/01/21/the-next... ) is troubling at worst and confusing at best.

Since when does Microsoft decide what the "supported lifetime of the device" is? All of my devices running Windows were hand built by me from best-of-breed components that I frequently swap out.

I could see it making sense if it was for the supported lifetime of Windows 10 because that at least is something where Microsoft should be expected to define a final end of support date. But that is not what it says, and even that would be odd...Microsoft is going to either turn off my OS when they decide to no longer support it, or make me start paying to use it at that point?

Makes no sense any way you slice it, at least as currently (poorly) communicated.
Depending on the resolution, it could replace your monitors at work (assuming the headset is light, comfortable, etc). Using a wireless keyboard and mouse, you'd have your computer with you anywhere in the home or office.

As a developer, having a wall of holographic desktop screen space in front of me would be amazing. My home office would look much better too!

I have no idea how far away this version of HoloLens is from that reality though.
Apparently there will be both consumer and enterprise pricing, whatever that means. I'm guessing $500 to start at consumer level with lower resolution, less battery life, etc. Twice that for Holo Pro.

Sound is easy enough - a pair of decent headphones can produce fairly decent 3D sound, and combined with the illusion of depth provided to your visual system, I suspect it will be extremely convincing.
For 1 year from release it is free to migrate from 7/8 -> 10.

After 1 year from release you must pay to migrate from 7/8 -> 10.

Regardless of when you migrate, system upgrades are included for the lifetime of the device.

This is a push to get everyone onto the new platform and jumpstart the ecosystem.
It may be surprising, but the whole thing of cities restricting parking on odd or even days for street sweeping, plowing, marching bands, or whatever, simply doesn't happen in many countries. Many cities simply get by without such complex restrictions. Equally, the US municipal government system where every layer from borough to city to county to state to federal has full legislative authority over the detailed minutiae of parking regulation is also not a law of physics that applies universally.
I see a Get Started Now button on the home page (I didn't see it the first time through). I'd add a How It Works button right next to it that links to that Flux page. It's definitely helpful, although the constants and dispatchers feel like implementation details that most developers shouldn't have to think about.

You switch between "actions" and "action creators" in this paragraph, which makes it hard to follow:

> Action Creators are where any changes to your applications state starts. Actions are functions that are responsible for coordinating changes to local and remote state. Actions have a type which is a string describing the action (e.g. "UPDATE_USER_EMAIL").

I thought the Action Creator was a function and the Action was the act of invoking it, but that's not clear in the quoted section.

-----

I think your documentation is a bit hard to follow because you're using JavaScript in unexpected ways. For instance, it's a bit weird that your constants are invokable:

updateUserEmail: UserConstants.UPDATE_USER_EMAIL(function (userId, email) {

and I think the line after it mixed constants and action creators:

> In the above scenario, UserConstants.UPDATE_USER_EMAIL creates an action creator which, when invoked, will create an action with type UPDATE_USER_EMAIL.

-----

You're missing a ( here:

UserActionCreators.updateUserEmailthis.props.userId, email);

-----

In the next example, you use the method name as a key and the constant that triggers it as a value:

handlers: {
updateEmail: UserConstants.UPDATE_USER_EMAIL
},

Since the convention in all the libraries I've seen is to use type as the key and the callback as the value, most developers are going to be immediately tripped up by this unless you call it out in the documentation.

-----

Marty has some interesting ideas. Thanks for sharing them, and for taking the time to make a website explaining them.
> convict based purely on motive

Well consider Ferguson, the city with such out of control fines/fees that there are more warrants for the arrest of citizens who owe fees for minor infractions than there are citizens!

Historically governments have had such asymmetric power over individuals that we take for granted that signs are beyond reproach. What is so inspiring about this designer's work is that it is so refreshingly democratic.
Can one wipe out a Chromebook and install Linux?
> Here's a common set of "subjective facts": "Policy X will help group Y in manner Z." along with "Politician A voted against X and therefore hates Y."

That's just a logical fallacy. By definition a fact can only be objective, otherwise it's simply an opinion.
Pointer authentication and hardened runtime.
If you actually would have bothered to look at the paper, you would have noticed that that is somewhat what the paper tries to illustrate.
I've actually used Datomic to do backend development before, and it's really interesting to contrast two frameworks that are built around very similar ideas, but with vast differences in requirements and implementation.
The engine being totaled was your fault, always change the timing belt on or before its due to be changed.
Exactly, good product is antifragile to such types of problems.
So it's a flex?

Weird, but ok.
How so? As far as I can see, they bend over backwards to help them, especially on YouTube by demonetizing stuff using contentID.
How do you verify proof of ownership? I have a “patta” indicating I own some land. There are only a few million people in the world who can even read the words on this document. There are only a few thousand who can understand the meaning behind those words. There are many a hundred who can verify if it’s a forgery or not. Meanwhile I doubt you can tell which part of the world it’s from based on just “patta” or looking at the document.

It’s strange that multiple people on this thread have gone with “prostitution, slavery, sales of firearms don’t happen on online marketplaces, why should this?” It’s so obvious - those are obviously illegal. Any reasonable human being taking a look at a gun sale post can tell that 1. It’s a gun and 2. Guns shouldn’t be sold here. It’s so obvious that it can be trivially automated too.

Please respond if you can verify pattas in a reasonable amount of time. Because boy do I have a business idea for you.
"...but our <A/C || roof || plumbing || appliance> is going to need to be replaced in the next year or so"

How does this prevent you from going on a trip? I don't understand. Mind to elaborate a bit?
actually no, they don’t. drive train wise the have less fun enough.
Resolver and current sensor.
This is an interesting idea. I see two limitations and I'm curious how they could be overcome:

1. The peers must communicate to decide in advance which intervals to use. If those communications are encrypted with the shared stream using previously exchanged intervals, then the security of each session depends on the previous session. Breaking one session also breaks all future sessions.

2. Attackers can capture and save samples of the random bit stream and test intercepted communications against those samples. They won't get all of the victim communications, but they will get some. Combined with the chaining problem above, this could let them eventually crack all established streams.
> Do you have any evidence that they have been doing it since the emergence of the netbook market?

The Windows-based netbook market?
Completely agree about the autocomplete and documentation in XCode. It's a complete waste and for a company that spends a lot of time focusing on snappy UIs I don't understand why its so slow...and stupid.

The one redeeming quality is that Instruments and the tools package is quite nice. Our company pays good money to get the same level of software for visual studio.
There was also just a talk about this at 31C3.
Recording is still running, you have to seek back to the beginning: http://streaming.media.ccc.de/relive/6258/
> You should care because a certain critical mass is needed to have a decent choice of properly supported hardware and software

Except that if they achieve this by hoisting "one true UI" and one true whatever on you, you might find yourself having less and less choice...
Give this a shot https://pinegraph.com/create :)
The best way to create an API that feels like their creators never used them is to build one that you would use yourself. If you want to build one that others can use and use easily then you need to put yourself in their shoes, not your own. Otherwise it's just one more library built on some one else's idea of a good time. That said if absolutely no one else is ever going to see, let alone use this API, then certainly build what works for you... just remember the maxim of writing as though the person/maintainer after you is a psychopath who knows where you live.
I wonder who are the non-leading providers of Wongle product? Oh that's right, some pirate/clone knockoffs based in Asia. ;)
How easy is this thing to hack?

Easy-ish. It's a Wondermedia WM8505-based tablet, so there are a bunch of other relatives (same Android port, AFAIK) like the Eken M001.

Here are some resources:

* Teardown/serial console:
http://projectgus.com/2010/06/eken-m001-teardown-serial-cons... (disclaimer: that's my blog.)

* Debian port (forum is offline atm, though):
http://www.slatedroid.com/eken-m001-debian/

* Open source kernel from scratch (work in progress):
http://groups.google.com/group/vt8500-wm8505-linux-kernel
http://gitorious.org/linux-on-via-vt8500

* Kernel released by Wondermedia (dog's breakfast):
http://github.com/projectgus/kernel_wm8505
(That last one is a link to my github copy of their tarball release, with a couple of tweaks.)

similar setup with a BeagleBoard

It's worth pointing out that similar ain't really similar. The CPU technology is two generations older (ARM9), connectivity is more limited, open source availability is more limited, and hardware quality is significantly worse.

It is a good bit cheaper, though. :D
These devices really are cheap and nasty. I have an Eken M001 and an M003, which are the same WM8505 chipset and (AFAIK) the exact same Android port.

However, if you're stuck with one then it's worth loading one of the alternative firmwares from http://www.slatedroid.com/ on it. People have done quite a lot with the closed source Android port to make it more usable.

They also make for good tinkering/reverse-engineering on a budget. I'm actually just winding up a (very hacky) early stage Android 2.2 port to this chipset. although it isn't showing signs of being very good to use, it's been fun to hack together.
Is it really shared between accounts? So for example if I knew someone with Dropbox had a file that could have one of several contents and I wanted to know which of those contents they had I could try uploading the different versions and see which one uploaded faster?

A little far fetched maybe, but I'm sure there's a way to exploit something somewhere using that....
Yeah...I suspect in certain use cases (especially RF and such) this is a huge difference.

I feel some OS projects though do have the required skillsets and contributors who donate the time to make software worthwhile without payment and I have witnessed people put everything into it as if it was a job...but I do agree it is very easy to put off doing a suggested modification or "trivial to function of the software" type of work when you are not being paid to do so.

Kicad and Freecad have come a very long way in the last couple years from what I see...even with the shortcomings they might still have.

I certainly see them as a Fusion360/Eagle competitor.
Majority of NFT's are garbage (Sturgeon's Law) and not worth any price. However the nature of an NFT is that it allows an asset to be wrapped in a smart contract and have ownership and terms of use encoded. There's something to be said about having digitized assets that can be trustlessly verified and have capability of issuing dividends.

The Veblen effect also comes to mind. The more something costs, the more [rich] people want it, no matter how ridiculous, typically used as status symbols.

- [0] https://en.wikipedia.org/wiki/Sturgeon%27s_law

- [1] https://en.wikipedia.org/wiki/Veblen_good
After reading your comment I realized that I have the exact same experience. I use Java and JS professionally and it's often a pain to find good information for specific issues. As a side interest, I've been using rust for several projects and find information significantly quicker.

For Java I now rely mostly on some more reliable source for information that I tend to directly search rather than go through Google/DDG. Baeldung and Mkyong come to mind.

Surprisingly, some discord groups have also become my go to source for help.
"For decades, corporations have turned to creative people for their naming needs, with varying results. In 1955, a Ford Motor marketing executive recruited the modernist poet Marianne Moore to name the company’s new car. The marketing department had already created a list of 300 candidates, all of which, the executive confessed, were “characterized by an embarrassing pedestrianism.” Could the poet help? In a series of letters, Moore proposed dozens of notably nonpedestrian names — Intelligent Whale, Pastelogram, Mongoose Civique, Utopian Turtletop, Varsity Stroke — but the marketing team rejected them all, instead naming the new car (in one of the great disasters, naming and otherwise, in corporate history) after Henry Ford’s son, Edsel."
That was a very interesting read. I might want to implement some of those things in my text editing component.

I have one question. How would they implement "go to line number" functionality? How fast would it be?
Doesn't give a shit? Seriously?

I wouldn't dream of keeping a blog that couldn't handle a HN traffic spike. That's the whole point of having a blog.

Failing at this is like launching your startup's MVP to an audience of the first fifty people who were able to load your product launch page before it crashed under the load. In other words, a giant, easily-avoidable waste of effort.
Computer glasses?
There are some things that you will nearly always pay the "world price" for, e.g. plane tickets. So tho' in a major metropolitan area food and rent may be proportionally more, those things are proportionally less. It all depends on what kind of thing you're into.
Billing prior to shipping is rapidly becoming an unacceptable practice. If you are billing prior to shipping and then taking 6 weeks to fill the order then you need to take a serious look at how you are doing business.

If your orders always take a lengthy amount of time to fill I would suggest immediately sending a "your item is on back order and you will not be billed until it ships" email with a link to an order cancellation page. This should drastically cut down on the complaints and ease the mind of those consumers who think you have billed them and are scamming them into waiting until the billing complaint period has expired.
First, I'm not freaking out, nor am I paranoid. I clearly stated that I believe that the most likely explanation is to be found with the reputable applications I granted access to.

Of course if I suspect an intrusion, I'm going to ensure that proper action is taken to cover all of my bases. I was planning a cleanup of my laptop anyway, so I may as well do it now.

Don't read too much into my changing the password on a wired desktop. It was one of the computers at hand, so I went with the most secure option, however unlikely it may be to make a difference (doing so didn't require any extra effort on my part).

> It's pretty simple to keep someone out of your email, don't give anyone the password.

This will be a moot point when Google will implement OAuth for IMAP.

PS: At this point, I believe it was a legitimate access by Etacts.
I built an app at the Launch hackathon last weekend that uses sound clips from movies. I'm concerned about fair use and the chilling effect that movie studios could have on using even tiny components of movies (sub 5-second audio clips, or, in this case, stills). Has anyone dealt with these kind of takedown requests first hand? Any war stories to share?
This article tries really hard to conflate conservatism with fascism
The markets may not be a casino, but they're not a level playing field either.
Only about 5% of published objections to any given use of this technology is grounded in real principle. 95% is situational based on which "side" will be tactically punished by the usage.

(Everyone will inevitably try to hedge their hedges with "But this situation is different/worse/xyz, it doesn't change the root objections. Elephant leading the rider.)
Not at the particular development, but everywhere in the city, which is what I think he was implying.

Imagine that the city started charging for the 'free parking' everywhere, either through permit schemes or parking meters, created photo enforced no stop tolling for major highways and busy commuting corridors and reduced property taxes w/ low income exemptions for the new driving fees.

You would get a revolt even with the tax reductions.

Small localized new greenfield experiments like this is not political suicide for a city to approve.
It's relevant because Epstein's death in prison wasn't extraordinary. I agree with White and Doctorow that the simplest explanation is the most plausible one.
They're not a startup.
> There are so many developers terrified of C.

I don't think even an above-average developer can make C work reliably. You absolutely should be terrified of C. And C++. Now, if you had said Rust, or Haskell, I might see a point to what you're talking about.
Without LBJ, we wouldn't have had the Space Program, the various civil rights bills of the 60s, or Medicare. He also escalated Vietnam from a minor conflict to a major disaster.

Most impactful President since FDR, easily, yet he doesn't get half the press of Reagan or Nixon.
> Huh? What is specific to Linux in this post?

Perhaps nothing? I was responding to the complaint in general terms.

> Your irritation is way off base.

Please allow me to feel irritated when people refer to obvious Linux things as something that's supposedly got something to do with Unix. It happens often enough.
I've been wondering the exact same thing for a long time. However, browser extensions could probably still use good enough heuristics. It's the pihole category of solutions that would be defeated.