Y
HN Search
Hacker News Search
new
|
comments
|
top
|
jobs
likeliv
searching Neon…
1.
▲
2.
▲
3.
▲
4.
▲
5.
▲
6.
▲
5 ms
·
1.
▲
by
likeliv
7y ago
That's right. C being more limited, it has a more simplistic ABI. But the parent comment was replying the "need for a stable, standard ABI, which C provide". Which is misleading as both C++ and C have the same level of stabil
2.
▲
by
likeliv
7y ago
unique_ptr does not have any memory overhead. (unless you use a custom deleter, but even then you could use one which does not use memory)
3.
▲
by
likeliv
7y ago
You seem to misunderstand what moc does. This page should help you: https://woboq.com/blog/moc-myths.html Moc just adds some more generated code next to you valid C++ code, generally in a new translation unit. That gen
4.
▲
by
likeliv
7y ago
No need to use Qt creator. Most C++ build systems support moc out of the box, or with minor adjustments.
5.
▲
by
likeliv
7y ago
C is already an anti pattern for a library. It is soon 2020, there is no reasons to use C in new code. Because of security and also convenience. Maybe it is a nice mental exercise (also try brainfuck and malbolge), but not something for pro
6.
▲
by
likeliv
7y ago
Since the sun isn't turning around the earth, I believe the sun is still where you point at.
7.
▲
by
likeliv
7y ago
> There are plenty of programs that exploit the programmer's knowledge of a particular compiler's actual, unspecified behavior as an optimization. There are plenty of programs that have bugs. Programmers who exploit undefined b
8.
▲
by
likeliv
7y ago
There is an example of indexed vecteur in the rustc source code https://github.com/rust-lang/rust/blob/master/src/librustc_i...
9.
▲
by
likeliv
7y ago
> most of those languages (1) have a GC that makes boxing a much cheaper operation than in Rust Why is that? I would intuitively think it is the other way. (Is a malloc/free pair not cheaper than an allocation on the GC heap + colle
10.
▲
by
likeliv
7y ago
I disagree that the user of the macro needs to understand its output. The output of a macro is an implementation detail, and the documentation of the macro should be enough to use the macro without even looking at its output. For example, n
11.
▲
by
likeliv
7y ago
Right. Is it really accidental complexity? This is the implementation detail that the users of the language doesn't really need to know as they would just write 'async fn' (and #[async_trait] while waiting for the issues ment
12.
▲
by
likeliv
7y ago
I know rust is not C or C++, but we are not programming in x86 assembly, but for the language "abstract machine". And if the compiler infer that this memory location is not used by other threads because we don't use an atomic
13.
▲
by
likeliv
7y ago
Is that not an undefined behaviour? Can't you get some values "out of thin air" (partial updates of some bits.) Or some intermediate values? (For example, can the compiler decide to use this memory location to store some unre
14.
▲
by
likeliv
7y ago
I don't know if nuclear waste is actually worse than the waste from a chemical factory. Any industry has its risks for the environment.
15.
▲
by
likeliv
7y ago
That was just an example. But maybe 'x' is a BigInt type that use a memory allocation to store its contents. The ownership would be transferred to the return value
16.
▲
by
likeliv
7y ago
That was pre-c++11. Now using C++11, it is much simpler (using 'auto'). And the C++17 version is even simpler https://code.woboq.org/qt5/qtbase/src/corelib/global/qglobal...
17.
▲
by
likeliv
7y ago
... and this is why I will never touch C++ and stay with simple C. (Ah no..., wrong thread. This is actually about C. /s)
18.
▲
by
likeliv
7y ago
Point is that when you want to do a change in the "API" (or call it "protocol"), you need to touch the different repositories and coordinate to use the right versions together. About the copy/paste of protobuf files
19.
▲
by
likeliv
7y ago
One of the philosophies behind Go is to keep the language extra simple. See "less is exponentially more". The same way some electric bikes are restricted to a given speed to keep their user safe. Some people call it "cripple
20.
▲
by
likeliv
7y ago
Would be nice if types could annotate their Drop trait with #[early_drop] if the drop has no visible side effect, do rust could free the memory earlier.
21.
▲
by
likeliv
7y ago
It is perfect fine to take by value something that is not Copy to transfer its ownership. It is a compiler error to use the value after it was moved. And the compiler error is quite explicit about how to solve it For example you can explici
22.
▲
by
likeliv
7y ago
Why boot many VM instead of saving the state and restoring from there?
23.
▲
by
likeliv
7y ago
There is another tool called git-subtree that should solve these problems, I think. But I've never seen it in use
24.
▲
by
likeliv
7y ago
Calling eachother at network level is still a dependency. (And even a build dependency if you use something like protobuff or other protocol description files)