Simon816

Results 71 comments of Simon816

> One potential change, would be to use NBT tags with /data and /execute store, over objectives. I wanted to use NBT, but I have not been able to find...

> As for transferring data, I know that in 1.13 it is possible to convert nbt into scoreboards with /execute store score run data get I've taken a quick look...

I will take a look at using byte arrays when I next work on CBA. Not sure that providing low/hi parts of a register has any advantage here, other than...

Bitfields are not currently supported. I figured it'd not be a widely used feature. Bitwise operations are expensive compared to arithmetic, due to all values in a scoreboard are ints,...

> have you considered an llvm backend for CBA, then having the C support of clang? Someone else suggested that too: https://www.reddit.com/r/Minecraft/comments/7fnzv4/i_wrote_a_c_compiler_that_creates_minecraft/dqd9osn/ The thing I'm having most difficulty with at...

What you're describing with `__scoreboard_objective` sounds very similar to the `entity_local` variable type I made in this commit: https://github.com/simon816/Command-Block-Assembly/commit/6e52beeee6fb107a487ab1c4cd850072aa171fc2 I need to create documentation for it, but basically it implicitly...

It's kind of possible to add extensions already - in the [compiler/lib](https://github.com/simon816/Command-Block-Assembly/tree/3bedffc9f490364dbecb699532840b075a90f0d0/compiler/lib) directory there are python scripts which implement an API, for example [block.py](https://github.com/simon816/Command-Block-Assembly/blob/3bedffc9f490364dbecb699532840b075a90f0d0/compiler/lib/block.py) implements the `is_block` and `set_block` functions....

Just commenting here to show how the new language (CBL) is coming along https://gist.github.com/simon816/0a68380b250b6e20526eac7d24943cb7

You are correct in that the ABI is different. `--enable-sync` hasn't been needed since I moved over to Command IR so it's not an issue any more.

Regarding non-integer types, I removed it due to being incomplete but I started working on type casting: https://github.com/simon816/Command-Block-Assembly/commit/bbb9475eed2d4ed34ef84e4a38649664a42179bd#diff-2159fe19f79152c7a315904c89d8c523R167 It used the `/execute store` command: https://minecraft.gamepedia.com/Commands/execute#store >`… entity (byte|short|int|long|float|double) -> execute`...