skysight-inc/HackerNews huggingface dataset:
> Is this article against static type systems, or against runtime type checks? Or both...

It's not "against" anything. It's pointing out that "make impossible states unrepresentable" is poorly satisfied by most typed languages themselves. The more of the language you lift into the parser (decidable! easily-analyzable memory bounds!), the less you need to worry about types.

As a trivial case consider a language where `5 + ""` would fail typecheck. But why even get so far? Why does your parser accept `lit-term := lit '+' lit` and not `lit-term := [str '+' str] | [ num + num ]`, etc.
I switched to Rust for my high speed trading system with some C++ where needed. Not looking back.
> I find it really weird that the match expression is strict comparison, but everywhere else it's loose comparison. Don't get me wrong, I prefer strict comparison, and prefer strongly typed languages because of it, I just feel that this is a strange design choice.

What is "everywhere else"? You usually explicitly need to specify the type of comparison you want by writing either == or ===. "switch" is a case where the comparison operator is implicitly "==". "match" using "===" instead is one of the primary reasons for introducing it.

> In addition, the @ operator seems to have functionality changed, and there is plenty of other backwards incompatible changes to go along with it, and yet, one of the main reasons to not choice the @ symbol for annotation/attributes was because of backwards incompatibilities. Personally, I find the introduced syntax for attributes terrible, especially when @ is well recognised in the php community thanks to phpdoc annotations.

The only change to "@" is that it no longer suppresses fatal errors, which was generally not an intended or useful effect. The only thing this affects in practice are error handlers that don't check for error suppression being active correctly.

The "@" operator is still very much needed for certain use-cases (e.g. I/O functions may throw expected warnings) and removing it was not even a remote possibility for PHP 8, and as such also not a candidate for the attribute syntax.

It is worth noting that PHP uses the same attribute syntax as Rust does.
On second thoughts, maybe I underestimate developer productivity?
I believe it was Daniel Dennett who said, "You can't cut my mind from my body and expect to leave a clean edge"
Does PHP still has that weird flow where each request is its own process? afair PHP never had an http server baked in, I remember nginx with php etc ...
Ruby is extreme flexible in terms of metaprogramming in rails uses that very much. And ruby is not statically typed.

So if in rails you declare an active record model with belongs_to etc it's hard to keep track of what is really happening under the hood.

In php you have almost no runtime metaprogramming so the things that could happen if you read a piece of code are reduced to a smaller set of options that are easier to understand. well you have reflections but at least they are used in a more static way.
Yeah, I noticed too. Weird how your “more-correct” URL isn't the one used in the previous submission.

If I may, how did you end up on that article ? I like to notice patterns in post submissions and I wonder what led two different people to post the same content in a short window of time.
Nested virtualization including the ARMv8.4 improvements are present on Apple M1.

However, Apple's virtualization solution doesn't currently support those.
> And web extension development in general may be entering a dark age.

Was it ever not in a dark age? The overlap between FF and Chrome extension tech has actually existed for what, two years or so...?
it is written in your mind/body. you need to look back untill it is too late.
Ireland Bans Hugging
I always wondered what would be the cost around here, happy the doctors got you fixed.
Tech Is Your Bestie
It simplifies the expression of if/then/elsif/elsif/else, even if it's not total.

Why not steal it?
Well this was the reverse of a startup - an established company that had a working system, historically in Java, and then added a mixture of C++ processes, and Java-C++ interop libraries to improve performance.

Picking two significant languages as a start up is a bold choice.

Measurement and QA is everything in terms of performance.
School shutdowns have put children up to eight months behind in reading
I'll take it over YAML.
For some nuance: Safari is the best browser by far in terms of performance, memory, battery, and privacy, and as of late they are showing signs of change in terms of finally rolling in long needed features.

It definitely is the worst in terms of limiting all features that would make the web competitive with apps.
I wrote my own mini-Postman
https://gabrielsroka.github.io/APIExplorer/
First, anchoring is very real and humans judge things in comparison to others, especially when compared to unclear things.

I think that fairness is a factor in pricing and it’s not just an ROI calculation.

It’s like those epi pens that went up in price right? From an ROI perspective it’s great because you pay $400 and get to live. But know it costs little makes me think it’s less just.

Relative ROI is also important as we have to prioritize. GitHub seems a much better value to cost than this tool.

It’s perfectly fine for them to price however they like and it seems from their site that lots of companies pay this.
I’ll just pack a Wacom tablet too so I can draw and write on my laptop and leave my iPad at home then?
True, I might have been a bit unfair to him above. I mainly based my comment on my reading of the Tractatus logico-philosophicus, which I remember as being written extremely dry and in a similar style as the article. I have not read anything else by Wittgenstein (yet).
A tangential correction: it’s AWS Graviton (one “r”), not Gravitron (two “r”s). I used to misread it as Gravitron too initially.
Finally, after all these years, Named Arguments!

https://stitcher.io/blog/php-8-named-arguments
Agreed. Especially when the current common palliative treatment is to load them up with opiates such that they are asleep, high, or massively in pain and also constipated in the rare lucid moments.
I think they mean stuff in Laravel framework and Ruby on Rails. Like database access where you can just use it as an object without worrying about queries and such. This is great, gets projects up fast.... until you need to do something different. It generally comes at the expense of flexibility.
Did you try using the injector? Wrap the rom into a program, install, and then it’s just an icon to click to start.
Pattern matching has been proposed in a separate RFC: https://wiki.php.net/rfc/pattern-matching
AWS did something similar in the new EC2 console. Too much whitespace, too little information. I'm glad they iterated and improved information density.
This doesn't really address their point that opioids are somehow accepted in the public eye as a legitimate medicine but other drugs with both recreational and medical uses are not
Most major Linux distros run on ARM just fine, thats not the problem.

Undocumented custom Apple hardware with proprietary MacOS only drivers & locked up bootloader is the problem.
> I wish Digital Ocean would do something about the amount of abuse from their network.

Yes. After blocking the usual suspects, the great majority of SSH brute force attempts I see in my server logs now come from Digital Ocean IP addresses.
Highly skeptical of this explanation as this would mean about 90% of the US population is going bankrupt on the regular. No way this is true. Most likely just perverse incentives.
My aunt died of cancer a couple of years ago. She took an unorthodox treatment of extremely high doses of marijuana, which her husband encouraged. It was frustrating for the rest of the family since it was impossible to have a coherent and meaningful conversation with her in her final months. My dad and I had some doubt about it, but the decision was entirely in the hands of her husband because she was too inebriated to think for herself. I’m not saying it was a wrong choice necessarily, but there are downsides.
> Just don’t pretend there is a gray area in what this animals will be experiencing and what does this means in terms of their lives.

To reiterate, this is a fair assessment as per pain, stress. This is easily detected in the animals. Where a gray area exists to me is commodification, i.e. there is no reason to believe captivity in a safe environment would lead to some sort of existential crisis for the animals. There's a persistent argument from a sizable base that holding animals in captivity is inherently immoral, with sentience as the basis. This is the usual response to the notion that animals can and should be killed fairly painlessly/quickly without persistent stress.
Almost every domain registrar nowadays offers (usually for free) WHOIS Guard, which throws a very imposing barrier between your contact info and any random person.
to be fair, that entire article's premise is that 'the end of physics' is BS
Is there any way to force the use of ===
Curious if that's a general aversion to dynamic typing, or specifically PHP.
Does PHP have separate int and float types? NaN is a float value and I would expect 0 to be an int.
Rust improves on Java in that it doesn't have a GC, so no pauses, and the code gen is similar to C++ in terms of performance.

Rust is worse than C++ in that it struggles to express some idiomatic high-performance code architectures, such as using DMA for I/O, because they violate axioms of Rust's memory safety model, or in other cases because Rust currently lacks the language features. To make it work in Rust requires writing more code and disabling safety features.

