HackerTrans
TopNewTrendsCommentsPastAskShowJobs

lapinot

no profile record

comments

lapinot
·hace 4 meses·discuss
Indeed, and based non-extensive, one sample approximate average testing, my own bank works like a charm on GOS.
lapinot
·hace 9 meses·discuss
In the error monad NaN = NaN (or Nothing = Nothing or None = None, depending on your terminology) because mathematical equality is an equivalence relation. There are many foundational debates about equality, but whether or not it is an equivalence is never the question.

The root of the problem, completely overlooked by OP is that IEEE 754 comparison is not an equivalence relation. It's a partial equivalence relation (PER). It does have its utility, but these things can be weird and they are definitely not interchangeable with actual equivalence relations. Actual, sane, comparison of floating points got standardized eventually, but probably too late https://en.wikipedia.org/wiki/IEEE_754#Total-ordering_predic.... It's actually kinda nuts that the partial relation is the one that you get by default (no, your sorting function on float arrays does not sort it).
lapinot
·hace 2 años·discuss
> so not exactly the kind of thing you'd notice making a document

By "user interface" I mean (like Martin, in the linked video) the surface language, the way you interact with TeX, its syntax and how it presents itself to the user, the programming model. So definitely the kind of thing you'd notice making a document. Leaky abstractions and footguns are basically everywhere when you write a big LaTeX document.

> I mean TeX is basically an overpowered lambda calculus with a focus on text markup and generation.

No, lambda calculus has capture-avoiding substitution, aka hygienic macro expansion if you will. TeX has naive substitution. By the way, macro expansion is typically CBN, which is very much a rare and weird evaluation order (yes, Haskell, i know). TeX is much closer to some kind of assembly language for a virtual machine.
lapinot
·hace 2 años·discuss
The user interface / language design. See talk "LaTeX: It's Not You, It's Me" by Martin Haug (cofounder). TeX's language design is at the level of Basic's. Which is in fact not surprising given the timeframe.
lapinot
·hace 2 años·discuss
Speed and nice error messages in (La)TeX, and to some extent ease of programming, are entirely doomed because of fundamental design choices. Being based on unhygienic macro expansion means that there is only one way to evaluate (the slow way), there will never be incremental compilation (everything can possibly be stateful in horrible ways), there will never be good error messages because there's basically no AST information anywhere (begin/end is a joke).

Regarding ecosystem: tons of undecipherable LaTeX packages are basically one-liners (ok, 10 liners) in typst. I know it from experience: I've written my PhD manuscript in typst. So perhaps one reason why there are so many (basically frozen) packages in LaTeX is because they are so hard to write and maintain.

edit: of course, being only a few years old, typst is nowhere near as solid as TeX, but you can already use it for a lot of things and its a breeze to use.
lapinot
·hace 2 años·discuss
This! My first actual project (besides some testing) has been my phd manuscript, and after ~2 days i actually had a tufte-style 1.5 column layout going, written from scratch. And its probably like ~250 lines.

There are some rough edges still, the dom model and advanced programming stuff is not quite there yet (user-defined elements, user-defined settables, advanced layout like chaining blocks for laying text flows). But like the quality of the user interface is several orders of magnitude better than (La)TeX.
lapinot
·hace 2 años·discuss
There are 3 syntactic modes in typst: markup, code and math. In markup, everything is literal, unless you put a `#` sigil like `#expr` in which case `expr` is parsed in code mode. In code mode everything is an identifier, as usual in programming. In math its a bit of an ugly tradeoff but its ok: single-letter things are parsed as literals but multi-letter tokens are parsed as identifiers. Finally, in code you can enclose in `[...]` to parse in markup mode. So typically, your document will be mostly in markup mode and you will encounter stuff like `#something[An argument]`, which is a function call to which you pass one content-typed argument.

So above, `y` is parsed as literal, while `dt` is parsed as an identifier, hence function call.
lapinot
·hace 3 años·discuss
Obviously! Assassination or imprisonment could also be considered censorship and tor or tails won't help. There are always edge cases. They are pretty explicit about their threat model and go into great lengths explaining it.

https://tails.net/doc/about/warnings/index.en.html
lapinot
·hace 6 años·discuss
Sure but it hurts a bit to run a tunnel on top of another tunnel, and since you have to run wireguard as-is, you still have to do the static ip thing. It's a bit insane to have ethernet > udp (l2tp) > ip > udp (wireguard) > ip > ethernet. That's at least 128 bytes overhead per frame (udp/ip: 2*48, l2tp: 4, eth: 14, wireguard: 14).
lapinot
·hace 6 años·discuss
Also icmp, ipv6 brings a lot of new things to the table in that realm. I already said it above, but the neighbor discovery protocol is quite useful to do dynamic in-band configuration. icmp is over ip, but it's not useful if the ip link is already managed by the tunnel protocol.
lapinot
·hace 6 años·discuss
Yeah, i hear about that regularly but didn't look into it. I must say i'm not really happy about the whole business thing. The arch wiki says you need an account, i'm not sure if that is true but if it is, it's a non-starter for me. If you have good technical refs to prove me wrong i'd be happy to hear.
lapinot
·hace 6 años·discuss
I really like wireguard, but one thing that bugs me is the fact that it's layer 3 (an ip tunnel) and has no code to support layer 2 (ethernet MAC tunnel). The downside for me is that you have to manage static ips in the configurations (specifically it's not compatible with ipv6 slaac and NDP). There is https://git.zx2c4.com/wg-dynamic but it's very experimental at the moment.

The level 3-only tunnel is motivated as "the cleanest approach for ensuring authenticity and attributability of the packets" (in the whitepaper), but in fact every claim and routing algorithm described (needed since the tunnel is many-to-one) would work equally well substituting "ip address" with "mac address" (i may be missing something, but for sure it's not explicit anywhere). And indeed imho it would be less surprising to have an "allowed mac address" option in the configuration than an "allowed ip address": it's already common practice to white-list mac address of physical endpoints (in office). I'm toying with the idea of forking the driver code to adapt it to ethernet frames as i don't think it would need any big rewrite but i'm realizing my inexperience in writing kernel code.
lapinot
·hace 7 años·discuss
Yeah right, i'm sure BK is really putting a lot of money into small family businesses with diversified farming light on the ecosystems using no herbicides/insecticides, and not mega food-industry with fields that have thousand of hectares of a single crop and get farmed using a whole fleet of huge diesel machines, get a load of pharma chemicals dropped on their head preventively to make sure no other life form gets to survive in that field.

I'm picking on you now but it fcking freaks me out how this whole page seems to feel concerned about "healthy food", "veganism", "ecology". This is a fast-food mega-corp, they are part of one of the ugliest side of the already disgusting industrial food chain. They are right on incompatible with any kind of healthiness you could imagine (of human beings, of crops, polinators, overall countryside ecosystems, farmers). Hey, fast-food/sweet-drink business uses the same marketing strategies than tobacco groups. Or pharma. These are the people that created all the massive public health issues we've got since say '50s. Cancer, diabetes, obesity, one-off epidemics (h5n1, h1n1, mad cow...).

And i didn't even start talking about work conditions or economic aspects of these bastards (the corps, not targeting any individuals here).