Y
HN Search
Hacker News Search
new
|
comments
|
top
|
jobs
nicolodavis
searching Neon…
1.
▲
2.
▲
3.
▲
4.
▲
5.
▲
6.
▲
11 ms
·
1.
▲
by
nicolodavis
2y ago
I think you might be conflating boardgame.io and boardgamelab.app. boardgame.io - MIT licensed open-source JS library. boardgamelab.app - Proprietary platform for designing and playtesting board games.
2.
▲
by
nicolodavis
2y ago
I agree that asynchronous flows are hard to represent using a state object. I chose to go with a monadic approach in boardgamelab.app (I'm not limited by language features since I'm designing it from the ground up for this use cas
3.
▲
by
nicolodavis
2y ago
boardgame.io was created as a personal open-source project while I was employed at Google. It is not an official Google product.
4.
▲
by
nicolodavis
2y ago
Original creator of boardgame.io here. A pleasant surprise to see this here after many years. More recently, I've been working on https://boardgamelab.app/ , which uses a visual programming language to model game rules
5.
▲
by
nicolodavis
2y ago
For academic literature, I would recommend reading: 1. James Ross: https://www3.nd.edu/~afreddos/courses/43151/ross-immateriali... 2. Edward Feser: https://www.newdualism.org/papers/E.Fes
6.
▲
by
nicolodavis
2y ago
If we're talking about some sort of computational system achieving consciousness, I'm curious how you can escape the fact that computation is observer-relative, i.e. the underlying representation of a computation has no semantics,
7.
▲
by
nicolodavis
3y ago
Great to hear about the revival of sacred music in your diocese. Do you happen to have any links to the documents that your previous bishop wrote?
8.
▲
by
nicolodavis
5y ago
You could consider using a library like boardgame.io for this.
9.
▲
by
nicolodavis
5y ago
Wanted to add that Lisp maps quite well to visual programming languages: https://boardgamelab.app/blog/visual-scripting/ You get the benefits of writing code composed of neat delineated expressions that nest arbit
10.
▲
Autogenerated Screenshots in Markdown
(nicolodavis.com)
2 points
by
nicolodavis
6y ago
|
0 comments
11.
▲
Generating Screenshots from Markup
(nicolodavis.com)
1 points
by
nicolodavis
6y ago
|
0 comments
12.
▲
by
nicolodavis
6y ago
Do you have specific examples of what is difficult to understand in the standard books for a non-native speaker? Just asking out of curiosity and maybe readers can learn a thing or two about making documentation more accessible.
13.
▲
by
nicolodavis
6y ago
That's right. For my use-case I decided to just stick with JS for UI stuff (using Svelte). I call into Rust code like a black box to update some state.
14.
▲
by
nicolodavis
6y ago
No reason except that I've written Go in the past and wanted to learn a new language :) Comparing the two languages, I would say that Rust's enums and pattern matching make it easier to work with for my specific use case.
15.
▲
by
nicolodavis
6y ago
The Rollup plugin linked to in the article produces JS functions that call into WASM code. JS objects are automatically converted to Rust structs via Serde and vice-versa. I use TypeScript / Svelte for DOM interactions and only call in
16.
▲
by
nicolodavis
6y ago
Something like this is valid TypeScript I think? interface MyType { a: number; } function process(value: MyType) { console.log(value); } const value = { a: 1, b: 2 }; process(value);
17.
▲
by
nicolodavis
6y ago
Note that Rust is only used for the state updates. All the UI stuff is TypeScript (using Svelte).
18.
▲
by
nicolodavis
6y ago
Thanks for the link! I'll look into this for my other TypeScript codebases.
19.
▲
by
nicolodavis
6y ago
Hey Amit, good to hear from you! > Javascript is fast enough for your use case. No one will notice the difference in a board game website. No, actually. Have you seen how long boardgame.io's MCTS bot takes to make a Tic-Tac-Toe move
20.
▲
by
nicolodavis
6y ago
Yep, I don't think Rust is quite there yet for web dev. I didn't use Rust for any frontend interactions. The web app is an SPA written in Svelte. I only used it for the core state update logic, which benefits from the typing and p
21.
▲
by
nicolodavis
6y ago
That's correct. You have to insert validation code at all the entry points, which was the case for me. Moving to Rust doesn't eliminate validation altogether, but you don't have to do any type related validation which is nice
22.
▲
by
nicolodavis
6y ago
I'm just using an SPA written in Svelte on the frontend. I only use Rust for the game state updates. About measurements, I just whipped up a quick benchmark comparing the JavaScript state updates with the WASM version. You do pay a cos
23.
▲
Moving from TypeScript to Rust / WebAssembly
(nicolodavis.com)
500 points
by
nicolodavis
6y ago
|
405 comments
24.
▲
The Grim Reaper Paradox (2008)
(alexanderpruss.blogspot.com)
2 points
by
nicolodavis
6y ago
|
0 comments
25.
▲
by
nicolodavis
6y ago
@soylentgraham: You should check out the recent releases of https://boardgame.io/ . The tutorials are now rewritten with a focus on the plain JS client (no React).
26.
▲
by
nicolodavis
6y ago
I'm assuming that you're asking about Boardgame Lab (from the other comment). The basic version just uses Monte Carlo Tree Search and the game's victory condition to play the game. This won't result in a very strong bot
27.
▲
by
nicolodavis
6y ago
If I understand your architecture correctly, your client has to wait for the network roundtrip before being able to see the result of the die roll, correct?
28.
▲
by
nicolodavis
6y ago
There is value in making the game progress client-side without waiting for a response from the server. Having the game logic run on both sides gives you the best of both worlds: 1. One authoritative version of the game state on the server.
29.
▲
by
nicolodavis
6y ago
Nice! I'm using a very similar architecture for https://boardgamelab.app/ . The WebAssembly performance boost will make a difference once I've implemented MCTS bots for the platform.
30.
▲
by
nicolodavis
6y ago
This lecture at Stanford is a great breakdown of the philosophical understanding of what consciousness is and how that relates to artificial intelligence: https://soundcloud.com/thomisticinstitute/artificial-intelli...
More ›