Hacker Newsnew | past | comments | ask | show | jobs | submit | yb303's commentslogin

tldr- a document written in 2024 that does fit on my phone


Why dedup? Old forgotten things are as good as new :)


2 years might be OK, but not 2 days as in this case.


I have my own solution that I've been using for many years — I record all my bash history.

Bash has a hook (cannot remember the name on my phone) that is called on every command.

It's easy enough to write into a file the command together with the directory and git branch.

Then I can grep it with a bash function that colors the dir and branch in the output.

It does not replace ctrl-r but it's a great addition especially when running multiple sessions and bash saving just the last one


> Bash has a hook (cannot remember the name on my phone) that is called on every command.

$PROMPT_COMMAND

https://www.gnu.org/software/bash/manual/html_node/Bash-Vari...


> Bash has a hook (cannot remember the name on my phone) that is called on every command.

trap 'echo "$BASH_COMMAND" >> ~/.bash_history_extra' DEBUG

this runs before commands, not after the whole command line (before prompt is displayed).

my personal bash history tweak suit is based on this. with a load of complexity of course, because the DEBUG trap is also triggered before each PROMPT_COMMAND commands and on every simple command within the issued command line. so the above example would record each command of a pipeline separately.


Why does it sound like a remake of FlameGraph?


It didn't discover anything. It only minces words it found online up to 2021.


False.


How is this false?


In the original story they became Nazgûl after receiving the rings


Perhaps the real Nazgûl were the friends we made along the way.


The article says: "So when you change what + means, it will throw away all those methods it compiled with the old definition. Poof. Gone."

Is this enough? What about the function's side effects? If the function changed 1000 variables with the wrong + definition, is it going to roll them back?


Another 1 minute lookin... multiplication on every byte.. really? If this is supposed to be fast, get one big buffer for the words. Get another if you run out. The hash function can be the word itself for words up to length 8. Longer words would need a mult per 8 bytes. You can do branchless strchr. Roll your own memmove - just always copy 24 bytes and terminate at the length you already know. The whole point of using C or C++ is that you can do non idiomatic things when you have to.


I had a 1 minute look at the "optimized" C code - it's calling malloc for every word.


>I had a 1 minute look at the "optimized" C code - it's calling malloc for every word.

Neither simple.c nor optimized.c call malloc "for every word". They only call malloc when inserting a previously-unseen word into the counting map.


Doesn't malloc return a pointer? Sounds unsafe


That's not the point. It's perfectly safe and there's nothing else in C. The point is you don't have to call this function for every single word. It takes time and pointer increment doesn't


Ooo... spooooky pointers... ancient prophecies speak of the Earth splitting in half and swallowing everyone who's ever thought about allocating memory.


After death, the person will be giving back his/hers "water of life", like in Dune, to be reused by others :)


Consider applying for YC's Fall 2025 batch! Applications are open till Aug 4

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: