klipse

Yehonathan Sharvit 2016-11-06T05:28:55.000459Z

well done @jrheard your article got very good feedback on HN and Reddit

Yehonathan Sharvit 2016-11-06T05:28:56.000460Z

https://news.ycombinator.com/item?id=12881407

jrheard 2016-11-06T15:31:02.000463Z

thanks! just realized i ended up on HN somehow, i was out with friends last night and was wondering why random people kept following me on twitter 😄

jrheard 2016-11-06T15:32:38.000464Z

i love this bit of feedback from the reddit comments:

Ha, that was fun~!
Also those live blocks are boss.

Yehonathan Sharvit 2016-11-06T15:34:27.000465Z

Nice!

Yehonathan Sharvit 2016-11-06T15:34:40.000466Z

I’ve deployed the infinite loop protection

jrheard 2016-11-06T15:34:45.000467Z

oh awesome!

Yehonathan Sharvit 2016-11-06T15:34:52.000468Z

You can test it in KLIPSE repl

Yehonathan Sharvit 2016-11-06T15:35:33.000471Z

I added a flag to display the guard in the transpiled js

jrheard 2016-11-06T15:35:40.000472Z

niiiiice

Yehonathan Sharvit 2016-11-06T15:35:47.000473Z

by default, guard doesn’t appear

jrheard 2016-11-06T15:35:52.000474Z

(defn foo []
  (while true))

(foo)
works like a charm

jrheard 2016-11-06T15:36:24.000475Z

i like the default of 3 seconds, too, i think that makes sense

jrheard 2016-11-06T15:36:53.000476Z

i noticed in the HN thread that someone put together an alternate version of the post’s code - https://gist.github.com/Haspaker/74f124859633edeb8d04465ce0053225 - that takes a while to run if you paste it into klipse

jrheard 2016-11-06T15:37:21.000478Z

so it looks like people are actually using these klipse windows to mess around and come up with stuff, which is awesome!

jrheard 2016-11-06T15:37:41.000479Z

i was worried that people would read the lines like “go ahead, try setting that foo to a bar” and just skip right over them without trying it

jrheard 2016-11-06T15:37:55.000480Z

and here we’ve got this guy putting together an alternate version of the algorithm right there in the klipse window!

Yehonathan Sharvit 2016-11-06T15:38:50.000481Z

Awesome!

Yehonathan Sharvit 2016-11-06T15:42:06.000482Z

I’m wondering why this code doesn’t cause an inf. loop

Yehonathan Sharvit 2016-11-06T15:42:49.000483Z

I know

Yehonathan Sharvit 2016-11-06T15:43:08.000484Z

because, you are using your own version of klipse and not the one from the cloud

Yehonathan Sharvit 2016-11-06T15:46:32.000485Z

@jrheard ⬆️

Yehonathan Sharvit 2016-11-06T15:46:47.000486Z

Also I added your article in KLIPSE readme https://github.com/viebel/klipse/blob/master/README.md#community

jrheard 2016-11-06T15:51:32.000489Z

ah yeah, yup - out of habit, i prefer hosting my site’s css/js/etc myself, that way i don’t have to reason about a third party’s uptime/speed/etc

jrheard 2016-11-06T15:52:21.000490Z

plus i can control when i upgrade, etc 😄

Yehonathan Sharvit 2016-11-06T15:52:49.000491Z

Yeah that makes sense

jrheard 2016-11-06T15:53:13.000492Z

i’ll definitely upgrade before the next post, though!

jrheard 2016-11-06T15:53:41.000493Z

it’s basically done, but i’m going to hold off posting it for a couple of weeks due to real-life stuff, and also i want to do a few assorted housekeeping things to the blog’s code/setup first

jrheard 2016-11-06T15:53:51.000494Z

http://jrheard.com/blog-staging/procedural-dungeon-generation-cellular-automata/ is the current version

Yehonathan Sharvit 2016-11-06T15:54:03.000495Z

you might want to configure the max-eval-duration

jrheard 2016-11-06T15:54:32.000496Z

oh nice, will do

Yehonathan Sharvit 2016-11-06T15:58:10.000497Z

Great article!

Yehonathan Sharvit 2016-11-06T15:58:31.000498Z

Thx for mentioning how much you enjoy klipse 🤘

jrheard 2016-11-06T16:01:47.000499Z

😄 np

Yehonathan Sharvit 2016-11-06T16:29:54.000500Z

https://twitter.com/viebel/status/795302102633512960