HackerTrans
TopNewTrendsCommentsPastAskShowJobs

thecloudlet

no profile record

Submissions

[untitled]

1 points·by thecloudlet·bulan lalu·0 comments

[untitled]

1 points·by thecloudlet·2 bulan yang lalu·0 comments

From C char to string_view: The cost of abstraction in C++ strings

thecloudlet.github.io
2 points·by thecloudlet·4 bulan yang lalu·1 comments

Emacs internals: Tagged pointers vs. C++ std:variant and LLVM (Part 3)

thecloudlet.github.io
80 points·by thecloudlet·4 bulan yang lalu·37 comments

Emacs internals: Deconstructing Lisp_Object in C (Part 2)

thecloudlet.github.io
126 points·by thecloudlet·4 bulan yang lalu·21 comments

[untitled]

1 points·by thecloudlet·8 bulan yang lalu·0 comments

comments

thecloudlet
·bulan lalu·discuss
> The feedback loop hypothesis says that this is backwards. That, in fact, we’re going to find that SaaS is ‘hard’ and system software is ‘easy’.

Just weird enough, my brain feels the same way.
thecloudlet
·2 bulan yang lalu·discuss
I think the greatest problem is documentation. I work on compilers daily. Sometimes I am forced to read directly in to Ghc’s code to just use as a developer.

Maybe we should use Ai to generate up-to-date docs that are well organized like a book, so that all devs are more easy to conquer the different tools and flows.

For example, in C++, for basic toolchains LSP, formatters, standards of formatting, guidelines for performance, do and don’ts, … are more accessible.

I know it’s partially because of the size of the community. If we find a way to make the beginners, or experienced dev from other languages easier to start writing production code. We can thrive more.
thecloudlet
·2 bulan yang lalu·discuss
Really like this language. I would love more if we can make developing production code easier.
thecloudlet
·3 bulan yang lalu·discuss
I fell in love with Intel One Mono for this reason
thecloudlet
·4 bulan yang lalu·discuss
Author here. The concepts in this article were the key to rearchitecting a module in our production codebase, which ultimately yielded a 10x performance improvement. Hope you find these notes useful!
thecloudlet
·4 bulan yang lalu·discuss
Sure! I have updated my post! Thanks for your reference.
thecloudlet
·4 bulan yang lalu·discuss
Thanks for the links, Nick! It's fascinating how LLVM relies so heavily on CRTP.
thecloudlet
·4 bulan yang lalu·discuss
Waiting for Rust experts.
thecloudlet
·4 bulan yang lalu·discuss
Doing bitwise operations directly on raw pointers is a fast track to Undefined Behavior in standard C/C++. Emacs gets away with it largely due to its age, its heavy reliance on specific GCC behaviors/extensions, and how its build system configures compiler optimizations.

In modern C++, the technically "correct" and safe way to spell this trick is exactly as you suggested: using uintptr_t (or intptr_t).
thecloudlet
·4 bulan yang lalu·discuss
Emacs internal part 2 HN link:

https://news.ycombinator.com/item?id=47259961
thecloudlet
·4 bulan yang lalu·discuss
Thanks!
thecloudlet
·4 bulan yang lalu·discuss
Thank you for the kind reminder! I have removed the duplicate.

You made a great point. Since the original authors are the same, the fundamentals of the Emacs C core are indeed highly compiler-optimized. I hope I can come up with a way to fully understand and write about that history and relationship. (But to be honest, diving into that level of compiler history is a really hard topic to tackle!)

Thanks for the great inspiration and for taking the time to read!
thecloudlet
·4 bulan yang lalu·discuss
It’s not easy… I’m working to understand it. Recording the process through the way.
thecloudlet
·4 bulan yang lalu·discuss
That’s so cool. I did not know that.