Y
HN Search
Hacker News Search
new
|
comments
|
top
|
jobs
cb321
searching PlanetScale…
1.
▲
2.
▲
3.
▲
4.
▲
5.
▲
6.
▲
60 ms
·
571.
▲
by
cb321
5y ago
Maybe also of interest is a nascent package for R calling Nim (or vice versa): https://github.com/SciNim/rnim
572.
▲
by
cb321
5y ago
I made no "in general" applicability claim and have, on the contrary, explicitly acknowledged assumptions & limitations various times in this thread which you write as if you have read. Mentioning every limitation is impracti
573.
▲
by
cb321
5y ago
You are just moving goalposts from "grep -l" to "grep t" . The "grep -l" should be reliable by virtue of line buffering and Linux kernel source path names being shorter than PIPE_BUF (which yes, you do
574.
▲
by
cb321
5y ago
Addendum: I guess parallel is not a "drop-in" for xargs by default, but more like xargs -n1, as has been mentioned elsethread. You need to use -X (that is a capital 'x' as lowercase 'x' means something else
575.
▲
by
cb321
5y ago
With the default setup, GNU parallel seems to be about 1000x slower than it should be and 165x slower than serial xargs. On a 16 core/32 thread CPU running Linux 5.16 (with parallel-20220322, perl-5.34.1, ripgrep-13.0.0, findutils-4
576.
▲
by
cb321
5y ago
You are just moving goalposts from "grouping to not mix" in the comparison doc to "grouping to not mix with exact space management profile(s) of GNU parallel". Even worse, you now bring in IO space-speed assumptions, ot
577.
▲
by
cb321
5y ago
cython --annotate is an ok way to learn the whys & whereabouts of the rather hairy CPython API. That gives you an HTML page you can click on to expand your python code into equivalent-ish C API calls. Darker yellow means more calls, t
578.
▲
by
cb321
5y ago
Subjective. Judge for yourself: https://git.savannah.gnu.org/git/parallel.git
579.
▲
by
cb321
5y ago
> allowing for the total output to be bigger than the free space on /tmp. I could not do it. This is an unreasonable standard when you do not know in advance how big the output is. What do you imagine GNU parallel does? Use `df` o
580.
▲
by
cb321
5y ago
I have skimmed. I did give it a try. Not for me.
581.
▲
by
cb321
5y ago
Some users like to add their own features or have problems to debug. They surely care. Others may want to move coordination to a remote host and care about some single-file transfer of the exact version of the tool. They also care. It&#
582.
▲
by
cb321
5y ago
Well, some archived project is not so great either. The core functionality is not even a 20 line bash script since bash grew wait -n, though: #!/bin/bash if [ "${1-0}" -lt 1 ]; then # No arg /
583.
▲
by
cb321
5y ago
The comparison is not very fair to modern day xargs. `nproc` is a relatively standard utility (coreutils). So, xargs -P$(nproc) gets you core (or core-proportional) parallelism. Grouping output/Making a safe parallel grep is also easy
584.
▲
by
cb321
5y ago
Theory and practice can diverge and it's easy to over-conclude based on either with such complex systems. For example, I have seen gcc PGO make the very same training case used to measure the profile run more slowly . One might thin
585.
▲
by
cb321
5y ago
>until recently Actually, for a long time (almost 20 years, I think), the gcc subsystem gcj let you do AOT compilation of Java to ELF binaries. [1] I think they had to be dynamically linked, but only to a few shared objects (unless you
586.
▲
by
cb321
5y ago
R had a REPL from day one (or at least near it) because the S it was copying did. You could save your "workspace" or "session" and so on. Just because it was spartan compared to Jupyter or just because that might be sp
587.
▲
by
cb321
5y ago
You may know this, but since you always mentioned Nim & Julia together, it might confuse passers by. Nim does not, in fact, need LLVM (though there is a hobby side project using that). Mainline Nim compiles directly to C (or C++ or Ja
588.
▲
by
cb321
5y ago
You might find this interesting: https://github.com/SciNim/Unchained
589.
▲
by
cb321
5y ago
Nim is a systems programming language [1] just with very decent ergonomics. Interfacing to C/C++ is trivial (just a declaration) and to others (e.g. Rust) is possible. E.g., there is code that interfaces to a custom Linux kernel modu
590.
▲
by
cb321
5y ago
Fair enough. I thought your text was only vaguely suggestive of an alternate timeline, and was just clarifying (and almost said so). :-)
591.
▲
by
cb321
5y ago
While Nim has of course evolved, it was first released publicly in 2008, and I believe began in private around 2003..2004. Nim is also safe [1] and competes fine with C/C++ across the board, IMO { as do many other PLs. }. [1] https:&
592.
▲
by
cb321
5y ago
D is nice. I find Nim even nicer (the static introspection is more complete, and syntactic chatter/noise is lower). https://nim-lang.org/ Several people have done the entity component system (ECS) thing.
593.
▲
by
cb321
5y ago
Fair enough. IMO, Hyyro's description is easier to follow than Myers' own which may be the real explanation for its relative obscurity. Re: concision - an incomplete summary of why I like Nim is that it is more concise than Pytho
594.
▲
by
cb321
5y ago
Agreed proteins as "words" encoded in a 2-bit DNA alphabet surely do get much bigger than even human languages like German. :-) That said, "galactic algorithms" suggests impracticality/inefficiency "in the smal
595.
▲
by
cb321
5y ago
Not sure why the Myers bit vector algorithm from 1999 is not included in these comparisons. Since it can operate on whole 32-bit or 64-bit registers at a time, it is really O(NM/w) which is in effect just O(N) and just gives you the w
596.
▲
by
cb321
5y ago
Also mentioned only 12 hours ago: https://news.ycombinator.com/item?id=30578267
597.
▲
by
cb321
5y ago
There are many such links in the main article linked here, actually. That's where I just saw the Rust one using RocksDB. (No link to the Nim one, though...which has no external dependencies beyond the Nim stdlib.)
598.
▲
by
cb321
5y ago
In a dictionary with more than a few words, some "created corruptions" in the lookup table/index collide with each other. (EDIT: e.g. for "hand" and "and" the overlap of the deletion-corrupted sets is subs
599.
▲
by
cb321
5y ago
You are absolutely right to be suspicious. https://news.ycombinator.com/item?id=30580011 The TL;DR is that on a "worst case" basis, it may be 10x faster or even 10x slower than a non-indexed linear scan dependi
600.
▲
by
cb321
5y ago
As jamra correctly points out in a sibling comment, the entry point to this (which gets a lot of traction on HN) is indeed attacking a strawman tutorial-written-on-an-airplane-in-Python algorithm. So, the 1M speed-up is very over-hyped. Th
More ›