EllipticCurve | 4 years ago | on: Ask HN: Linux users, which Steam game would you recommend and why?
EllipticCurve's comments
EllipticCurve | 4 years ago | on: The Mathematics of 2048: Optimal Play with Markov Decision Processes (2018)
The bot was playing way better than me personally and regularly reached the 4096 tile. It was a lot of fun to just watch it play and really awesome to make it play better :)
EllipticCurve | 4 years ago | on: Automated Hydroponic System Build (2020)
EllipticCurve | 4 years ago | on: Automated Hydroponic System Build (2020)
Everything seemed very open and accepting to people different than themself. In a positive way, not in a "join my cult" way.
EllipticCurve | 4 years ago | on: Ask HN: Should I get a Masters in Computer Science?
For once, it will always place your resume above the ones without a masters degree. And even if you look at the topics and think you won't like it or need it - you will always learn things that will likely be useful in the future! Be it to just get a different perspective on things or be able to suggest or bounce some ideas.
For me personally, the masters degree was the best thing I could have done. It helped me academically, made me a better programmer and helped several times when applying for jobs!
So yes, I highly recommend it!
EllipticCurve | 5 years ago | on: Ask HN: What do companies WITHOUT a whiteboard interview ask?
EllipticCurve | 5 years ago | on: Ask HN: Is your employer paying for your new office space, your home?
So I guess we're expected to work in the 15" laptop? No wonder productivity goes down.
EllipticCurve | 5 years ago | on: Ask HN: Have you lost interest in HN?
And I like the general high quality and good/positive community towards people that build things.
EllipticCurve | 5 years ago | on: Ask HN: What's your quarantine side project?
EllipticCurve | 5 years ago | on: Ask HN: Did Google turn off IMAP access for good over the weekend?
The setting is also gone for me!
EllipticCurve | 5 years ago | on: Show HN: A compiler for a small language into x86-64 assembly
Let me know, if you have questions or need hints where to find some relevant details in my code.
EllipticCurve | 5 years ago | on: Show HN: A compiler for a small language into x86-64 assembly
Thanks for saying all that. It was a huge amount of work and getting appreciation makes it all worth it!
No hard constraints as of now. But I don't think I want to include meta programming or a pre-processor (don't really like it to be honest). I do want to keep it compatible with C internally, on Assembly level. One thought is, to create a file with function headers/definitions that are then dynamically linked and can just be used.
I used some C std library functions that way for debugging (printf, ...). And as I follow the standard calling conventions, the compiler should automatically generate compatible code.
With this, it would also be possible, to write OpenGL code. That would be really awesome :)
As of usage of my language - Not sure yet. Up until now, the road was more of the goal then the finished language.
EllipticCurve | 5 years ago | on: Show HN: A compiler for a small language into x86-64 assembly
For for it! Start small and increase. But seeing a program in your own language output something makes it all worth it :)
EllipticCurve | 5 years ago | on: Show HN: A compiler for a small language into x86-64 assembly
EllipticCurve | 5 years ago | on: Show HN: A compiler for a small language into x86-64 assembly
That language flow and general simplicity was one of my most important goals. Thanks for noticing :)
No, I had no problems regarding that. What you mention ('+', '(') are all part of simple expressions when parsing. And I strictly parse right recursive and re-order the expressions later (for operator priority). So that was not an issue. Most of these problems I solved, by making my parser a lookahead of >1. In a few cases, there is a lookahead of 3 to determine what exactly should be parsed.
I guess anything, that can run an X86-64 Elf executable? ;) Although there is still a lot missing, for it to be taken serious. Starting with strings, files, input, ... But thats for another time or whenever I need it, I guess.
EllipticCurve | 5 years ago | on: Show HN: A compiler for a small language into x86-64 assembly
- General compiler design - This was one of the main ressources. https://www.tutorialspoint.com/compiler_design/compiler_desi...
- https://www.lua.org/manual/5.3/manual.html#9
- Linux system call table: http://blog.rchapman.org/posts/Linux_System_Call_Table_for_x...
- A bit on floating point: https://cs.fit.edu/~mmahoney/cse3101/float.html
- Assembly https://www.cs.yale.edu/flint/cs421/papers/x86-asm/asm.html
- More assembly: https://www.complang.tuwien.ac.at/ubvl/amd64/amd64h.html
EllipticCurve | 5 years ago | on: Show HN: A compiler for a small language into x86-64 assembly
Yes, I thought about going for LLVM or another representation but decided to do it once myself (no given performance optimizations or the like) with room for improvement.
EllipticCurve | 5 years ago | on: Show HN: A compiler for a small language into x86-64 assembly
But decided, that for the first compiler, I want to actually do all steps manually myself for best possible comprehension of the general topic.
EllipticCurve | 5 years ago | on: Show HN: A compiler for a small language into x86-64 assembly
I tried to follow the Assembly calling conventions the best I could.
I am looking forward to any feedback!
EllipticCurve | 6 years ago | on: DIY Positive Pressure Suit