Hacker News .hnnew | past | comments | ask | show | jobs | submit | jasperry's commentslogin

Excited to see another project targeting the QBE back end, from what I can tell it's a great lightweight alternative to LLVM.

Yes it has been fantastic to work with QBE so far. It's way simpler than LLVM, giving you about 70% of the LLVM performance, for 10% of the effort. :)

Only downside is Windows support.


Unfortunately the QBE code is really strange so if you need to make some changes yourself it probably won't be very fun

That's good to know. Can you point to an example?

This is super useful, thanks. So if I were implementing a programming language, and wanted to have symbols to specify NaN in source code, I'd really only need quiet NaN, right? Because signaling NaN is supposed to always to raise an exception anyway?

I originally implemented Signalling and Quiet NaNs in the compiler. It was an abject failure. With all the transformations a compiler does, where the signalling turns into a quiet is lost. So just quiet NaNs are used.

This is some of the most useful information I've received in a while. Like the author, the low overdose threshold of acetaminophen made me avoid it, even though I always take low doses anyway and ibuprofen gives me acid reflux almost every time.


Still take it with a huge grain of salt. Even official advice usually has severe limitations due to its broadness or straight politics, so medical analysis from random blogs truely isn't the best.

Acetoaminophen also has issues for people with weaker stomachs (I can attest), and will come with additional medication to cover these effects as needed. The whole "Is it safe yes/no" table has many asterixes and might be outright false depending on the how you look at it.

As usual, it's just complicated.


Never take anything that written on the medications with a grain of salt. Disregard everything that you have read online. The medicine instructions are your single source of truth


Is the salt supposed to offset hyponatremia or something?


Same here. Great article.

I avoid both and stick with naproxen sodium. Any issues with that one? Lasts the longest too.


Both ibuprofen and naproxen sodium are NSAIDs and are bad for your kidneys especially in long term. I had kidney failure due to what was eventually diagnosed as an autoimmune disease but they first thing the ER doctor will ask is if you have been taking NSAIDs. My nephrologists told be its still safe to take acetaminophen at the proper dose.


None of us are your doctors but Naproxen has well-known gastric issues up to ulcers and stomach bleeding which is why it's advised to be taken with food and why it's also often prescribed with a PPI or H2 Antagonist. Cox-2 selectives such as Celecoxib greatly reduce this risk but seem to be associated with some small cardiovascular risk (admittedly this is a feature of all NSAIDs though less so in Naproxen apparently).


Cardiovascular risk increase is not a feature of aspirin, the original NSAID. Aspirin lessens cardiovascular risk which is why we give it to patients in the initial stages of a heart attack: It decreases the likelihood of further clotting.


Some believe naproxen sodium is worse for you because it lasts longer. Longer duration for reduced mucous membrane coverage in your stomach and intestine. Longer duration for reduced blood flow to your kidneys.

I would definitely have a chat with a doctor about it.


I had to use naproxen for some time as most effective way to control inflammation. Actually the only way, ibuprofen had some effect only in horse dozes. After visiting doctor, analyses, checking available sources was able to eliminate the reason of inflammation. Apparently it was a well known problem/solution. So far so good. Not sure about the long lasting effects of naproxen use.


Looking at the Wikipedia article, it seems naproxen is a NSAID like ibuprofen and can cause all the same gastrointestinal issues.


Naproxen sodium has much higher risk of GI damage especially with long term use.


All the over the counter NSAIDs have a similar safety profile.


wait, how are you getting naproxen?

Whenever its prescribed here, its paired with some sort of intestine protection medicine to stop it burning holes in your stomach/intenstines

Ibuprofen is much safer, so long as you eat with it.

Paracetamol is also safer, so long as you don't OD.

BUT! so long as you stay below 4 grams a day, you'll be safe. (yes yes, in some situations you can take double, but unless you are under supervision, thats asking for liver pain.)


In the US, Aleve is the name-brand pill for naproxen, available in grocery stores next to everything else. I have a bottle of 160 gelcaps. Each pill is 220mg naproxen sodium or in parentheses 200 mg of naproxen. The advertised effect is 12 hours / all day, getting anywhere near 4g would only happen in a suicidal "swallow bottle of pills" situation.


GP meant 4g is the safe limit to paracetamol (hence "liver pain"). About 8 typical doses over 24 hours. It's little known amongst the general population, who have the occasional extreme of people taking double doses every few hours


So its a bottle, not a blister pack?

wild.

I know that blister packs are a pain, but in the places that they are introduced they reduce pill based suicide by up to 40%[1]

Sorry I should have been more clear about the 4g, that was for paracetamol. I have no idea what it would be for naproxen

[1] https://pmc.ncbi.nlm.nih.gov/articles/PMC526120/


That combo is naproxen/esomeprazole. The brand name is Vimovo, but they don't have a patent, so you can get it as a generic. To work, though, it has to be taken 30 minutes before food.


Does anybody know whether Fortran is older or younger than Algol? From Wikipedia, it looks like they were both developed around 1957. Was there any overlap in the design?


Algol was published in 1958, and FORTRAN in 1957. I think it's fair to say they were developed concurrently.


I don't know of any algorithm to cull non-winnable Klondike games. Playing deal-1 instead of deal-3, and with unlimited flipping of the stock, the win chance is probably close to 50%, but that still makes 2000 in a row statistically impossible.

My guess is that the poster's mom was actually playing FreeCell, in which nearly every game is winnable and people do get streaks like that.


You don't need an algorithm. You can just record seeds that are solvable. The current version of Klondike in MS Solitaire is winnable unless you play "Random" difficulty.


It’s quite doable, if you don’t mind culling some winnable games too. The object isn’t to have a perfect classifier.


Even though I hadn't thought about xv in decades, as soon as I read the headline, the image of those 3d buttons with the crisp outlines resurfaced from my memory.


Those are functional languages that generally don't use statements, so it makes sense to leave them out of a discussion about statement separators. If you think more people should use functional languages and so avoid the semicolon problem altogether, you could argue that.


Functional hardly matters Haskell has plenty of indentation which is by the way interchangeable with `{ ... }`, one can use both at one's own pleasure and it's needed for many things.

Also, famously `do { x ; y ; z }` is just syntactic sugar for `x >> y >> z` in Haskell where `>>` is a normal pure operator.


Yet, the author ends with a half-backed clone of the Haskell syntax.


Indeed it does, by showing how many different and confusing types of parsing rules are used in languages that don't have statement terminators. Needing a parser clever enough to interpret essentially a 2-d code format seems like unnecessary complexity to me, because at its core a programming language is supposed to be a formal, unambiguous notation. Not that I'm against readability; I think having an unambiguous terminating mark makes it easier for humans to read as well. If you want to make a compiler smart enough to help by reading the indentation, that's fine, but don't require it as part of the notation.

Non-statement-based (functional) languages can be excepted, but I still think those are harder to read than statement-based languages.


Lisps aren’t necessarily functional, but don’t need semicolons either.


The syntax of languages like Lisp and Forth are so fundamentally different that they don't need an explicit statement separator. You don't have to think about many other things either, or I should say you don't have to think about them in the same way. Consider how much simpler the order of operations is in those languages.


Lisp has explicit "statement" terminators (just aren't semicolons)


All the lisps I know of have only expressions (no statements).


It turns out Palpatine returned!


I've looked into TextAdept a few times. It appeals to me because it's got a standard Qt UI, is fast and lightweight and highly customizable with Lua. But I could never commit the time to fully customize it for daily use. Anyway, I'm committed to emacs. Other Scintilla-based editors with a similar feel (but missing the Lua angle) are Geany and Kate.


Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: