HNHacker News
TopNewBestAskShowJobs

tearflake

79 karma · joined August 2, 2024

submissionscomments
tearflake··on A different take on S-expressions
Actually it's quite simple. We parse from left to right. When we hit EOL, we return to the beginning of line and increase Y by one.

Blocks are parsed in the following way: when we get the beginning count of block opening characters, we move Y by one, loop right while whitespace, until we encounter ending count of block characters.

In transposed block, we just switch X and Y, it is easily done with pointers, and use the same code.

tearflake··on A different take on S-expressions
Here, I brought down the enthusiasm a bit in the closing word. I hope it creates less confusion now.
tearflake··on A different take on S-expressions
Solves a mess with closing parens. But I'm not sure if it is worth of hassle. Anyway, it exists.
tearflake··on A different take on S-expressions
That looks clean, can't argue that.
tearflake··on A different take on S-expressions
Ikr? People should loosen a bit, why should everything be so serious?
tearflake··on A different take on S-expressions
Sorry for the confusion. I must be a very disturbed person because I kind of like what is explained there.
tearflake··on A different take on S-expressions
Changed the "somewhat" to "very" in the document, thank you.
tearflake··on A different take on S-expressions
Thank you for the criticism. Lots of lispers share your opinion.
tearflake··on A different take on S-expressions
I don't intend to be funny. Just a bit childish, but in a good way :)
tearflake··on A different take on S-expressions
Here is another example, an axiom from propositional logic:

    (impl (impl p (impl q r)) (impl (impl p q) (impl p r)))
which, vertically indented in a transposed block, looks like this:

    * (                                               )
    *   i (               ) (                       )
    *   m   i p (       )     i (       ) (       )
        p   m     i q r       m   i p q     i p r
        l   p     m           p   m         m           *
            l     p           l   p         p           *
                  l               l         l           *
which, using transposed lines within the transposed block, finally looks like this:

    * (                                                                                           )
    *   *impl* (                               ) (                                              )   *
    *            *impl* *p* (                )     *impl* (                ) (                )     *
                              *impl* *q* *r*                *impl* *p* *q*     *impl* *p* *r*       *
This time I won't make any judgements. Could be good, could be bad, you decide.
tearflake··on Show HN: FlakeUI
At some moment I had a version with cached bitmaps that simply flew fast and smooth. But, since HTML has some serious issues with rendering to bitmap from js, I had to pick the slower version with native real time HTML rendering.
tearflake··on Show HN: FlakeUI
It is true that I plan a custom renderer with scripting support, to replace the HTML version. From the tests I performed by now, it can be smoother and faster than the current version. But it is yet to be seen how well would a substitution to HTML catch up with the current state of art CSS+HTML+JS.
tearflake··on Show HN: FlakeUI
I'm sorry, I really wouldn't know what's happening there. On my Linux, Chromium works the best, Firefox can pass, Opera is a bit slower, and Epiphany (is that the name?) chokes a fair bit.

On i3, Windows things seem fine - I tried Edge, Chrome, and Firefox.

On Mac, I somehow managed to get it working based on Lambda Test web interface feedback, but I wouldn't know the real use performance.

tearflake··on Show HN: FlakeUI
May I ask, what machine you are running it on? On my Celeron (4GB RAM), things are OK-ish.
tearflake··on Show HN: FlakeUI
Maybe a note keeping app?