Hacker Newsnew | past | comments | ask | show | jobs | submit | mchaver's commentslogin

I guess beauty is in the eye of the beholder. I've always liked Haskell and OCaml syntax.

That's fine for a library or locally run executable, but I've worked on distributed systems in Haskell and you really need logging in place to track what is going on.

Of course, you will have IO somewhere in a executable where you can handle logging so just separate pure and IO and make sure you have good tests for the pure functions. Also, linting to catch partial functions and dangerous lazy ones (or use an alternative prelude).


Sure you want logging and tracing (in the RPC sense not Debug.Trace.trace).

Most of this can still be done from IO places where the pure functions collect enough error information bubbling up (e.g. content and line/col of parser errors etc.) to not need ad hoc print statements for debugging.


In practice this just doesn't happen because you've composed a bunch of pure functions with various branches within them.

You lose the ability to log "why" some effect is happening.


Eh sure. But you can always collect/carry decisions in something like an Either. When using arrows or your own monadic bindings it is even possible to abstract this away from view.

I like how your comment can be interpreted in two completely opposite manners. Either it is depressing that coding by hand is something curious, worthy of blogging about, or you are an AI-maximalist deriding lowly meat powered coding. Based on your post history I'll assume the former interpretation :)

Do you have any more notes/lectures/references that you can share? I would like to try something similar.

Nice work on letterpaths. I really enjoyed moving the snake around and the sand sounds. It had me hypnotized for a few minutes.


Thank you! Noticed you're interested in similar areas. I've also previously done some work on maths problem generation. Similar to letterpaths, the core lib can then be used to power games/other educational apps. As I'm sure you've found as well, It's surprisingly difficult to generate random maths problems aligned to a curriculum! Core lib is UK-focussed: https://github.com/RobinL/maths-game-problem-generator

And examples of games is can power:

https://rupertlinacre.com/maths_vs_monsters/

https://rupertlinacre.com/breakout_maths/

https://rupertlinacre.com/maths_blaster/


Thanks for taking the time to look. My biggest focus right now is own Numerikos. I hope I can make a better math learning platform. Math games are fun too. There are some nice ideas in the examples you have shared here.


I am siding with the group that opens bananas from the bottom.


Which side is the bottom?


Hey everyone! I found a sideless one over here! Get 'em!!


>Which side is the bottom?

i'll tell you this if it helps, for the cohort he wishes to join he meant to say top.


Are you saying this was a case of top-whistling?


In many countries, having citizenship means you are registered to vote. It is pretty convenient. Just show your ID card and you can vote.


It is also worth noting that in these countries it is significantly less hassle and lower monetary costs to get an ID card than in the USA.


The US has no compulsory ID. Parents are not even required to register births; medical professionals are, though, and a lot of things become challenging without a birth certificate, so I imagine the vast majority of births are registered. It's only within the past few decades that children were registered with social security at birth, instead of later. My siblings and I were only registered when it became necessary to get a credit on my parents's taxes; my parents were registered when they began to seek employment.


I am building a web application for learning math. I want it to be something between Khan Academy and Math Academy. Here is a demo of fourth grade https://demo.numerikos.com/ Currently the best part about it is one of my kids is using it. I have some more lessons ready, waiting to be released and I am currently working on Trigonometry.


Definitely not in my experience. The most changed are the change logs, files with version numbers and readmes. I don't think anyone is afraid of keeping those up to date.


My take is that there are probably multiple systems out there than can help you achieve mastery, but it depends on your personality, life circumstances, etc. Just like there ten thousand paths up the mountain. It is a good idea to try out a couple and find the one that works for you. Then if you get to the point where you master your target skill and it is your turn to spread the gospel of "the way", it is good to keep in mind why it worked for you.


Consider applying for YC's Summer 2026 batch! Applications are open till May 4

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

Search: