Y
HN Search
Hacker News Search
new
|
comments
|
top
|
jobs
cb321
searching PlanetScale…
1.
▲
2.
▲
3.
▲
4.
▲
5.
▲
6.
▲
21 ms
·
211.
▲
by
cb321
2y ago
Almost - CTAN (T for "TeX") predated CPAN by about 1 year (but may not have ever had as much automated fetching involved).
212.
▲
by
cb321
2y ago
While this whole thread is heavily dominated by bashing on training wheels (deservedly so, I can say having tried to teach a full blown 29 year old to ride bikes), this incentive/motivation inversion you mention is interesting. "P
213.
▲
by
cb321
2y ago
Because of Python's prominence and the divisiveness of significant indents, there is a large amount of misattribution of "whatever Python's syntax choices are" to "must be needed by significant indentation". E
214.
▲
by
cb321
2y ago
The complete corruption/co-opting of reviews / star-rating systems (e.g., like Amazon's) means we need more articles like this every single year. Ideally, enough that someone could even aggregate said articles.
215.
▲
by
cb321
2y ago
While it does have a rather unusual/bespoke command syntax (strongly motivating TFA), lately ffmpeg works my webcam more reliably than Google chrome. Too bad my other-side conversations don't have things set up to negotiate a ses
216.
▲
by
cb321
2y ago
Not to be too presumptuous, but you sound like someone would might like Gentoo. It still works without systemd, though it does install sys-apps/systemd-utils (mostly for the /dev FS stuff). I'd say the focus of Gentoo is on
217.
▲
by
cb321
2y ago
Those are good insights and I've probably written way too many words here already, but I wanted to amplify that your "age old" applies to the whole related " BUNDLE OF PRIMORDIAL QUESTIONS :", i.e. "What is a p
218.
▲
by
cb321
2y ago
Well, you can use it for everything. I've used it for in memory hash tables, trees, etc. To be clear, for those who may not understand, the "interpretation" in these "millibenchmarks" for something as simple as an
219.
▲
by
cb321
2y ago
You are right - there will be a big difference for these two different workloads. As I am 100% sure @kragen already knows, this is arguably the first, smallest step in thinking for you to realize just how many possible workloads you might
220.
▲
by
cb321
2y ago
Kernighan & Ritchie's "The C Programming Language" also has an example implementation of malloc() & free() { for any-size requests as @kragen notes in sibling } in it in like 3 pages (though, sure, it is far from the
221.
▲
by
cb321
2y ago
Modern CPUs (with all their buffers & caches & predictor warm-ups & spin-ups) can make benchmarking really tricky unless you have a very specific workload in mind and even then it requires care (like looking at both the edge of[
222.
▲
by
cb321
2y ago
FWIW, while it is true that a smaller pointer lets you have smaller minimum fixed size objects in your pool, as your new footnote suggests, the space concern I was mostly alluding to in [1] is all the references in your client code { such
223.
▲
by
cb321
2y ago
While the most precise naming might be "a singly linked list representation of a stack", "free list" ( https://en.wikipedia.org/wiki/Free_list ) is an ancient term of art for this problem.. so much so
224.
▲
by
cb321
2y ago
In many prog.lang's, it absolutely makes things less readable. This is not an accident, but because the PL itself specifically tries to syntactically support pointer types (i.e. to literally aid readability). Most PLs do so only for
225.
▲
by
cb321
2y ago
One aspect people don't tend to mention (and TFA does not because it has "general purpose" as a scope) about doing your own allocation arenas is that because a "pointer" is just the name (really number) of an alloca
226.
▲
by
cb321
2y ago
Cool. BTW, you may want to not assume something is impossible before asking questions on the Nim Forum ( https://forum.nim-lang.org/ ) or their discord IRCs. An awful lot is possible with this-or-that pragma or macro, but
227.
▲
by
cb321
2y ago
> Will this transitively enforce exception handling? Yes. The module you put the pragma in is about the "roots" of the call graph, but it covers the whole call stack from those roots down wherever the code is defined. Sorry I
228.
▲
by
cb321
2y ago
Whether you want to handle every error is context dependent. StatusIM has long running servers & clients as primary products and so tilt away from exceptions, but for a CLI utility you might want the convenience of a stack trace instea
229.
▲
by
cb321
2y ago
Another example applying compile-time reflection is something like https://github.com/c-blake/cligen { but it helps if your host prog.lang has named parameters like Python's foo(a=1, b=2) }.
230.
▲
by
cb321
2y ago
Interesting to see xkcd's Randall Munroe's live tour linked!
231.
▲
by
cb321
2y ago
I have probably seen "viable" overinterpreted 100s of times by now. Perhaps we need to re-interpret the 'V' in "MVP" as "VC-investable" or perhaps replace it with 'I' to be I)nvestible whic
232.
▲
by
cb321
2y ago
I think you may be confusing the strict immutability of binary fuse with the "degraded" (aka need-to-resize-a-hash-table-once-"full") of https://en.wikipedia.org/wiki/Cuckoo_filter under high hash t
233.
▲
by
cb321
2y ago
Nim ( https://nim-lang.org also mentioned elsethread) was largely inspired by trying to make a more concise Ada with Python-like lexical sensibilities/ergonomics and support for first class meta-programming. Compilers for N
234.
▲
by
cb321
2y ago
You seem to have misinterpreted my comment since we agree that the "no-space-before 'foo' way" is truer to the syntax, and to repeat myself, I had said "char* foo" is the bad cue and even mentioned @onre's
235.
▲
by
cb321
2y ago
One reason to have a razor thin custom command shell (perhaps obeying similar conventions across data structures..) is that the parsing for such can be so fast/consistent that you can also use it for benchmarking/perf regression t
236.
▲
by
cb321
2y ago
The trade-off is one vs. two operator sub-syntaxes or in other words "sub-syntax economy". As it is, C has just one operator expression syntax (and one set of operator precedences/associativities). The "forward applica
237.
▲
by
cb321
2y ago
Redundant cues are also strong. So, for example, C is largely whitespace-insensitive and operator precedence can matter a lot. Consider "x+y*z". If you always spaced this "x+y * z" it would be the same to the parser
238.
▲
by
cb321
2y ago
If you are in a tribe not hating on pp-macros, you might find this approach for testing/debugging data structures (or even the surrounding pp-based "CTL"-like C templating idea or abstract ways of dealing with the BST zoo) in
239.
▲
by
cb321
2y ago
Padding is better and does solve many things, but it's still in the file. That external header/metadata nio.nim approach allows you to separate concerns like slicing rows and columns (for 2D anyway) in a shell pipeline. This is
240.
▲
by
cb321
2y ago
I agree. Focusing on reading rather than updates should be the priority since bulk scans are more meta-common than random-poking. E.g., an approach in Nim: https://github.com/c-blake/nio
More ›