Y
HN Search
Hacker News Search
new
|
comments
|
top
|
jobs
evmar
searching PlanetScale…
1.
▲
2.
▲
3.
▲
4.
▲
5.
▲
6.
▲
36 ms
·
361.
▲
by
evmar
8y ago
That is exactly right.
362.
▲
by
evmar
8y ago
The mastermind behind our TypeScript project commented on this topic here: https://news.ycombinator.com/item?id=17896925 I used to tinker a lot with OCaml around 13 years(!) ago. It's neat to see people are still work
363.
▲
by
evmar
8y ago
This idea is probably worth a post of its own. I believe that because TypeScript's type system is effectively advisory rather than guaranteed ('unsound'), you cannot rely on it for optimization unless you're willing to
364.
▲
by
evmar
8y ago
I couldn't tell from your wording if you knew this already, but we wrote a JS->TS converter too. I didn't call it out very clearly but it's the second to last link in the post. I am really sad that TypeScript gave up on t
365.
▲
by
evmar
8y ago
The "Pocket" extension required something similar so I built my own: https://chrome.google.com/webstore/detail/save-to-pocket-min... However it seems to maybe have broken recently (only on some of my dev
366.
▲
by
evmar
8y ago
The first footnote (numbered 1) in the PDF defines these terms.
367.
▲
by
evmar
8y ago
I agree. It's a spectrum and my Python example is showing one extreme of obviously unimpressive. I was just trying to answer the comment I was responding to.
368.
▲
by
evmar
8y ago
Perhaps he meant "write an app that uses an HTML rendering widget that also has the networking components built in"? In the old days of Chrome you'd occasionally see WebKit engineers griping about how Chrome was taking all th
369.
▲
by
evmar
8y ago
The point is that this app is 500 lines of C but it'd be two lines of Python: from wayland import solution_to_the_problem solution_to_the_problem() In this case, wlroots is literally a library for writing a compositor. (&q
370.
▲
by
evmar
8y ago
On launch this was one of our banner features in Chrome -- full text search over your browsing history. I wrote some of the code. I believe we (Google's Chrome team) implemented (and contributed back) SQLite's full text search s
371.
▲
by
evmar
8y ago
I don't know why this one was downvoted. It is exactly right. You don't need threads, you just need your function that parses input to not try to write everything it sees to the screen (drop frames).
372.
▲
by
evmar
8y ago
I fiddle in this area as a hobby project. One thing I never understand when I read announcements like this is why the graphics performance affects the throughput. Like in a video game, the world moves at the same rate regardless of the fr
373.
▲
by
evmar
8y ago
I believe Angular has a similar mechanism of compiling templates to code that corresponds directly to the template much like this, and they're now backing away from it. The reason is that you end up with a lot of code per template. S
374.
▲
by
evmar
8y ago
Can anyone comment on the risks of posting such an essay while still living in China? Is this considered safely within the lines, a calculated risk, or something else? (Or has he already left China before posting the essay?)
375.
▲
by
evmar
8y ago
The repository root has a file named LICENSE containing the MIT license. But the file GateOne/terminal.py says __license__ = "AGPLv3 or Proprietary (see LICENSE.txt)" and doesn't include LICENSE.txt. I wonder what wen
376.
▲
by
evmar
8y ago
I gave some feedback on an earlier draft of this paper and I'm happy to see it on HN, it's a great read!
377.
▲
by
evmar
8y ago
Here it is on godbolt (using noinline): https://godbolt.org/g/7bskDc The point I (poorly) was trying to make here was that passing things by value in Rust is fairly common, for e.g. Rc<T> or Option<T>, whil
378.
▲
by
evmar
8y ago
When I was learning Rust I leaned heavily on C-based analogies like this but I found they ultimately ended up being kinda harmful, because I was thinking (in C mode) "do I want to pass a pointer or a value to this function" rather
379.
▲
by
evmar
8y ago
Buy him a coffee each time he releases a video: https://www.patreon.com/user?u=2945881 (I have no particular connection to the channel or Patreon, I just like that I can support this channel because I also love it!)
380.
▲
by
evmar
8y ago
It's the other way around -- Qt wasn't GPL until 2005, GNOME started in 1997 in response to the non-free license. https://en.wikipedia.org/wiki/GNOME#History
381.
▲
by
evmar
9y ago
https://langserver.org/
382.
▲
by
evmar
9y ago
I see. Sorry for misunderstanding your comment.
383.
▲
by
evmar
9y ago
I agree that termination isn't part of soundness. I was trying to explain how null pointer exceptions are compatible with soundness in Java. As far as I understand it, Java covariant arrays are sound because the language is defined to
384.
▲
by
evmar
9y ago
As I was saying in the comment, Java is sound* by their definition of what soundness means, and it is exactly why it's a great example. You probably have some intuition about some desired property you have (like "doesn't cra
385.
▲
by
evmar
9y ago
I've worked a lot with TypeScript after a background in more type-y languages like O'Caml and Haskell and have eventually gained a real appreciation for the engineering tradeoff they made. This article sorta frames soundness like
386.
▲
by
evmar
9y ago
I really appreciate your thoughtful comment! But I also wonder, if your employer asked you to provide some legal cover for something you found unconscionable -- like maybe draw up incorporation documents for organizing sex tourism to a plac
387.
▲
by
evmar
9y ago
I heard an interesting view on this. Engineers build technologies like TensorFlow and demos of object recognition, which have obvious applications in drone combat (just stuff your model into the missile targeting system). Yet then when th
388.
▲
by
evmar
9y ago
Google tried this model some years back (I forget the name). The problem ends up (as always) being around the money. You need to sign up ~all the newspapers for it to be valuable for users (otherwise they're paying $20/mo for acc
389.
▲
by
evmar
9y ago
Another place where lexing and parsing interact is JavaScript. Consider the lexer encountering the text "/x;". If it occurs in code like: let a = /x; then it needs to continue lexing a regular expression. If it
390.
▲
by
evmar
9y ago
https://github.com/keith-turner/ecoji/blob/31e543511004597bd... this is in the standard library as https://golang.org/pkg/io/#ReadFull
More ›