krzysz00

Joined 15 years ago

Karma
185
Submissions
42
Member since
Apr 2
krzysdrewniak <AT> gmail <DOT> com
View on Hacker News

Recent submissions

Comment · 9 months ago
This does seem to align decently well with, for example, the policy the LLVM project recently adopted https://llvm.org/docs/AIToolPolicy.html , which allows for AI but requires a human in the loop that understands the code and allows for fast closure of "extractive" PRs that are mainly a timesink for reviewers where the author doesn't seem to be quite sure what's going on.
Comment · 5 years ago
Comment · 10 years ago
There's also [libflame](https://github.com/flame/libflame) by the same group, which is a higher-level API for matrix computations. The library's API si such that you can derive an algorithm (along with its proof of correctness) on paper and then translate the notation of the proof directly into code.
Comment · 11 years ago
Comment · 11 years ago
I'm not sure what you're getting at. More of what?
Comment · 11 years ago
Comment · 11 years ago
I guess one interpretation of Erlang's = (this is from someone rather new to the language) is "Make the thing on the left equal to the thing on the right without mutating existing variables. If that's impossible, error". That nicely accounts for the apparent dual nature of the = operator.
Comment · 11 years ago
Well, every base has issues with non-termination. In base 10, we have problems like 1/3 = 0.33333... . Base 2 has its own set of non-terminating decimal expansions, including 1 / 3 = 0.01010101... and 1 / 10 = 0.0001100110011... . Since we only have finite storage space, we have to cut the repeating string of digits off somewhere, no matter what base we're in. This can cause rounding issues.

You can't dodge all your rounding problems by changing base. There are binary-coded decimal (BCD) systems that store numbers as strings of decimal digits. You can generally find these in calculators (ever notice that a TI-84 overflows after 9.(9)e99) or some financial software. However, you'll still have problems like the 0.1 * 0.2 issue in binary floating-point. For example (assuming shorter-than-usual numbers):

2/3 = 0.66... ~ 0.66667

2/3 + 2/3 ~ 0.66667 + 0.66667 = 1.33334

However, 4/3 = 1.33333... ~ 1.33333, which isn't the same result.

Basically, you can't get away from this problem, you can only push it around to cases you care less about.

(You probably can't find an API for binary-coded decimal in $LANGUAGE unless $LANGUAGE is often used for tasks where you really really don't want any float-related gotchas since most everyone else doesn't care too much).

Comment · 11 years ago
If by "decimal numbers" you mean the reals written in base 10, how do you propose we precisely represent the result of 1 / 3 . Or pi?
Comment · 11 years ago
The feature is rather useful for record-keeping purposes (also known as CYA).
Comment · 11 years ago
As this comment's uncle pointed out, you can probably find a "fill in the blank" DMCA notice somewhere on the net.

If that doesn't work, many lawyers give free consultations (AFAIK), and there's probably someone willing to take the case in exchange for X% of the settlement.

Comment · 11 years ago
Could you use a DMCA-like thing to get them to stop doing that?
Comment · 11 years ago
You probably need a font that covers the relevant ligatures. Does "fi" display for you? That's the Unicode codepoint U+FB01.
Comment · 11 years ago
How do you change your negative sign on a unixoid? The only reference to negative signs in locale(5) is under LC_MONETARY.
Comment · 12 years ago
I'm pull request #36.

Live from the official Hacker News API

A modern reader for Hacker News · SvelteKit + Skeleton