Rust fixes many language design and performance issues with Java, while offering some similar types of safety, but (like Java) it is missing some elements of expressiveness of C++ that are important for high-performance architectures.
Making an Ubuntu 20.04 ISO that will boot on UEFI systems
There are a couple of search engines that do this. Sometimes when I get stuck on a underdocumented Python library, the big G will take me to one via a search on a method or constant. I can then see the code from other open source libraries/projects.

I don’t have any links saved, since they feel kinda sketch (ads all over the place). But it has been very helpful, unlike searching within GitHub for a string that I know is in the repo.
For the first time in <insert nany state or territory> history, <taxpayer funded solution> overtook <free market choice>.

Conclusion: free market sucks
The usual argument basically boils down to "gluttony and pride are deadly sins". You shall only consume/have/want the necessary minimum, any more is morally suspect, even absent objectively apparent problems.
Twitching with Twight
Like JSON5?
What I’m interested in, which may probably take years (or never happen well), is running Linux natively on these Macs after there’s no more macOS support from Apple. Typically Macs stop getting software support at around 7-9 years after first release. Hardware does tend to last longer and can serve some purposes beyond that.
Thank you for this tool! I think it's a cool idea. Also, it is private, for not sending any requests.

What I would love is the actual predicted number of points (I don't mind that the error would be quite large given the title alone, given that it is not overfit).
Then there’s something to revoke if necessary.
How should one start learning with PHP these days?

My experience: hacked together a few PHP scripts over the years to notify me of a website change (5 minute cron job). Before that, I was a very good beginner with VB6 back in highschool.

There are a couple of ambitious database-driven website projects I would like to create, but I don't know where to start. I like the KISS philosophy, and I think PHP and MySQL would fill that. Is there an obvious alternative that I'm missing?

I was thinking of hoing through the w3schools PHP turtorial. Is there a better or more up-to-date resource?
Ruby also raises an exception for a string coercion to an int when the string isn't an obvious int.
Where they could get you is how they can protect their "likeness." If you reduced the simulation to only functional aspects of the game, then I don't see how it'd be a problem.
Offline TD: Tower Defense Game Battle Strategy
Offline TD: Tower Defense Castle Battle Strategy is one of the great tower defense games that challenges experienced players like you!
That was certainly a concern. When instrumenting PHP to detect where the behavior changes and testing various codebases, I found that this actually happens much more rarely than I would have anticipated in advance. We're talking like 2 occurrences in the test suite of major frameworks.
If you only need to tweak websites, using a userscript manager is much more easier: https://addons.mozilla.org/en-US/android/addon/violentmonkey...
If someone wants to get fucked up and not remember, alcohol is the way to go.

Mushrooms are the opposite of “fucked up” they’re “tuning in”.
Same here, I started at the same time also with PHP.

But I never found back to PHP after switching to JavaScript in 2011. If something new comes out it usually runs JS.
Will Bitcoin Slump Back to $15,000 as Few Days Left for November?
but why all of a sudden languages started to add this? Maybe the function itself needs to be simplified, maybe there is a design issue. i am failing to see how "if else" can be simplified via a synth sugar.
Wow, that Protesilaos Stavrou guy has just so many interesting things on his web site. Gets me excited to just read about all the different cool projects and technologies.
Markdown files. Even better software that supports the concept of Markdown notebooks like Vnote. Organize your thoughts in a heading hierarchy.
This is beginning to change with the new Gutenberg editor and it's Full Site Editing, which is basically a site builder.
The cost of fixed-line broadband in 206 countries
Failed to meet deadline for release (not enough confidence that we can release without regressions) so release got pushed to next release window which is n - 1 days from now.

I imagine ideally we should use tags for release but for some reason we don't do that.
For your pleasure: rescinded. That was implicit in the post you quoted. Has this brought any value to you?

I'm not moving goalposts. I'm explaining my position.
Screen Space Refraction (SSR)
Apple Silicon will change a lot more than just the Mac
I've never seen that, how do you do it? Also, how do you deal with VM and scheduling?
Regardless of ethics, it would surely be illegal – no?
A few reasons. Note: I say this as a big outdoor recreator, so consider that bias.

1) the US has experienced a massive boom in outdoor recreation over last five years. All west coast campgrounds booked out months in advance (if they accept reservations), ski destinations never been busier, etc. west coast culture has a large outdoor recreation aspect, even if most people only do one or two outdoorsy things a year, their self perception is they are “outdoorsy”. Multiple neighbors have suvs so they can occasionally go camping. Could easily do it in a car but then you’d have to have a self perception that’s a closer match to lazy city dweller
2) external image. Related to above, I have observed coworkers purchase new cars and the perception of the car was important. One particular example was a coworker who got a minivan for family. Wife was miserable for six months because she was worried about being perceived as a boring mom. Finally took a 5k hit and traded it in on a new Subaru. They drive 4K miles a year, never go camping, but wanted to fit that west coast image of active family.
3) they are just more comfortable and can fit more stuff. You can get by without a truck and still haul bags of soil etc. there are some small hatchbacks that can work for this (loved my old Honda Fit, amazing storage for tiny car), but a hatchback suv makes this much easier
4) actually use it as intended. I consider this the least common reason, but some people load up their AWD suv with four people and snow shoe or cross country ski gear and get out every weekend. You can do this in a car (I’ve done it in all sorts of vehicles) but you are more likely to run into issues with a car.

