u/FluxCapacitor11
-
6points
-
0points
One small-ish camera to do it all for an eyeglasses wearer (self.Cameras) [Recommendations]
-
1points
How should I cut this hole a little bigger? (i.redd.it) [help]
-
8points
How to add properties to basic types like strings? (self.ProgrammingLanguages)
FluxCapacitor11
FluxCapacitor11
https://craftinginterpreters.com
Read this book. It has everything you need to learn how to do this and is an excellent read. There is even an implementation in Lua you can learn from in the book’s GitHub repository.
https://github.com/munificent/craftinginterpreters/wiki/Lox-implementations
FluxCapacitor11
Ah thank you! Great to hear about your experiences with the EVF.
FluxCapacitor11
Yes, the OM 3 is on my longer list, but is over budget even for used. It does meet most of my criteria tho.
My prescription is around -6.5. I assume that means I’d be shooting with glasses on. that’s my preference anyway as I don’t really want to be taking them on and off all the time.
FluxCapacitor11
Pyxel https://github.com/kitao/pyxel is also solid and worth a look. It’s more of a retro game engine but is somewhat more flexible than something like pico8. On the upside Pyxel makes it really easy to bundle for the web and executables.
FluxCapacitor11
Check out MicroStudio. You can program in MicroScript which is very easy. Or if you prefer, JavaScript, Python or Lua. It has a built in sprite editor. Lots of good functionality built in.
GDevelop or GameMaker are also good options.
FluxCapacitor11
I found when mine was new, I had a lot of static. I’ve now had it for a year and just realized I have little to no static. Somewhere along the way over the past year it sorted itself out.
FluxCapacitor11
Updateme
FluxCapacitor11
Use Raylib.
FluxCapacitor11
Pico8 is great for sure. It’s definitely worth it.
Do you also know Python? If you do, also check out the Pyxel library. It’s free which might be good considering your circumstances. It’s similar to Pico8 with the built in editor but gives you access to all kinds of Python libraries. It also makes exporting for the web and exe’s really easy.
FluxCapacitor11
I assume it’s not trying to compete with LuaJIT given their benchmarks compare it to MoonSharp. I am interested in a comparison to IronPython though!
FluxCapacitor11
Agreed 100%. YouTube is the one thing we banned except for certain things which we monitor (art hub for kids).
FluxCapacitor11
I love Dart but I’m surprised it’s so high on this list.
FluxCapacitor11
I’m a fan. The tooling and in particular the VS Code extension is really really good. The language is much easier and quicker to write than C#. I do wish the compiled performance was a bit better, but it’s a nice language.
FluxCapacitor11
Attempt to balance my team? Or continue to maintain dominance in banger categories?
In my Cat league, we have categories for G, A, Shots, BLKS, HITS, PPP, PIMS, FOW. I used the Athletic spreadsheet and generally drafted the highest ranked player. As a result, my team has the highest projected fantasy points and VORP by far. Without really trying, I have a team that absolutely dominates PIMs, Face off Wins, Hits and Blocks (so half the categories), but I am week in the offensive categories (though close the average in PPP).
I have Boone Jenner and put him on my IR. Now, when picking up a new player, obviously anything is a downgrade, but should I attempt to pick up a more offensive player Troy Terry or Kyle Palmieri? Or go with someone like Trent Frederic who has a higher VORP and is stronger in the banger categories?
FluxCapacitor11
WAIIG is excellent and generally has been well reviewed.
There is also Crafting Interpreters, which is another excellent resource aimed at a similar level.
FluxCapacitor11
They are not necessarily apples to apples comparisons. I just ran bytecode VMs "as-is" for the most part.
The golang bytecode example does not impement NaN boxing.
The C# example does have the NaN boxing optimization as you noted. I have tried that example with and without it enabled and I couldn't detect any difference (I didn't bother doing detailed timing and statistical analysis, I'm just saying it did not provide a noticeable improvement for whatever reason).
In the book, the author says NaN boxing provides only a 10% speed improvement for the C VM. Not nothing, but not huge. But I'm sure there is room for improvement in some of these implementations for sure.
If speed was a real concern, I think you'd want to go for a language without a garbage collector. There are also implementations in C++, Zig, Rust (a lot of the Rust implementations don't hit the C benchmarks either, but some of them get close).
FluxCapacitor11
FluxCapacitor11
That’s just the timing for running the Fibonacci function. So not including any hidden startup time.
FluxCapacitor11
So I've looked at this pretty extensively because I had the same thoughts as you. There are published bytecode interpreters for Clox in other languages, such as Go, C# and Dart. On my machine, the fib(30) bench mark runs in:
- C (the crafting interpreters implementation compiled with -O3): ~58 msec
- Go: ~390msec
- C#: ~383msec
- Dart (my own implementation): ~372msec
So all of these 3 implementations are around 6.7 times slower than the reference C implementation.
FluxCapacitor11
I’ve worked through Crafting Interpreters a couple of times. The last time I did so, instead of building the tree-walking or byte code interpreters, I just compiled to JavaScript which was 1) much faster than the CI bytecode interpreter and 2) much easier to code the whole thing. It was also easier to add additional features like arrays and a more full featured standard library with modules.
Lately I started working on a typed language compiling to D. D is nice because it has everything already. And it compiles to nice binaries without a huge runtime. But it’s obviously not as popular as C. But for my purposes it’s great. Edit: of course it’s garbage collected, which is could be a big pro or con depending on your language goals.
Polling shows only about a third of the 25% actually want to leave. The rest want to “send a message”.