Hacker News new | past | comments | ask | show | jobs | submit login

Author here, I actually think so. The rendering of the virtual DOM as well as hooks are fairly interesting mathematical constructs. A pattern I use a lot in web applications is the state reducer, which is really a fold over events and state. Seeing the functional nature of it (and reactive programming in general) can make for quite composable react code, while it is easy to make either a verbose mess of propdrilling or do a lot of tricky context mixing.



I'd love to see some examples of your diagrams. Are they all hand-written or do you use online tools for them? I do quite a bit of graph diagramming but not for detailed planning of implementation. Best example I've seen along those lines are the xState tools for state charts (https://stately.ai/viz).


https://media.hachyderm.io/media_attachments/files/109/405/5...

This looks very mundane but I do think about it very mathematically as well: user interaction with a search engine. The "encode" arrow for example is very much about NLP and tokenizing, which is a functor from the "category" of natural language to the functor of "lucene tokens" which then has a functor to "lucene queries". This is of course the very mundane typing of functions as:

function parseQuery(query: NaturalLanguageString): LuceneQuery

nothing spectacular, but the abstract approach means I know I can cache/batch/precompute/distribute/pipeline/modularize it.

Similar mathematical concepts apply to all the other arrows, even if some are a bit wild (how does a search result influence a person's ideas?) But it means I can try to model the "wildness", and create say a probabilistic model to exercise and understand how my search engine actually performs (see for example click models and probabilistic graphical models)

I hope that makes sense?

edit: forgot picture link


I love xstate! I do use plantuml a lot for sketching, but most is done on paper or whiteboards and is quite transient in nature. I must have hundreds if not thousands of sketchbooks pages that look like this:

https://publish-01.obsidian.md/access/017fdca1a82df1fa88d36b...

https://publish-01.obsidian.md/access/017fdca1a82df1fa88d36b...

https://publish-01.obsidian.md/access/017fdca1a82df1fa88d36b...


These are great. You could probably get a lot of mileage out of a post that explores how to model a react component functionally in diagrams.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: