Y
HN Search
Hacker News Search
new
|
comments
|
top
|
jobs
ioquatix
searching PlanetScale…
1.
▲
2.
▲
3.
▲
4.
▲
5.
▲
6.
▲
9 ms
·
31.
▲
by
ioquatix
6y ago
Yes.
32.
▲
by
ioquatix
6y ago
Actually, I was looking at how audio loops work, and it seems like the low context switching overhead of fibers could be really great for stacks of effects and filters. Because the overhead is very small and predictable, and the ergonomics
33.
▲
by
ioquatix
6y ago
Completely agree with you and to me that's why it's an exciting challenge. I'm not expecting to solve every problem, but I'm trying to carve out a solution which I think works for these legacy issues. Even if we didn
34.
▲
by
ioquatix
6y ago
It would be awesome to talk about your work in a blog post, do you think you can reach out to me to explain your work in more detail?
35.
▲
by
ioquatix
6y ago
I completely agree it is difficult and that's also my point - that shared multi-thread is very tricky to get right, and there is a significant benefit to isolated event loops (even if they are running on threads, they should be isolate
36.
▲
by
ioquatix
6y ago
Yes, agreed, all I'm trying to say is, as software engineers we have some assumptions about processors (and compilers/interpreters) that they do things in the order we specify... but that's not always the case, and sometimes
37.
▲
by
ioquatix
6y ago
The internals aren't THAT different, so while I can't really answer your question (I'm not working on CPython), you might still find it interesting from the POV as to how interpreters work.
38.
▲
by
ioquatix
6y ago
Light weight event driven tasks are very important. I outline some of the key improvements in this talk: https://www.youtube.com/watch?v=Dtn9Uudw4Mo
39.
▲
by
ioquatix
6y ago
Okay, I will check it out, thanks!
40.
▲
by
ioquatix
6y ago
If you checked my background section, you'll see even the sqlite3 gem for Ruby blocks and doesn't release the GVL which is a big issue ( https://github.com/sparklemotion/sqlite3-ruby/issues/287 ). So,
41.
▲
by
ioquatix
6y ago
Actually, completely sequential programs can have parallelism bugs due to the underlying hardware being out of order and other such features. I know, maybe a bit of a stretch by your definitions, but I'm also not sure that "not be
42.
▲
by
ioquatix
6y ago
Welcome suggestions for alternatives.
43.
▲
by
ioquatix
6y ago
I definitely agree with your first statement. However, I think the Fiber + Reactor approach is about as simple as it gets, taking into consideration actual practical, scalable, concurrency. Every approach has trade offs, but I think this de
44.
▲
by
ioquatix
6y ago
Those are both solid choices for servers. However neither of them have a scalability model suitable for HTTP/2 or WebSockets. That's something I wanted to try and address.
45.
▲
by
ioquatix
6y ago
As you can imagine, deploying a new technology to production can have issues :p I've been dogfooding falcon ( https://github.com/socketry/falcon ) for the past week, which is built on top of async/Ruby. The HN
46.
▲
by
ioquatix
7y ago
You run multiple instances, one per CPU core.
47.
▲
by
ioquatix
7y ago
It's a new blockchain-based analytics database which uses SOAP as the wire protocol.
48.
▲
by
ioquatix
7y ago
So, is it routing around the damage?
49.
▲
by
ioquatix
7y ago
That's awesome, thanks for the link. I made an AUR package: https://aur.archlinux.org/packages/github-actions/
50.
▲
by
ioquatix
7y ago
Unfortunately, history shows us that it's a terrible idea from a performance perspective.
51.
▲
by
ioquatix
7y ago
+1
52.
▲
by
ioquatix
7y ago
Safe in the context of HTML means semantically significant characters are escaped correctly, including <, >, “ and ‘.
53.
▲
by
ioquatix
7y ago
Interesting article, but I feel like the conclusion using `STACK_SIZE` doesn't make any sense. If you are willing to publish that in a public header, you will break any code if your stack struct changes size. Like, I get the point of u
54.
▲
by
ioquatix
7y ago
In Japan, in Chiba, for 500 yen, you can buy a 4 litre plastic bottle which you can reuse over and over again for drinking water from the local super market. Maybe you have a similar system available if you check.
55.
▲
by
ioquatix
7y ago
20k vs 140k, respectively. That's impressive.
56.
▲
by
ioquatix
7y ago
So why not just define `__eq__` and `__cmp__`. It just seems to make so much more sense... and only `__eq__` only if you need it different from `__cmp__ == 0`. Removing `__cmp__` was a step backwards IMHO.
57.
▲
by
ioquatix
7y ago
I don't trust someone who can't implement `__cmp__` to implement `__lt__` either.
58.
▲
by
ioquatix
7y ago
If you have time and/or money and want to contribute to fixing this issue, please feel free to join in: https://github.com/rubygems/rubygems/issues/2496
59.
▲
by
ioquatix
7y ago
I don't think it's surprising when you switch machine architecture and/or word sizes that you get different results. In fact for me, that's completely normal and to be expected.
60.
▲
by
ioquatix
7y ago
On a typical modern arch, there are consistent and reasonable answers: 1. 8 ( https://godbolt.org/z/Udcuj0 ) 2. 0 ( https://godbolt.org/z/kZz1YQ ) 3. -96 ( https://godbolt.org/z/1X
More ›