<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Hacker News: heisig</title><link>https://news.ycombinator.com/user?id=heisig</link><description>Hacker News RSS</description><docs>https://hnrss.org/</docs><generator>hnrss v2.1.1</generator><lastBuildDate>Wed, 29 Apr 2026 18:58:29 +0000</lastBuildDate><atom:link href="https://hnrss.org/user?id=heisig" rel="self" type="application/rss+xml"></atom:link><item><title><![CDATA[New comment by heisig in "Your phone is about to stop being yours"]]></title><description><![CDATA[
<p>Really good timing for Jolla to produce a new phone :)<p>I still have fond memories of my 2013 Jolla, and I'm hoping that the 2026 Jolla will be just as lovingly crafted.  Most importantly, Jolla is a company that seems to care about me, the user, whereas Apple and Google constantly treat me like a peasant that needs to be governed.</p>
]]></description><pubDate>Tue, 28 Apr 2026 21:42:18 +0000</pubDate><link>https://news.ycombinator.com/item?id=47941240</link><dc:creator>heisig</dc:creator><comments>https://news.ycombinator.com/item?id=47941240</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47941240</guid></item><item><title><![CDATA[New comment by heisig in "Yann LeCun raises $1B to build AI that understands the physical world"]]></title><description><![CDATA[
<p>Says the bag of lipids and proteins :)</p>
]]></description><pubDate>Wed, 11 Mar 2026 13:00:07 +0000</pubDate><link>https://news.ycombinator.com/item?id=47335001</link><dc:creator>heisig</dc:creator><comments>https://news.ycombinator.com/item?id=47335001</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47335001</guid></item><item><title><![CDATA[New comment by heisig in "Over 36,500 killed in Iran's deadliest massacre, documents reveal"]]></title><description><![CDATA[
<p>Unfortunately I would not be surprised if the real death toll is even higher.  I have first-hand information.  We are talking about indiscriminate shooting with heavy machine guns into peaceful protests, happening in every city of the country.  The rule of law has completely broken down.  The wounded avoid hospitals because they are afraid of getting killed there.</p>
]]></description><pubDate>Tue, 27 Jan 2026 08:08:24 +0000</pubDate><link>https://news.ycombinator.com/item?id=46776894</link><dc:creator>heisig</dc:creator><comments>https://news.ycombinator.com/item?id=46776894</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46776894</guid></item><item><title><![CDATA[New comment by heisig in "Over 36,500 killed in Iran's deadliest massacre, documents reveal"]]></title><description><![CDATA[
<p>Unfortunately those videos exist.  There are videos of relatives walking for hours from body bag to body bag to find the remains of their lost ones.  There are videos of people with heavy machine guns shooting indiscriminately into peaceful protests.  There are videos of executions.  Everything has been recorded.<p>There is a reason why the Iranian government cannot activate internet and phones anymore.  Once people can communicate again, they will count and document the true scale of events.  Right now, it seems the Iranian government would rather give up on internet and telephones altogether than having anyone find out, which tells you just about how bad the situation is.</p>
]]></description><pubDate>Tue, 27 Jan 2026 07:53:57 +0000</pubDate><link>https://news.ycombinator.com/item?id=46776760</link><dc:creator>heisig</dc:creator><comments>https://news.ycombinator.com/item?id=46776760</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46776760</guid></item><item><title><![CDATA[New comment by heisig in "Adaptive Hashing"]]></title><description><![CDATA[
<p>Let me comment as an SBCL user:  This is outstanding work, and I can now remove a lot of performance hacks from my code because the default hash tables became equally fast!<p>Also, this technique eliminates a number of worst-case scenarios and inefficiencies, which is a boon for any hash table user.</p>
]]></description><pubDate>Sun, 11 May 2025 05:34:53 +0000</pubDate><link>https://news.ycombinator.com/item?id=43951668</link><dc:creator>heisig</dc:creator><comments>https://news.ycombinator.com/item?id=43951668</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=43951668</guid></item><item><title><![CDATA[New comment by heisig in "uv downloads overtake Poetry for Wagtail users"]]></title><description><![CDATA[
<p>I recently switched to uv, and I cannot praise it enough.  With uv, the Python ecosystem finally feels mature and polished rather than like a collection of brittle hacks.<p>Kudos to the uv developers for creating such an amazing piece of software!</p>
]]></description><pubDate>Mon, 17 Mar 2025 09:17:19 +0000</pubDate><link>https://news.ycombinator.com/item?id=43386521</link><dc:creator>heisig</dc:creator><comments>https://news.ycombinator.com/item?id=43386521</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=43386521</guid></item><item><title><![CDATA[New comment by heisig in "If ChatGPT produces AI-generated code for your app, who does it belong to?"]]></title><description><![CDATA[
<p>I fully agree.  Limiting the amount of copies of software to sell them like a finite good has so many downsides:<p>1. There may be people who cannot use/afford some software, although there is technically an infinite supply.<p>2. Collaboration becomes awkward.  Either all contributors give up their rights (Open Source), or one contributor holds all the rights and the rest is being treated unfairly.  The latter decreases the incentives to make software modular and reusable.<p>3. The resulting software typically gets worse due to some copyright enforcement mechanisms.  For example, no closed source software will ever have a good debugger, because that would allow viewing and changing the source code.<p>4. It creates a power imbalance between software owners and software users.  Nearly all software has to be adapted over time, but the software owner has a monopoly on performing such adaptations.  The result is enshittification, surveillance, and basically a return to feudalism where daily life is governed by a small number of overlords.<p>5. It is not clear how to price software fairly, and there is also little incentive to do so.<p>6. My impression is that high-quality software converges to formal proof, which is AFAIK not copyrightable.<p>For all these reasons, I think it is time to consider a world without copyright on software.<p>To those that worry about salaries in such a world: Negotiate payment in advance (contracts, crowdfunding, bounties, ...), or get a job where software is created as a byproduct (consultant, researcher, tester, ...).</p>
]]></description><pubDate>Wed, 25 Dec 2024 00:10:13 +0000</pubDate><link>https://news.ycombinator.com/item?id=42505917</link><dc:creator>heisig</dc:creator><comments>https://news.ycombinator.com/item?id=42505917</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=42505917</guid></item><item><title><![CDATA[New comment by heisig in "Microsoft says EU to blame for the worst IT outage"]]></title><description><![CDATA[
<p>Now Microsoft just sounds like pre-Brexit Britain.  Why reflect on your own shortcomings when you can blame the EU instead :)<p>I suggest Microsoft follows Britain's example and leaves.  The main difference is that we Europeans actually miss the Brits, whereas nobody would miss Microsoft and its shoddy products and business practices.<p>On a more serious note, I fully understand that the Digital Markets Act is causing Microsoft headaches.  But I think this headache is well deserved.  Big Tech has been building moats where they should have built bridges, and now our computing landscape resembles medieval Germany where everything was at the mercy of a few feudal lords.  It is time to drive out those lords and reshape software in a way that empowers, not enslaves.</p>
]]></description><pubDate>Tue, 23 Jul 2024 18:44:49 +0000</pubDate><link>https://news.ycombinator.com/item?id=41049413</link><dc:creator>heisig</dc:creator><comments>https://news.ycombinator.com/item?id=41049413</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=41049413</guid></item><item><title><![CDATA[New comment by heisig in "Compile-time JSON deserialization in C++"]]></title><description><![CDATA[
<p>Yes, the #. reader macro is one of the ways how you can achieve this in Common Lisp.  Using the reader macro is also way more efficient because you don't awkwardly use your compiler as an interpreter for a weird subset of your actual language - you simply call to compiled code.<p>Seeing Greenspun's tenth rule [1] in action again and again is one of the weird things we Common Lisp programmers have to endure.  I wish we would have more discussions on how to improve Lisp even further instead of trying to 'fix' C or C++ for the umpteenth time.<p>[1] <a href="https://en.wikipedia.org/wiki/Greenspun%27s_tenth_rule" rel="nofollow">https://en.wikipedia.org/wiki/Greenspun%27s_tenth_rule</a></p>
]]></description><pubDate>Wed, 10 Jul 2024 08:01:28 +0000</pubDate><link>https://news.ycombinator.com/item?id=40924672</link><dc:creator>heisig</dc:creator><comments>https://news.ycombinator.com/item?id=40924672</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=40924672</guid></item><item><title><![CDATA[New comment by heisig in "Connection Machine Lisp (1986)"]]></title><description><![CDATA[
<p>Implementing lazy arrays or xappings naively is easy - the Petalisp reference backend has just 94 lines of code [1].  The challenge is to implement them efficiently.  With eager evaluation, the programmer describes more or less precisely what the computer should do.  With lazy evaluation, you only get a description of what should be done, with almost no no restriction on how to do it.  To make lazy evaluation of arrays as fast as eager evaluation, you have to automate many of the high-level reasoning steps of an expert programmer.  Doing so is extremely tedious, but once you have it you can write really clean and simple programs and still get the performance of hand-crafted wizard codes.<p>[1] <a href="https://github.com/marcoheisig/Petalisp/blob/master/code/core/reference-backend.lisp">https://github.com/marcoheisig/Petalisp/blob/master/code/cor...</a></p>
]]></description><pubDate>Sat, 22 Jun 2024 18:06:03 +0000</pubDate><link>https://news.ycombinator.com/item?id=40760898</link><dc:creator>heisig</dc:creator><comments>https://news.ycombinator.com/item?id=40760898</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=40760898</guid></item><item><title><![CDATA[New comment by heisig in "Connection Machine Lisp (1986)"]]></title><description><![CDATA[
<p>Connection Machine Lisp never made it into production, but this paper had a profound impact on my scientific career.  In particular, it was the following comment in the paper that triggered me to develop the Petalisp programming language (<a href="https://github.com/marcoheisig/Petalisp">https://github.com/marcoheisig/Petalisp</a>):<p>> Nevertheless, we have implemented (on a single-processor system, the Symbolics 3600) an experimental version of Connection Machine Lisp with lazy xappings and have found it tremendously complicated to implement but useful in practice.<p>I think there is a moral here: Don't hesitate to experiment with crazy ideas (lazy xappings), and don't be afraid to openly talk about those experiments.<p>After eight years of development, I can definitely confirm that lazy arrays/xappings are tremendously complicated to implement but useful in practice :)</p>
]]></description><pubDate>Sat, 22 Jun 2024 09:08:40 +0000</pubDate><link>https://news.ycombinator.com/item?id=40757563</link><dc:creator>heisig</dc:creator><comments>https://news.ycombinator.com/item?id=40757563</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=40757563</guid></item><item><title><![CDATA[New comment by heisig in "Parallel garbage collection for SBCL (2023)"]]></title><description><![CDATA[
<p>This paper is from last year, and a lot of interesting things have happened in the meantime:<p>- The parallel garbage collector is now part of SBCL, but not yet the default.  Enabling it is attractive, though, because it has roughly twice the throughput.<p>- The SBCL maintainers used the parallel GC as reason to make SBCL's memory management overall more modular.  This process is still ongoing, but experimenting with different GC strategies on SBCL has never been easier.<p>- Another GC is already in the works that has virtually zero pause times.  Once this is merged, we can finally bury that old myth that Lisp systems stutter (if it hasn't already been buried by the presence of video games written in Lisp, like Kandria)<p>The parallel GC is an amazing achievement by Hayley Patton.  We SBCL users cannot thank her enough for her outstanding work!</p>
]]></description><pubDate>Sun, 12 May 2024 21:31:14 +0000</pubDate><link>https://news.ycombinator.com/item?id=40337756</link><dc:creator>heisig</dc:creator><comments>https://news.ycombinator.com/item?id=40337756</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=40337756</guid></item><item><title><![CDATA[New comment by heisig in "High performance array programming in Petalisp"]]></title><description><![CDATA[
<p>Heh, thanks :)<p>Petalisp author here - this ELS paper is just a preview.  I'm also preparing a 160 page document (for my PhD) that will explain everything in more detail.  I'll post on HN when it is available.<p>There is also a recording of my ELS talk on Twitch: <a href="https://www.twitch.tv/videos/2138821711?t=00h40m35s" rel="nofollow">https://www.twitch.tv/videos/2138821711?t=00h40m35s</a></p>
]]></description><pubDate>Wed, 08 May 2024 06:30:55 +0000</pubDate><link>https://news.ycombinator.com/item?id=40294969</link><dc:creator>heisig</dc:creator><comments>https://news.ycombinator.com/item?id=40294969</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=40294969</guid></item><item><title><![CDATA[New comment by heisig in "Germany just legalized recreational marijuana"]]></title><description><![CDATA[
<p>Let me summarize the key points of this law:<p>- Starting from April 1, German adults can legally possess a certain amount of weed (25 grams on the move, 50 grams at home), and they may consume it unless they are within 100 meters of a school or kindergarten.<p>- This is just the first stage of that law, where the only way to actually obtain weed (other than for medical purposes) is to grow it yourself, or to form a collective of growers.  Either way, the maximum number of plants per person is three.  Commercially trade of weed is planned for later, as a second stage of the law.<p>- While this law legalizes weed for adults, it further prevents access for minors.  The law raises the penalty for selling weed to minors to a minimum of two years in prison, and people that grow their own plants must ensure that minors cannot access them.  People aged between 18 and 21 are only allowed access to weed with a THC content of less than 10%. The reasoning behind all this is that weed severely impairs the brain development of young people.<p>- Driving while under the influence is still a crime.<p>- The stated goal of this law is to eliminate the black market and to stop the growing trend of minors smoking weed.  A review is scheduled in 18 months, determine whether the law in the current form achieves that goal or whether it has to be tweaked further.<p>This law is obviously a compromise between all the parties of the German government, EU law, scientific consensus, and practicability.  What I like about the law is how carefully it weighs health issues and individual liberty.  All the limits (legal age, grams of possession) have a solid scientific basis.</p>
]]></description><pubDate>Fri, 22 Mar 2024 13:27:18 +0000</pubDate><link>https://news.ycombinator.com/item?id=39790511</link><dc:creator>heisig</dc:creator><comments>https://news.ycombinator.com/item?id=39790511</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=39790511</guid></item><item><title><![CDATA[New comment by heisig in "Petalisp: Elegant High Performance Computing"]]></title><description><![CDATA[
<p>> I'm very curious why you've chosen to go down the route of special casing on parallelizing within one socket<p>This is no special casing.  Most of that code will also be used for the distributed parallelization.  I agree with your remarks on hybrid MPI+OpenMP, and, in fact, Petalisp doesn't use shared memory anywhere, but always generates ghost layers and explicit communication.<p>> I will also say that it feels a bit weird to call something "peta-" and "HPC" if using more than one socket is relatively far off into the future.  For the randomly-wandering PhD students out there, it would be nice to tell them this up front in the Readme :)<p>I can do that.  But let me explain the rationale for naming Petalisp this way:  I wanted to create a programming language that is novel, and that has the potential to scale to petaflop systems.  And I wanted to create a robust implementation of that language.  I think I have achieved the former part, but the latter simply takes time.<p>Final remark: Good HPC practice is always to get single core performance right, then getting multicore performance right, and then scaling up to multiple nodes.  Anything else is an enormous waste of electricity.</p>
]]></description><pubDate>Tue, 11 Jul 2023 04:19:05 +0000</pubDate><link>https://news.ycombinator.com/item?id=36676373</link><dc:creator>heisig</dc:creator><comments>https://news.ycombinator.com/item?id=36676373</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=36676373</guid></item><item><title><![CDATA[New comment by heisig in "Petalisp: Elegant High Performance Computing"]]></title><description><![CDATA[
<p>Thanks for clarifying.  I will definitely write down the specifics of setting up distributed computing once it works.  However, support for distributed computing will still take some time.  The current step is to iron out all the remaining issues of parallelizing within one CPU socket.</p>
]]></description><pubDate>Mon, 10 Jul 2023 21:39:37 +0000</pubDate><link>https://news.ycombinator.com/item?id=36673331</link><dc:creator>heisig</dc:creator><comments>https://news.ycombinator.com/item?id=36673331</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=36673331</guid></item><item><title><![CDATA[New comment by heisig in "Petalisp: Elegant High Performance Computing"]]></title><description><![CDATA[
<p>I am not sure what you mean by "required infrastructure setup".  Installing Petalisp is a single call to (ql:quickload :petalisp) - assuming you have Quicklisp installed.  If you also have a C compiler available, and an executable named cc pointing to that compiler, Petalisp will use that to speed up your codes further.<p>About the required hardware - anything that runs SBCL or CCL can also run Petalisp.</p>
]]></description><pubDate>Mon, 10 Jul 2023 21:16:31 +0000</pubDate><link>https://news.ycombinator.com/item?id=36673065</link><dc:creator>heisig</dc:creator><comments>https://news.ycombinator.com/item?id=36673065</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=36673065</guid></item><item><title><![CDATA[New comment by heisig in "Petalisp: Elegant High Performance Computing"]]></title><description><![CDATA[
<p>Petalisp author here.  I apologize that the README is somewhat lacking, but it wasn't me who posted this on HN.<p>As you may have seen on the commit history, a lot of exciting things have happened over the last few months.  However, there are also a few stupid performance bugs left, so I am delaying the release of any performance numbers until those have been fixed.  Otherwise, I fear that people will simply misinterpret the results.<p>Nevertheless, I can already state that the single-core performance of Petalisp programs is exactly like that of a C program - simply because Petalisp compiles its programs to C when possible.  (Although I also have that long-term agenda of using sb-simd to reach that performance in pure CL some day.)<p>In addition, Petalisp is quite good at automatically parallelizing programs, and we already have most of the infrastructure for distributed and heterogeneous computing in place.<p>I will write a more detailed post for the HN crowd once I have reliable performance numbers and once I finished writing the documentation.<p>Feel free to ask me further questions.</p>
]]></description><pubDate>Mon, 10 Jul 2023 20:34:03 +0000</pubDate><link>https://news.ycombinator.com/item?id=36672558</link><dc:creator>heisig</dc:creator><comments>https://news.ycombinator.com/item?id=36672558</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=36672558</guid></item><item><title><![CDATA[New comment by heisig in "EU was set to ban internal combustion engine cars, then Germany changed its mind"]]></title><description><![CDATA[
<p>Guy from Germany here: No, we didn't change our mind on combustion engines.  They are getting less popular every month, and even the German car companies have roadmaps that phase out the combustion engine well before 2035.<p>Here is my take on the situation:  The problem is that the current government consists of three very different parties (which was the only viable option for forming a government without the conservative climate disaster that is the CDU/CSU).  One of these three parties, the FDP, is currently losing popularity because they essentially promised that fancy technology will solve all our problems (take note HN!), but that bluff got called now that they are part of the government.  The FDP is quickly losing voter support, and entered panic mode.  Unfortunately, the only voter base they can quickly tap into are petrolheads and people that don't like when things get "verboten".  The FDP runs the ministry of transport, and used that influence to stall legislation for the entire EU.  The other parties cannot really object, or our government would fall apart.<p>I can only personally apologize to all other EU nations.  A party with about 5% popularity is holding our government hostage.<p>The only positive thing is that these people cannot really decide about the law in 2035, only about the law today.  I hope the climate movement will grow stronger, and those people and their policies will be history much sooner.</p>
]]></description><pubDate>Sun, 26 Mar 2023 15:35:40 +0000</pubDate><link>https://news.ycombinator.com/item?id=35315577</link><dc:creator>heisig</dc:creator><comments>https://news.ycombinator.com/item?id=35315577</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=35315577</guid></item><item><title><![CDATA[New comment by heisig in "Maxima: A computer algebra system written in Common Lisp"]]></title><description><![CDATA[
<p>Maxima is a surprisingly good alternative to SymPy.  We had to learn that the hard way at my job.  Both systems offer similar functionality, but it turns out Maxima is typically 50-200x as fast as SymPy for many tasks (I guess because it was written at a time when computers were slow and expensive).  For our application, switching from SymPy to Maxima shortened the time-to-solution from hours to minutes.<p>Also, it shows that Maxima has been in use for a very long time, and maintained by very bright people.  I have yet to encounter a bug in Maxima.  And I have already encountered plenty of bugs and inconsistent behavior in SymPy.</p>
]]></description><pubDate>Mon, 06 Feb 2023 10:06:44 +0000</pubDate><link>https://news.ycombinator.com/item?id=34675487</link><dc:creator>heisig</dc:creator><comments>https://news.ycombinator.com/item?id=34675487</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=34675487</guid></item></channel></rss>