Handmade Network»leddoo

Recent Activity

leddoo

making some educational videos about vector graphics. hoping to eventually cover how my renderer works. https://youtu.be/33KqDTwdR08

[vector renderer] implemented basic stroking (butt caps and bevel joins). performance dropped quite a bit, because the renderer is currently memory bound. (frame buffer doesn't fit into the cache. i'll implement tiling next to fix that.)

working on a vector renderer once again. performance is pretty good 🙂 rendered on one cpu core without any caching. but haven't implemented stroking yet.

here are some more examples in a hypothetical functional language:

  • the last bit is arguably unreadable. you could try to "refactor" that, but i think different code representations are necessary to make this kind of computation understandable. the simplest of which is to visualize the computation in a parallel view for a given example.
  • here, each is actually a function (map). the language pretty much only has functions and let bindings.
  • uniform abstract syntax is nice for language extension and other kinds of meta programming.
  • the key idea here is to have a surface syntax on top of the AST to make things prettier.

recently discovered an interesting lispy, operator, whitespace syntax:

  • it is designed as syntactic sugar on top of a simple, meta programming friendly ast.
  • precedence isn't 100% worked out. (mistake in separator example: should of course parse as ... [make-random-list 5] ...)

messing with custom layout to avoid CSS

Forum reply: note app
leddoo
Forum reply: note app
leddoo
Forum reply: note app
leddoo
Forum reply: note app
leddoo
Forum reply: note app
leddoo
Forum reply: note app
leddoo
Forum reply: note app
leddoo
Forum reply: note app
leddoo
Forum reply: note app
leddoo
Forum reply: note app
leddoo
New forum thread: note app
leddoo

The dependency system now supports nested content sized elements, which is pretty noice 👌

I have also been working on an imgui library. It's still super early days and many things will change (like passing a string to a label), but the basic idea is there!