<story><title>So you&apos;re using a weird language</title><url>https://morepablo.com/2022/09/so-you-re-using-a-weird-language.html</url></story><parent_chain><item><author>maxwelljoslyn</author><text>I&amp;#x27;m about to embark on my master&amp;#x27;s thesis, in a domain[1] which could realllllly use the &amp;quot;attach to running process; re-evaluate code and have the system just keep going&amp;quot; aspect of Lisp languages.&lt;p&gt;I know Python best. But I have reached my breaking point with its syntax, and its lack of binding constructs, and lack of symbol datatype, quote, etc. I am intending to use Clojure ... but I have to &lt;i&gt;ship&lt;/i&gt; this thing by May 2023 come hell or high water.&lt;p&gt;All else being equal, I will proooobably be able to go further with Python. But I&amp;#x27;m concerned it will hamstring me from doing the crucial feature of &amp;quot;extending the design [ie code] of a game as it runs&amp;quot; since, AFAIK, it&amp;#x27;s difficult to get a Lisp-ish experience of total live reloadability in Python... jurigged[2] and reloading[3] not withstanding.&lt;p&gt;I know some common lisp so I&amp;#x27;m not a total lisp noob.  I&amp;#x27;ve learned enough CLJ to be dangerous ... but I&amp;#x27;m worried I&amp;#x27;m backing myself into an endless hole by using a language I&amp;#x27;m not yet master  of. Yet, I think the features of the ecosystem (total live reloadability of a CLJ&amp;#x2F;CLJS app! with current state preserved even down to what a user has typed in the HTML UI!) are so tempting...&lt;p&gt;Just venting out loud. comment&amp;#x2F;contact if you have suggestios or are curious about the project; i&amp;#x27;m soon to begin blogging as I develop it.&lt;p&gt;[1] I&amp;#x27;m reinventing the &amp;quot;virtual tabletop.&amp;quot; Current ones are so fucking shallow.
[2] &lt;a href=&quot;https:&amp;#x2F;&amp;#x2F;github.com&amp;#x2F;breuleux&amp;#x2F;jurigged&quot; rel=&quot;nofollow&quot;&gt;https:&amp;#x2F;&amp;#x2F;github.com&amp;#x2F;breuleux&amp;#x2F;jurigged&lt;/a&gt;
[3] &lt;a href=&quot;https:&amp;#x2F;&amp;#x2F;github.com&amp;#x2F;julvo&amp;#x2F;reloading&quot; rel=&quot;nofollow&quot;&gt;https:&amp;#x2F;&amp;#x2F;github.com&amp;#x2F;julvo&amp;#x2F;reloading&lt;/a&gt;</text></item></parent_chain><comment><author>samatman</author><text>I would urge you to go ahead and use Clojure here.&lt;p&gt;A big part of the value proposition is access to the entire JVM and JavaScript ecosystems. Bindings will be available for the more popular libraries, and if there aren&amp;#x27;t, well, Clojure is designed to make that easy.&lt;p&gt;It might not be pretty, it might not be idiomatic, but you&amp;#x27;re never going to hit a wall where &amp;quot;oh, if only I was using a popular language, I&amp;#x27;d be able to do $obscure-thing&amp;quot;. $obscure-thing is available for the JVM.</text></comment>
<story><title>So you&apos;re using a weird language</title><url>https://morepablo.com/2022/09/so-you-re-using-a-weird-language.html</url></story><parent_chain><item><author>maxwelljoslyn</author><text>I&amp;#x27;m about to embark on my master&amp;#x27;s thesis, in a domain[1] which could realllllly use the &amp;quot;attach to running process; re-evaluate code and have the system just keep going&amp;quot; aspect of Lisp languages.&lt;p&gt;I know Python best. But I have reached my breaking point with its syntax, and its lack of binding constructs, and lack of symbol datatype, quote, etc. I am intending to use Clojure ... but I have to &lt;i&gt;ship&lt;/i&gt; this thing by May 2023 come hell or high water.&lt;p&gt;All else being equal, I will proooobably be able to go further with Python. But I&amp;#x27;m concerned it will hamstring me from doing the crucial feature of &amp;quot;extending the design [ie code] of a game as it runs&amp;quot; since, AFAIK, it&amp;#x27;s difficult to get a Lisp-ish experience of total live reloadability in Python... jurigged[2] and reloading[3] not withstanding.&lt;p&gt;I know some common lisp so I&amp;#x27;m not a total lisp noob.  I&amp;#x27;ve learned enough CLJ to be dangerous ... but I&amp;#x27;m worried I&amp;#x27;m backing myself into an endless hole by using a language I&amp;#x27;m not yet master  of. Yet, I think the features of the ecosystem (total live reloadability of a CLJ&amp;#x2F;CLJS app! with current state preserved even down to what a user has typed in the HTML UI!) are so tempting...&lt;p&gt;Just venting out loud. comment&amp;#x2F;contact if you have suggestios or are curious about the project; i&amp;#x27;m soon to begin blogging as I develop it.&lt;p&gt;[1] I&amp;#x27;m reinventing the &amp;quot;virtual tabletop.&amp;quot; Current ones are so fucking shallow.
[2] &lt;a href=&quot;https:&amp;#x2F;&amp;#x2F;github.com&amp;#x2F;breuleux&amp;#x2F;jurigged&quot; rel=&quot;nofollow&quot;&gt;https:&amp;#x2F;&amp;#x2F;github.com&amp;#x2F;breuleux&amp;#x2F;jurigged&lt;/a&gt;
[3] &lt;a href=&quot;https:&amp;#x2F;&amp;#x2F;github.com&amp;#x2F;julvo&amp;#x2F;reloading&quot; rel=&quot;nofollow&quot;&gt;https:&amp;#x2F;&amp;#x2F;github.com&amp;#x2F;julvo&amp;#x2F;reloading&lt;/a&gt;</text></item></parent_chain><comment><author>Mathnerd314</author><text>If you don&amp;#x27;t mind being stuck on Windows you could use Visual C# or Visual Basic, they have edit-and-continue too. &lt;a href=&quot;https:&amp;#x2F;&amp;#x2F;learn.microsoft.com&amp;#x2F;en-us&amp;#x2F;visualstudio&amp;#x2F;debugger&amp;#x2F;edit-and-continue?view=vs-2022&quot; rel=&quot;nofollow&quot;&gt;https:&amp;#x2F;&amp;#x2F;learn.microsoft.com&amp;#x2F;en-us&amp;#x2F;visualstudio&amp;#x2F;debugger&amp;#x2F;edit...&lt;/a&gt; I&amp;#x27;ve worked with the SuperTux C# level editor in the past. C# was actually pretty nice for GUI stuff.&lt;p&gt;There doesn&amp;#x27;t seem to be a good GUI framework for Clojure. There was Seesaw but it hasn&amp;#x27;t been updated since 2019 (no maintainer). There is a guy developing a new framework &lt;a href=&quot;https:&amp;#x2F;&amp;#x2F;github.com&amp;#x2F;HumbleUI&amp;#x2F;HumbleUI&amp;#x2F;&quot; rel=&quot;nofollow&quot;&gt;https:&amp;#x2F;&amp;#x2F;github.com&amp;#x2F;HumbleUI&amp;#x2F;HumbleUI&amp;#x2F;&lt;/a&gt; but it&amp;#x27;s WIP. I guess you could sidestep this by making it a webapp and using figwheel + web framework of choice.</text></comment>