The :hoplon: ClojureScript Web Framework - http://hoplon.io/
dave 2020-03-13T00:13:28.220600Z

a coworker of mine and i are just a little doubtful that it's smart enough to figure out where the cells are 100% of the time it works totally fine in simple cases like (cell= [one-cell another-cell]) or (cell= (:something some-cell)), but as the expressions get more and more complex, we think trusting it is a bit of a leap of faith

dave 2020-03-13T00:13:46.221Z

the big thing for me, though, is that it isn't immediately obvious to the human reading the code where the cells are

dave 2020-03-13T00:14:02.221200Z

it feels a bit too magic to me sometimes

micha 2020-03-13T00:15:01.222Z

i've never seen a case where a formula couldn't figure out which things are cells, because it just calls cell? on them

micha 2020-03-13T00:15:24.222500Z

but when you want to do some certain types of things it can be difficult for a human

micha 2020-03-13T00:16:52.223800Z

especially if you need to do something like (formulet [x (cell 100)] (when @some-other-cell x))

micha 2020-03-13T00:17:41.224600Z

like if you want to manipulate cells as cells inside a formula, and not just the values contained in the cells

micha 2020-03-13T00:19:18.225100Z

like in the above example the formula wouldn't update when some-other-cell updates

dave 2020-03-13T00:20:30.225700Z

ah! yeah, i guess that would be an example of something you can do with formula-of and formulet, but not cell=, because cell= eagerly treats cells as their values

dave 2020-03-13T00:20:52.226400Z

it is pretty uncommon to need to do that, though

micha 2020-03-13T00:20:55.226500Z

yeah, there are ways, but it's more quirky

micha 2020-03-13T00:21:16.226900Z

like (cell= (when @~some-other-cell x))

micha 2020-03-13T00:21:43.227500Z

the ~ guy hides some-other-cell from the cell= code walker

micha 2020-03-13T00:22:20.227900Z

but it's probably overkill, just use formulet or whatever in that case for sure


Yeah personally I've found cell= to be really reliable for what it does. (and yeah formula-of and fomulet handle the cases it's not perfect for)

dave 2020-03-13T00:46:48.229500Z

i can't personally think of an example of cell= failing to recognize cells, especially if you know how to use ~

micha 2020-03-13T00:47:47.230200Z

the ~ form has some quirks that can be surprising

micha 2020-03-13T00:48:04.230400Z

in other words annoying lol


I way more often get tripped up by the templating nuances in hoplon


conditional children, another landmine


ie if vs if-tpl

micha 2020-03-13T01:13:05.231800Z

ah, yes, that templating


i feel that part was clearer back when hlisp was a thing, since the only elements you used were markup or special ones


like the templating model made sense if you knew mustache or whatever. now with everything intermingled, more conceptual overhead


ahem, "power" 😬