Hacker News new | past | comments | ask | show | jobs | submit | getfroggie's comments login

I find the zero safe level needlessly shock oriented.

Many things have no safe value but a low level is less likely to play a major role in a life than another risk.. Cars, guns, opioids, suicide, cancer, maybe the last two have a minor lead influence, mostly outweighed by alcohol.


you do realize that other things have a no safe value...opioids no doctor can predict which dose of opioid produces the addiction...opioids first use was for pain medication for those with terminal diseases

It's kind of strange that spreadsheet languages don't support money well. Using spreadsheets for escalator style automation is actually quite good and would really be amazing in a language that took typing seriously.

I think there's a good reason for it to be part of a library. The problem with currencies is much like dates: they're a social construct, and change more than most of the social constructs we embed in programming languages.

I don't want to update my interpreter or compiler because Turkey changed their rules of daylight savings time, or Ethereum becomes popular.


Oh, this reminds me of my first job out of college at a Swiss bank. Apparently every time a currency conversion was done in a particular model, there was a routine that translated back and forth between the pre-Euro currency and Euro at the conversion rate. So a USD-EUR transaction with a party in France would be run as USD-FRF --> FRF-EUR. All in COBOL. As a result, every so often, you'd get a slightly different result running a USD-EUR trade with a party in France versus e.g. Germany or the U.K.

So what happened when those discrepancies arose?

They became the basis for the plot of Superman III

> what happened when those discrepancies arose?

They were just passed along.


Yes, and sometimes the context is not just social but legal or contractual, e.g. rounding currency.

Yes, and rounding currency is just something that is always handled, as is the number of places that you take a currency out to - for example, gas is often priced at thousandths of a dollar rather than hundreds but presented to the customer in hundredths at the end. Or Yen in most cases does not have a decimal point, except that the places where you round or don't round can be consequential in large enough quantities.

These are largely things that can be handled by a library, but if it's in the language you best not get it wrong because it's so much harder to change!


From my perspective those are tenths of a cent. Stripe has integer values for cents.

Am I wrong here?

https://stackoverflow.com/questions/35326710/stripe-currency...


You could say the same of Unicode, though. Some cultural abstractions become increasingly rigid because they’re embedded in computer systems everywhere.

This. But more than being changeable they (time and money) are supra-logical or trans-rational. In other words, computers are limited to what can be modeled or calculated with the one logical operation (it has lots of names, I like "Quine dagger") but these phenomenon are not.

I couldn't agree more as someone who has been using more spreadsheets than actually coding in the last 10 years.

Spreadsheets, browsers, databases.

Everything is decided to be an 'abstraction' and it's someone else down the line that has to be concerned. Over the last 30 years of starting as a developer I've really lost faith that the majority are actually concerned with solving anything vs just indulging conceptual whims.


> Spreadsheets, browsers, databases.

I think you're mixing up stuff that's unrelated to your concern.

The concerns you're expressing only apply to operations and financial transactions. That's not handled by spreadsheets, browsers, or databases. In fact, the primary concern of a browser is to provide views over data fed by servers.

In addition, it sounds like you're confusing minor conveniences with something being somehow broken by design. The reason why no one bothered to standardize a money type is the fact that there isn't a technical requirements for it at all.


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

Search: