Live data from Hacker News

Microsoft Tilecode

microsoft.github.io

51–60 of 63 posts

Re: Microsoft Tilecode

#51

Earlier quoted context omitted.

This is a side effect of it being a research project. It's interesting to me because I've worked in this space (I designed and built the visual scripting system for Facebook Horizon) but otherwise I agree. Kids and non-programmers won't understand this

Perhaps there is one description for existing programmers (who would appreciate the comparison to variable binding) and one that doesn’t (who could care less about that)?

Hi Sean, yes - that is the case. I've regrouped the documentation to make this clear. Happy to have any suggestions for improvements. This is just a starting point.

Re: Microsoft Tilecode

#52

It strongly looks like PuzzleScript [1]. In fact, I would be surprised that this wasn't inspired by PuzzleScript; the paper [2] seems to have no mention of PuzzleScript though. [1] https://www.puzzlescript.net/ [2] https://www.microsoft.com/en-us/research/uploads/prod/2020/0...

Thanks very much for the pointer to PuzzleScript. I was not aware of it. It's very cool to see a rewriting-based system in practice. I chose to work with a more imperative style of guarded commands in TileCode, but it's very close to a rewriting system.

Re: Microsoft Tilecode

#53

I really don't get the game. How do you play it? I put a good 5mins and couldn't figure out anything. As a child, I remember getting hooked to Super Mario in < 5min after I saw my friends play it. I'm telling ya, these pretentious "researchers" really don't know how us "normies" think.

Arrow keys move, Z is the A button, X is the B button. It probably supports game controller, although I didn't try one.

This is a multi-cart. Move over a game slot number and press A to load it. The buttons at the top allow you to edit the map, sprites, code, and play the game in the slot.

Slot 1 has a player movement example. Slot 2 and 3 are empty. Slot 4 is Snake. Slot 5 is Boulder Dash. etc.

Re: Microsoft Tilecode

#54

It seems to be based on cellular automata kind of rules. I've done experiments with this almost twenty years ago, and it's surprising how much can be done with simple rules. However, it can also be difficult to debug when you have a large amount of rules.

Yes, it's very close to cellular automata, with a few tweaks to make it easier to program. You are quite right about the debugging situation with growth of rules - I've some plans about this, but it will probably require more screen real estate than the 160x120 MakeCode Arcade screens offer.

Re: Microsoft Tilecode

#55
post #25

This is a fascinating pairing to what the block editors they have for micro:bit. I wonder if the new micro:bit will work with it. Current hardware list: https://arcade.makecode.com/hardware https://news.ycombinator.com/item?id=24763120

The micro:bit doesn't have enough buttons or pixels, but you can maybe go the other direction: the "meowbit" appears to be compatible with both MakeCode Arcade and micro:bit accessories—although maybe you have to use MicroPython instead of micro:bit MakeCode to do microcontroller stuff? It would definitely be cool to have something that is perfectly compatible with both.

MakeCode Arcade has an extension to work with the micro:bit edge connector pins from the meowbit.

Re: Microsoft Tilecode

#56

Curious if this could be a good way for kids to learn programming. Does anyone have experience with this (or similar technologies) and children aged 7-10?

We did studies with children ages 8-14 over the summer. It was quite successful. We'll be reporting on this evaluation once we've completed the analysis. Keep an eye out on https://www.microsoft.com/en-us/research/project/microsoft-t...

Re: Microsoft Tilecode

#57

Earlier quoted context omitted.

The micro:bit doesn't have enough buttons or pixels, but you can maybe go the other direction: the "meowbit" appears to be compatible with both MakeCode Arcade and micro:bit accessories—although maybe you have to use MicroPython instead of micro:bit MakeCode to do microcontroller stuff? It would definitely be cool to have something that is perfectly compatible with both.

MakeCode Arcade has an extension to work with the micro:bit edge connector pins from the meowbit.

Oh superb, thanks!

Re: Microsoft Tilecode

#58

Looks pretty cool. I was messing around with MakeCode for about an hour the other day, just to see what it could do, but board games are more in my wheelhouse, and it looks like I could maybe come up with some interesting things here. The messing about I did was just having a flamingo running around eating algae and avoiding spawning lions, called Flamingo Panic. If you're curious, it's up here: https://bacable.githu…

My top score was 210 after I figured out not to run through the middle.

Re: Microsoft Tilecode

#59
post #58

Looks pretty cool. I was messing around with MakeCode for about an hour the other day, just to see what it could do, but board games are more in my wheelhouse, and it looks like I could maybe come up with some interesting things here. The messing about I did was just having a flamingo running around eating algae and avoiding spawning lions, called Flamingo Panic. If you're curious, it's up here: https://bacable.githu…

My top score was 210 after I figured out not to run through the middle.

Nice :) I've managed 345, but only once. That's usually when I die also.

Re: Microsoft Tilecode

#60

Earlier quoted context omitted.

This is a side effect of it being a research project. It's interesting to me because I've worked in this space (I designed and built the visual scripting system for Facebook Horizon) but otherwise I agree. Kids and non-programmers won't understand this

It's trying very hard to sound smart. But "...something with a non-empty include set that contains only x..." is the same as "...something that includes x and nothing else..." There's this quote from a famous (in strictly relative terms) judge on the German Supreme Court: A good lawyer or judge will, according to him, "think like a philosopher and talk like a peasant!". Of the three other possibilities, two are still…

You're presuming that every phrase was worded _just so_. This could very well have been from the author refactoring their sentence and not simplifying everything. They probably were thinking in these terms (the author is a PL guy from MSR who's pretty heavy into a lot of the formalism) and this sounds like a not-perfectly-polished formal thought.

It's technical, and sometimes technical writing isn't written perfectly. That doesn't mean it's due to willful obtusity, or trying to sound smart.

Post reply on HN