I’ve had tiny cars, compact suvs, full size suvs, a van, and now a truck, and it’s hard to imagine not having an suv because they are so versatile if you recreate. Throw a topper on your roof rack, get a set of snow tires, and you can go almost anywhere in any conditions.
> We wanted something that was memorable but meaningless, so we could educate people as to what it means.

That is an incredible statement. I would think you’d want a symbol that represents danger to be intuitive.
Maybe artists think of it like a solid object and use the more stable orientation.
I use a parser to check for a non empty list return. It’s called a unit test.

All joking aside, what is the practical difference or benefit here to testing?
“At least in my experience it is definitely good for people to spend time directly with customers. I agree it may not be worthwile for a chip developer or a documentation writer to spend their full time on doing support - but a set amount of time, say four or eight hours a week? That's direct, unfiltered input from the customers where the documentation is either missing, unclear or buggy.”

I agree that direct experience with customers is good for many engineers. It is definitely not good for all engineers.

However there is a huge difference between professional customers and hobbyists.

You are now taking about a multi-tiered support organization.

You personally may be willing to spend 200 euros per hour for access to such an organization.

The question is, are there enough customers like you to justify millions of Euros in investment to build such an organization.

Starting from the hourly rate you personally think engineers should be paid gives exactly zero information about the demand, and therefore zero information about whether such a rate is meaningful.
The goal's not completely achieved yet, but my project's goal is to turn Microsoft Word into a WordPress like site builder for ordinary users. Here is a quick GIF demo: https://docxmanager.com/features/website-generator.html
> PEG in Python is the latest, [...]

The popularity of PEG baffles me. I guess it ties in nicely with the wider and older pattern of rejecting good formal language and parsing theory, but PEG seems like an all around bad technology; like, is there even a single benefit to using PEG?

The difference between PEG and the usual grammars is that PEG introduces special meaning to the "choice" grammar operation so as to define away ambiguity. But defining away ambiguity actually just "hides" language constructions that will be ambiguous to users. Although PEG notation may be indistinguishable from those used to define CFGs, PEG sucks as a language specification tool as it is unclear what language a PEG defines (unlike with CFGs). From the perspective of implementation, PEG parsers backtrack, meaning either exponential run-time or additional linear memory requirements.

Also some Jeffrey Kegler quotes:

> With PEG, what you see in the extended BNF is not what you get. PEG parsing has been called "precise", apparently based on the idea that PEG parsing is in a certain sense unambiguous. In this case "precise" is taken as synonymous with "unique". That is, PEG parsing is precise in exactly the same sense that Jimmy Hoffa's body is at a precise location. There is (presumably) exactly one such place, but we are hard put to be any more specific about the matter.

and

> When you do not know the language your parser is parsing, you of course have the problem that your parser might not parse all the strings in your language. That can be dealt with by fixing the parser to accept the correct input, as you encounter problems.

> A second, more serious, problem is often forgotten. Your PEG parser might accept strings that are not in your language. At worst, this creates a security loophole. At best, it leaves with a choice: break compatiblity, or leave the problem unfixed.
and

> PEG is not unambiguous in any helpful sense of that word. BNF allows you to specify ambiguous grammars, and that feature is tied to its power and flexibility and often useful in itself. PEG will only deliver one of those parses. But without an easy way of knowing which parse, the underlying ambiguity is not addressed -- it is just ignored.
Maybe they did all buy in. But it’s good to remember that they were only paid to “seem to” buy in.
Most cars are bought used. A new car is not very economically sound purchase decision unless you are pretty well off. The buyers of these new cars don't care much about fuel economy or CO2 emissions, and want a lot of car for their splurge investment. So the makeup of the vehicle population is chosen by a relatively irrational and/or affluent minority of car users.
You could include caveats into that blanket generalization.

Take France, which is just next door to Germany. Electricity cost is easily half of Germany's, and CO₂ emissions are about one fifth.

I've gone from 50 €/month on diesel fuel to 10 €/month on very low CO₂ electricity.
Also, due to increased thickness of doors and frames for safety, car interior space has shrunk over the last decades. So you need a bigger car if you want the same amount of interior space for your head/feet/arms/groceries.
We know that some components of a chip benefit more from die shrinkage than others. Intel is having yield problems with die shrinkage. Chiplets are a thing.

I can’t for the life of me figure out why Intel hasn’t already hedged their bets and started working hard on hybrid chips. Especially since this now appears to be a long term industry direction. If the next step blunts the consequences of your current problems, why not jump on it?

Sunk cost fallacy?
you count, but not what im looking for :)
Sorry, I missunderstood what you were writing.

Yes, it doesn't look like they took special attention to WordPress when developing PHP 8.
Apple started putting the T2 chip in the Macs 2 years ago. I suspect they plan on locking down the platform soon.
one benefit of match over switch is that it uses === and not == internally. So it does not suffer from type coercion problems.
No problem at all. Sadly we have quite a few of these style of tabloids in the UK.

Many of the negative, highly polarising affects of social media that people complain about today have been visible in certain segments of the UK press since the Westminster Gazette invented the term in 1901...IMHO. :(
https://www.healthline.com/health/list-of-emotions ?

As the above linked article points out, "Keep in mind that this is just one way of categorizing emotions."

Some emotions don't have English names!

It's been said that each muscle in the body has a corresponding emotion in subjectivity. Look up something called "Body Scan" meditation, it might help you get more in touch with your emotions.
It's a switch statement that's an expression. That's a nice ergonomic improvement when you want to assign the result to a variable. Especially as it allows you to use a non-mutable variable whereas otherwise you'd have to make it mutable.
Keep hacking, learn from your own mistakes, do this for 10 years. By the end of that time you should, for example, understand why we use Postgres instead of MySQL. :)
> you're planning to attach a keyboard to your iPad most of the time, just get a MacBook Air instead.

Bullshit.

I shouldn’t have to buy two functionally equivalent pieces of hardware just to use two different operating systems.

At this point the hardware is the same damn thing. Disable touch input on macOS if you really want. But having to purchase and carry two pieces of virtually identical >$1000 hardware is absurd.
The irony:

"I write this not because I expect to break any new ground—all the techniques I use here are long-documented in the literature, and Haskell veterans will probably find little new in this post"

Yet I can't get rid of the feeling the article is written in a way only "Haskell veterans" are able to follow it :-)