UOX/UOX4 - What I dabble with
Posted: Fri Dec 24, 2021 7:22 pm
As some know, I love to dabble with c++. I like learning how to use the new standards, etc. Unfortunately macOS hasn't fully implemented c++20, so I
am fairly restricted to c++17. But that is ok, as by now c++17 is supported on most platforms.
I am curious on what a c++17 rewrite of UOX3 would look like. Not perhaps a total redesign, but a rewrite. So I have been dabbling on on off on many starting positions. With the new year approaching, I thought I would make it a true concerted effort, and see how far I got.
Given that, I have a few insights from my previous dabbling. If I don't want to redesign "everything", it would be helpful to have a code base that I can examine and keep design aspects. Given that, I knew it would be important to have a version of UOX3 without JS that can compile. So that was the first thing to do. I have that up on my git, uoxr. But this uox (UOXR) does NOTHING, so don't every use it for any operational purpose. It is just a code storage for me to go and look at (and others of course, if they so choose). The build up version is UOX4 (I will probably rename that to just UOX, but who knows). This is my dabbling area of what I want to trudge forward.
Now a few words:
My targets are ARM macOS, and Windows.
The standard I am using is C++17 (and it is expected to use at least that)
I am attempting to use the new auto style of methods, to reinforce that this is c++17.
I want to keep things simple, so I don't plan on hundreds of settings.
Backward compatibility is not a must, but you will see that I don't stray to far.
I am not using spider monkey initially (JS). There are several reasons:
Why I am mentioning this:
Nope, I don't plan to come close to other emus that have had 20+ years behind them. Just a project to dabble on.
What I am hoping for?
Well, first that I keep motivation to trudge forward over the months to come. But more important, to expose and perhaps engage in conversation on
C++, and design. I want to learn as well!
Note:
I do macOS natively, so the windows project/compiling always lags. I don't have a VS project yet for UOX4, but will once I get to a reasonable base (in a week or so). I use the VS Community Edition 2020 or whatever the latest is, 64 bit. (for what it matters, I use Win 11 on a tiny Beelink SER3 (Ryzen 3750).
am fairly restricted to c++17. But that is ok, as by now c++17 is supported on most platforms.
I am curious on what a c++17 rewrite of UOX3 would look like. Not perhaps a total redesign, but a rewrite. So I have been dabbling on on off on many starting positions. With the new year approaching, I thought I would make it a true concerted effort, and see how far I got.
Given that, I have a few insights from my previous dabbling. If I don't want to redesign "everything", it would be helpful to have a code base that I can examine and keep design aspects. Given that, I knew it would be important to have a version of UOX3 without JS that can compile. So that was the first thing to do. I have that up on my git, uoxr. But this uox (UOXR) does NOTHING, so don't every use it for any operational purpose. It is just a code storage for me to go and look at (and others of course, if they so choose). The build up version is UOX4 (I will probably rename that to just UOX, but who knows). This is my dabbling area of what I want to trudge forward.
Now a few words:
My targets are ARM macOS, and Windows.
The standard I am using is C++17 (and it is expected to use at least that)
I am attempting to use the new auto style of methods, to reinforce that this is c++17.
I want to keep things simple, so I don't plan on hundreds of settings.
Backward compatibility is not a must, but you will see that I don't stray to far.
I am not using spider monkey initially (JS). There are several reasons:
- It is a pain to build a newer version and pollutes your machine with several requirements in terms of tools/compiliers
- It is an unneeded complication to obtain a working core.
Why I am mentioning this:
- Well, to motivate me is the primary reason.
- Perhaps generate discussion.
- For those who want to play with c++, something they might want to play along with.
Nope, I don't plan to come close to other emus that have had 20+ years behind them. Just a project to dabble on.
What I am hoping for?
Well, first that I keep motivation to trudge forward over the months to come. But more important, to expose and perhaps engage in conversation on
C++, and design. I want to learn as well!
Note:
I do macOS natively, so the windows project/compiling always lags. I don't have a VS project yet for UOX4, but will once I get to a reasonable base (in a week or so). I use the VS Community Edition 2020 or whatever the latest is, 64 bit. (for what it matters, I use Win 11 on a tiny Beelink SER3 (Ryzen 3750).