[Ur] Browser-based adventure game

Michael Rohs michael.rohs at hci.uni-hannover.de
Wed Oct 12 12:17:52 EDT 2016


Hi Saulo,

Here are some points of doubt:

- What is the type of a function that produces arbitrary HTML snippets. Is xbody correct?
- What is the name of "show" and "eq" functions? I used "show_list", "show_gameState", "show_pair", and "eq_pair" instead of just "show" and "eq". Is this correct?
- Is there a more convenient syntax for list construction than "1 :: 2 :: 3 :: []", something like "[1, 2, 3]"?
- I had to pass both a "gameState" and a "source gameState" parameter to the "render" function (for the same game state). Is there a way around that?
- I minimized the use of mutable data. So when the game state changes much of the page gets updated. This should probably be done in a more fine-grained way in reality.
- Does Ur/Web do tail-call optimization?
- Will there be other collections beyond lists (dictionary/map, array)?

Best,
Michael


> On 12 Oct 2016, at 16:27, Saulo Araujo <saulo2 at gmail.com> wrote:
> 
> Hi Michael,
> 
> Thanks for sharing your game with the community. I skimmed its source code and I did not found anything that I would qualify as a non-canonical use of Ur/Web. However, beware that I am an Ur/Web beginner too :) Maybe you can pinpoint which parts of the code you are afraid are non-canonical uses of the language...
> 
> Sincerely,
> Saulo
> 
> On Wed, Oct 12, 2016 at 8:33 AM, Michael Rohs <michael.rohs at hci.uni-hannover.de> wrote:
> Hi,
> 
> As part of my exploration of Ur/Web I wrote a tiny browser-based adventure game.
> 
> https://github.com/mirohs/urweb-adventure
> 
> It might be helpful to others looking at the language. If you find non-canonical use of the language (I guess there is some...), please let me know.
> 
> Cheers,
> Michael
> 
> 
> _______________________________________________
> Ur mailing list
> Ur at impredicative.com
> http://www.impredicative.com/cgi-bin/mailman/listinfo/ur
> 
> _______________________________________________
> Ur mailing list
> Ur at impredicative.com
> http://www.impredicative.com/cgi-bin/mailman/listinfo/ur




More information about the Ur mailing list