Today I woke up in the worst of possible moods. There are lots of things going on in my life and sometimes… well… I’m defeated by all of it. People very often tell me they admire my strength, but truth be told, I feel anything but strong. I just try to take steps towards what I think might be a better place.
To quote our beloved Uncle Iroh in The Crossroads of Destiny (ATLA 02x20):
Sometimes, life is like this dark tunnel. You can’t always see the light at the end of the tunnel, but if you just keep moving, you will come to a better place.
I found myself learning some new tricks related to function pointers. Well, not learning, actually inferring them from what I know of ASM… I guess that’s a better description. In any case, it was so satisfying to see this on my terminal screen:
$ make Build options: CFLAGS = -std=c99 -Wpedantic -Wall -Wextra -DVERSION="0.0.0" -D_POSIX_C_SOURCE=200809L LDFLAGS = -lm CC = cc cc -c -std=c99 -Wpedantic -Wall -Wextra -DVERSION=\"0.0.0\" -D_POSIX_C_SOURCE=200809L op.c cc -c -std=c99 -Wpedantic -Wall -Wextra -DVERSION=\"0.0.0\" -D_POSIX_C_SOURCE=200809L rpn.c cc -c -std=c99 -Wpedantic -Wall -Wextra -DVERSION=\"0.0.0\" -D_POSIX_C_SOURCE=200809L scalc.c cc -o scalc op.o rpn.o scalc.o -lm $ echo '6 7 + 19 - 8 ^' | ./scalc # (6 + 7 - 19)^8 1679616.000000
This was my small victory today. It might seem not as much, but do you see
op.c file? There I want to do write some magic that hopefully will make
scalc extensible. Today I wrote some code that I think will make that possible
very, very soon.
I’m also excited that I’m having some ideas already as to how to allow scalc do some stuff like letting the user store some values into memory, reuse the stack, and maybe even define custom functions! I’m not really sure (that’s why I still haven’t created a proper sourcehut “hub” for scalc), but you know… As simple and less of spectacular this code might look, it helped me feel better.
Sometimes that’s the most important thing.
In my humble opinion, the best vi(m)-like text editor ever. ↩︎