HNHacker News
TopNewBestAskShowJobs

zodiac

1,904 karma · joined November 18, 2012

Just your average fixed point combinator

www.xuanji.li

[ my public key: https://keybase.io/xuanji; my proof: https://keybase.io/xuanji/sigs/YyOVzG7h-Ip1eEcZdfnsvWckOKvnM-6b09PfP3q-9Y0 ]

hi

submissionscomments
zodiac··on Division by zero in type theory: a FAQ
The extended reals can also arise directly from the definition of reals either as Cauchy sequences of rationals (as unbounded increasing sequences, etc) or Dedekind cuts (let the lower cut contain all rationals) :) for reals IIRC the main reason to exclude the extended reals is to make it a field.

However I don't think any of this matters for the point the article made. The problem is not that 1:N/0:N has "nothing sensible" to return, the problem is that if you define it in the way most mathematicians do, a lot of your proofs will be littered with (inline) lemmas showing that the result of such-and-such a division is a finite natural / finite real. This is analogous the problem brought up in the article of having proofs littered with lemmas showing that the result of such-and-such a square root was real.

zodiac··on Division by zero in type theory: a FAQ
Mathlib does indeed define the extended real numbers, but they also need to define division on the reals. This is similar to the definition of subtraction having to be done for integers and for naturals (mentioned in the article)
zodiac··on Sphere Eversion
I'm not sure what sense you're using "the same" in. Eg a cylinder can be transformed into a mobius strip (in 3d space) by cutting and gluing, but if we allow only self-intersection, this can't be done. To me this shows that they're not "the same".
zodiac··on Sphere Eversion
If you think the constraints make it trivial, try producing a solution with the same constraints. (intersection allowed but pinching and cutting not)
zodiac··on How well do cars do in crash tests they're not optimized for?
You can cycle at 15mph and have a car crash into you at a much higher speed
zodiac··on You might as well be a great copy editor
> How am I supposed to know "offensively excessive" wasn't the intended meaning here?

I'm guessing if it were the intended meaning, "but" would be incorrect in "Republicans will not like many of these proposals, but they have been fulsome in their praise of Mr. Trump since his election"

zodiac··on Companies Pitch Shortwave Radio to Shave Milliseconds Off Trades
If you make a decision to join in the (say) the 5th ms of the batch auction and you have a latency of 1ms, you are still no worse off if you decide to wait 4ms before joining the batch.
zodiac··on Companies Pitch Shortwave Radio to Shave Milliseconds Off Trades
Well, think through some toy examples. Suppose there is a market without order matching (again, toy example) and one market participant enters an extremely mispriced order, so the first person to fill that order wins. Even in the presence of random delays, the participant with the lowest-latency connection has a higher chance of filling the order than anyone else. (There are other anomalies, e.g. participants are now incentivized to have as large a number of distinct connections and hence "chances to roll low" on the randomized delay as possible).
zodiac··on Companies Pitch Shortwave Radio to Shave Milliseconds Off Trades
This mechanism ("batch auctions") are not immune to rewarding low-latency connections. The details depend on the exact auction mechanism but the general idea is that you want to join the batch as late as possible (at any moment in time when you make a decision to join the batch, you are never worse off if you wait a while before joining) and low-latency connections can afford to join later.

In fact with your exact proposal, assuming everyone has a connection with at most (say) 50ms latency, no one will join the batch in the first 50ms, which (I think) magnifies the low-latency advantage.

zodiac··on GitHub Super Linter: one linter to rule them all
My experience was that it used to be bad specifically because of the bad interactions with WSL (1)
zodiac··on GitHub Super Linter: one linter to rule them all
Regarding "cross-platform": Docker for Windows used to be really terrible IMO (relied on VirtualBox, did not translate WSL paths, etc). I never managed to get the networking between VirtualBox, WSL and applications (e.g. Chrome running in Windows) working properly.

Thankfully Microsoft rewrote WSL 2 in a way that makes it work much better with Docker.

zodiac··on Deciding to do morally risky work (2019)
I think the OP is concerned with the question "how do I create incentive-compatible moral codes", not "how do I behave given a moral code". In economics theres lots of cases when these two questions are very different questions in a pretty counterintuitive way (except with "laws" replacing "moral codes")
zodiac··on Deciding to do morally risky work (2019)
Those actions are all really illegal...
zodiac··on A History of Clojure [pdf]
Well, it depends on your exact definition of "self-modifying code" and "metaprogramming", given that it's not like there's an authoratative source you can look up the definitions in. The way I understand the term without additional context, XLST is not "self-modifying code" in the same way malware, certain JIT implementation techniques etc are.
zodiac··on A History of Clojure [pdf]
Both "self-modifying code" and "metaprogramming" don't mean exactly the same thing to me as "homoiconicity"
zodiac··on How to Safely and Ethically Film Police Misconduct
I know it's a weird choice of words, but I think the headline uses "ethical" to refer to "non-interfering" (e.g. see section 2 of the article)
zodiac··on The radix 2^51 trick (2017)
This reminds me of "zeroless number systems" or "bijective number systems" (https://en.wikipedia.org/wiki/Bijective_numeration#The_bijec...) - in the language of the article, the allowed digits in base 10 are 123456789A. Note that 0 is not an allowed digit.

For instance here are the first few natural numbers in this system: 1,2,3,4,5,6,7,8,9,A,11,12...

I first read about them in Chris Okasaki's purely functional data structures book, they have some applications in terms of designing data structures (e.g. combining perfect-powers-of-two sized heaps to build heaps of arbitrary size).

They're conceptually interesting too, being a positional number system with no redundancy (exactly one way to represent each number) and without 0. Since the concept of a 0 digit is not required, one could argue that it's conceptually easier for e.g. a classical Roman mathematician to learn this than the positional system we do use today.

Also, excel's system for numbering columns uses this - A, B, C, ... X, Y, Z, AA, AB ...

zodiac··on The Ten Commandments for C Programmers (1987)
It's not even correct - "thy arrogance" should be "thine arrogance"
zodiac··on Students are failing AP tests because the College Board can’t handle HEIC images
Imagine trying to upload a heic file to (say) Amazon s3 through their web UI and having it converted to JPEG.
zodiac··on Singing is the most accessible stress reliever
The parts are recorded at separate times
zodiac··on Singing is the most accessible stress reliever
I saw someone on a facebook group for choral directors who got 10ms latency over 30km. It can be done but requires somewhat specialized hardware (ethernet cable to the router, external audio interface and mic), network setup and software
zodiac··on Quadratic Voting
I think research into voting systems like this shouldn't be read as coming from a point of view of "we have the correct objective function we prove that our system is unequivocably optimal under this objective function". Rather the objective function is a "toy model" which we understand does not capture all of reality, but hopefully captures enough of it to provide some interesting insight.

I mean, obviously policies and outcomes at stake in any voting system are subjective, so that's an objection that can be levelled against any objective function, but that includes anything you choose as well. E.g. if you say that your objective function will be to minimize the risk of participants getting dissatisfied enough to violently go out of the system (i.e. revolt / civil war), well, one-person-one-vote can fail like that too; who's to say that that system is really optimal with respect to this objective function?

zodiac··on Deep Learning for Guitar Effect Emulation
In the context of e.g. offline video encoders "1.9x realtime" is a statement about throughput, not latency
zodiac··on Ray Tracing with POV-Ray: 25 scenes in 25 days (2013)
IIRC pbrt and renderman do
zodiac··on Ray Tracing with POV-Ray: 25 scenes in 25 days (2013)
You can have physically based rendering with those non-triangle primitives too!
zodiac··on A Critique of React Hooks
Honestly? Maybe it is, maybe it isn't. Imagine replacing "algebraic effects" in your question with "exceptions" - theres no clear answer. What do you think?
zodiac··on A Critique of React Hooks
I personally don't use hooks (or functional components) at all, but recently read this post from Dan Abramov about algebraic effects which makes a point (among others) the hook mechanism is a pretty simple way to implement state/effects/context in a language with algebraic effects.

https://overreacted.io/algebraic-effects-for-the-rest-of-us/

zodiac··on Ladder of Algebraic Structures
Why not call the DNA to RNA enzyme reverse transcriptase and the RNA to DNA one transcriptase?
zodiac··on Tell HN: C Experts Panel – Ask us anything about C
No, the optimizations referred to include those that will make the program faster when N=100.
zodiac··on Covid-19 twice as contagious as previously thought – CDC study
Nitpick: changes in the number of immune people change R, not R0
← PreviousPage 4 of 27Next →