RE: Arithmetic Expression Compiler
September 24, 2020 at 1:12 pm
(This post was last modified: September 24, 2020 at 1:14 pm by HappySkeptic.)
(September 21, 2020 at 3:12 pm)FlatAssembler Wrote:Grandizer Wrote:But coming up with solutions to problems that nobody else cares about because they're either irrelevant to their needs and wants or there are already better solutions out there, keep those for yourself for your own enjoyment.Well, you can't know for sure if there is a market for some product until you make it, can you?
I haven't looked closely at your compiler, but I am a programmer, and my first question was "why"?
I love assembler for playing around with performance. I wouldn't touch it ever with a real product.
No one writes programming languages or libraries in assembler because they aren't portable to different chips, are impossible to maintain over time and with a large project, and they are usually NOT faster than something that would come out of a good modern compiler and a low level language like C, C++ (or even Rust).
Learning how to parse and execute an arithmetic expression is fun too.
As for writing something and seeing if there is a market -- I've been in my industry for almost 30 years, and that is a sure way to get nowhere. I had a hobby project when I was young that I thought I could sell. I greatly underestimated the work it would take to make something commercially valuable, and I didn't really understand anything about my market (its size, and how to get customers who wanted to pay).
By all means, learn and have fun with a hobby project, but that is almost certainly not going to make you much money. There is a chance that all your fun playing may give you an expertise in a certain area that may one day be useful to an employer, however.
As for the value of university -- it does teach you how to learn and how to solve problems that others give you (and not just your own interest). For employers, it is some indication that the employee might succeed in a real-world environment (though not a guarantee of specific knowledge).