<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: tapirl</title><link>https://news.ycombinator.com/user?id=tapirl</link><description>Hacker News RSS</description><docs>https://hnrss.org/</docs><generator>hnrss v2.1.1</generator><lastBuildDate>Mon, 15 Jun 2026 01:53:16 +0000</lastBuildDate><atom:link href="https://hnrss.org/user?id=tapirl" rel="self" type="application/rss+xml"></atom:link><item><title><![CDATA[New comment by tapirl in "The state of building user interfaces in Rust"]]></title><description><![CDATA[
<p>web UI is slow, this is only reason when I don't it.</p>
]]></description><pubDate>Sat, 13 Jun 2026 16:06:53 +0000</pubDate><link>https://news.ycombinator.com/item?id=48518581</link><dc:creator>tapirl</dc:creator><comments>https://news.ycombinator.com/item?id=48518581</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48518581</guid></item><item><title><![CDATA[New comment by tapirl in "Zig by Example"]]></title><description><![CDATA[
<p>Having quick viewed all the chapters, the examples are too simplistic to fully demonstrate Zig's syntax and semantics.</p>
]]></description><pubDate>Mon, 08 Jun 2026 16:00:42 +0000</pubDate><link>https://news.ycombinator.com/item?id=48447089</link><dc:creator>tapirl</dc:creator><comments>https://news.ycombinator.com/item?id=48447089</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48447089</guid></item><item><title><![CDATA[New comment by tapirl in "Go: Support for Generic Methods"]]></title><description><![CDATA[
<p>Yes, the sugar is just to make chain calls with parameter types possible. The sugar reflects the limitation of the basic of Go generics design. Now they would make the language even more complex for such a small need. In facts, there are more problems in Go generics need to be solved earlier than this: <a href="https://go101.org/generics/888-the-status-quo-of-go-custom-generics.html" rel="nofollow">https://go101.org/generics/888-the-status-quo-of-go-custom-g...</a></p>
]]></description><pubDate>Thu, 28 May 2026 08:09:28 +0000</pubDate><link>https://news.ycombinator.com/item?id=48306087</link><dc:creator>tapirl</dc:creator><comments>https://news.ycombinator.com/item?id=48306087</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48306087</guid></item><item><title><![CDATA[New comment by tapirl in "Go: Support for Generic Methods"]]></title><description><![CDATA[
<p>Go's generics design is the most clunky one among popular languages.</p>
]]></description><pubDate>Thu, 28 May 2026 04:27:04 +0000</pubDate><link>https://news.ycombinator.com/item?id=48304493</link><dc:creator>tapirl</dc:creator><comments>https://news.ycombinator.com/item?id=48304493</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48304493</guid></item><item><title><![CDATA[New comment by tapirl in "Bun Rust rewrite: "codebase fails basic miri checks, allows for UB in safe rust""]]></title><description><![CDATA[
<p>Are there any evidences which prove the process was done in a week?</p>
]]></description><pubDate>Fri, 15 May 2026 19:13:09 +0000</pubDate><link>https://news.ycombinator.com/item?id=48152617</link><dc:creator>tapirl</dc:creator><comments>https://news.ycombinator.com/item?id=48152617</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48152617</guid></item><item><title><![CDATA[New comment by tapirl in "Mojo 1.0 Beta"]]></title><description><![CDATA[
<p>It might be feature richer, but it is hard to say it is more powerful. Sometimes, features (especially constraints) will reduce powerlessness.</p>
]]></description><pubDate>Sun, 10 May 2026 22:50:05 +0000</pubDate><link>https://news.ycombinator.com/item?id=48088952</link><dc:creator>tapirl</dc:creator><comments>https://news.ycombinator.com/item?id=48088952</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48088952</guid></item><item><title><![CDATA[New comment by tapirl in "Mojo 1.0 Beta"]]></title><description><![CDATA[
<p>> ...,  comptime that is more powerful than Zig<p>It would be great if you can elaborate more here. I can't make the conclusion from Mojo's docs now.</p>
]]></description><pubDate>Sat, 09 May 2026 18:14:45 +0000</pubDate><link>https://news.ycombinator.com/item?id=48076978</link><dc:creator>tapirl</dc:creator><comments>https://news.ycombinator.com/item?id=48076978</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48076978</guid></item><item><title><![CDATA[New comment by tapirl in "//go:fix inline and the source-level inliner"]]></title><description><![CDATA[
<p>> ... and perhaps `go fix` should add a check for this (<p>This is an impossible task. For a library function, you can't know whether or not the function is defer called.<p>Maybe this is not an important problem. But it would be better if the blog article mentions this.</p>
]]></description><pubDate>Mon, 16 Mar 2026 03:02:38 +0000</pubDate><link>https://news.ycombinator.com/item?id=47394735</link><dc:creator>tapirl</dc:creator><comments>https://news.ycombinator.com/item?id=47394735</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47394735</guid></item><item><title><![CDATA[New comment by tapirl in "//go:fix inline and the source-level inliner"]]></title><description><![CDATA[
<p>another:<p><pre><code>   package main

   type T = [8]byte
   var a T

   //go:fix inline
   func foo() T {
      return T{}
   }

   func main() {
      if foo() == a {
      }
   }
</code></pre>
filed: <a href="https://github.com/golang/go/issues/78170" rel="nofollow">https://github.com/golang/go/issues/78170</a> and <a href="https://github.com/golang/go/issues/78169" rel="nofollow">https://github.com/golang/go/issues/78169</a></p>
]]></description><pubDate>Mon, 16 Mar 2026 02:22:32 +0000</pubDate><link>https://news.ycombinator.com/item?id=47394439</link><dc:creator>tapirl</dc:creator><comments>https://news.ycombinator.com/item?id=47394439</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47394439</guid></item><item><title><![CDATA[New comment by tapirl in "//go:fix inline and the source-level inliner"]]></title><description><![CDATA[
<p>similar:<p><pre><code>    package main

    //go:fix inline
    func foo[T [8]byte | [4]uint16]() {
        var v T
        var n byte = 1 << len(v) >> len(v)
        if n == 0 {
            println("T is [8]byte")
        } else {
            println("T is [4]uint16]")
        }
    }

    func main() {
        foo[[8]byte]()
    }</code></pre></p>
]]></description><pubDate>Mon, 16 Mar 2026 00:49:01 +0000</pubDate><link>https://news.ycombinator.com/item?id=47393789</link><dc:creator>tapirl</dc:creator><comments>https://news.ycombinator.com/item?id=47393789</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47393789</guid></item><item><title><![CDATA[New comment by tapirl in "//go:fix inline and the source-level inliner"]]></title><description><![CDATA[
<p>Another example (fixable):<p><pre><code>    package main

    import "unsafe"

    //go:fix inline
    func foo[T any]() {
        var t T
        _ = 1 / unsafe.Sizeof(t)
    }

    func main() {
        foo[struct{}]()
    }
</code></pre>
Go is a language full of details: <a href="https://go101.org/details-and-tips/101.html" rel="nofollow">https://go101.org/details-and-tips/101.html</a></p>
]]></description><pubDate>Sun, 15 Mar 2026 22:06:43 +0000</pubDate><link>https://news.ycombinator.com/item?id=47392470</link><dc:creator>tapirl</dc:creator><comments>https://news.ycombinator.com/item?id=47392470</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47392470</guid></item><item><title><![CDATA[New comment by tapirl in "//go:fix inline and the source-level inliner"]]></title><description><![CDATA[
<p>You claim listens right for this specified example. :D<p>It is just a demo.</p>
]]></description><pubDate>Sun, 15 Mar 2026 21:58:44 +0000</pubDate><link>https://news.ycombinator.com/item?id=47392387</link><dc:creator>tapirl</dc:creator><comments>https://news.ycombinator.com/item?id=47392387</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47392387</guid></item><item><title><![CDATA[New comment by tapirl in "//go:fix inline and the source-level inliner"]]></title><description><![CDATA[
<p>As I have mentioned, no ways to fix it. Because it is hard to know whether or not the handle function is called in a deferred call.</p>
]]></description><pubDate>Sun, 15 Mar 2026 21:56:13 +0000</pubDate><link>https://news.ycombinator.com/item?id=47392368</link><dc:creator>tapirl</dc:creator><comments>https://news.ycombinator.com/item?id=47392368</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47392368</guid></item><item><title><![CDATA[New comment by tapirl in "//go:fix inline and the source-level inliner"]]></title><description><![CDATA[
<p>It looks the following code will be rewritten badly, but no ways to avoid it? If this is true, maybe the blog article should mention this.<p><pre><code>    package main
    
    //go:fix inline
    func handle() {
        recover()
    }
    
    func foo() {
        handle()
    }
    
    func main() {
        defer foo()
        panic("bye")
    }</code></pre></p>
]]></description><pubDate>Sun, 15 Mar 2026 21:10:43 +0000</pubDate><link>https://news.ycombinator.com/item?id=47391964</link><dc:creator>tapirl</dc:creator><comments>https://news.ycombinator.com/item?id=47391964</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47391964</guid></item><item><title><![CDATA[New comment by tapirl in "Go 1.26 Release Notes"]]></title><description><![CDATA[
<p>see: <a href="https://go-review.googlesource.com/c/go/+/707755" rel="nofollow">https://go-review.googlesource.com/c/go/+/707755</a> and <a href="https://go-review.googlesource.com/c/go/+/664299" rel="nofollow">https://go-review.googlesource.com/c/go/+/664299</a><p>Looks for slices with lengths <= 32.</p>
]]></description><pubDate>Wed, 11 Feb 2026 15:27:26 +0000</pubDate><link>https://news.ycombinator.com/item?id=46976122</link><dc:creator>tapirl</dc:creator><comments>https://news.ycombinator.com/item?id=46976122</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46976122</guid></item><item><title><![CDATA[New comment by tapirl in "Why Go is not my favourite language"]]></title><description><![CDATA[
<p>This one is just an example to demo one case of backward-capability breaking.<p>> All the examples in that article are very exotic.<p>Have you carefully read that article? All? You must be kidding.
The article shows several cases used in practice.</p>
]]></description><pubDate>Wed, 04 Feb 2026 09:39:36 +0000</pubDate><link>https://news.ycombinator.com/item?id=46883658</link><dc:creator>tapirl</dc:creator><comments>https://news.ycombinator.com/item?id=46883658</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46883658</guid></item><item><title><![CDATA[New comment by tapirl in "Why Go is not my favourite language"]]></title><description><![CDATA[
<p>The change made in Go 1.22 for 3-clause-for loops is not a new feature. It simply broke backward compatibility and old Go principles. It is much worse than C++'s stuff features.</p>
]]></description><pubDate>Tue, 03 Feb 2026 15:36:18 +0000</pubDate><link>https://news.ycombinator.com/item?id=46872297</link><dc:creator>tapirl</dc:creator><comments>https://news.ycombinator.com/item?id=46872297</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46872297</guid></item><item><title><![CDATA[New comment by tapirl in "Why Go is not my favourite language"]]></title><description><![CDATA[
<p>It is only right for for-each loops.<p>For 3-clause-for loops, if you have read <a href="https://go101.org/blog/2024-03-01-for-loop-semantic-changes-in-go-1.22.html" rel="nofollow">https://go101.org/blog/2024-03-01-for-loop-semantic-changes-...</a> carefully, it is hard to think it is right.</p>
]]></description><pubDate>Tue, 03 Feb 2026 09:50:43 +0000</pubDate><link>https://news.ycombinator.com/item?id=46868866</link><dc:creator>tapirl</dc:creator><comments>https://news.ycombinator.com/item?id=46868866</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46868866</guid></item><item><title><![CDATA[New comment by tapirl in "Why Go is not my favourite language"]]></title><description><![CDATA[
<p>zig now.</p>
]]></description><pubDate>Tue, 03 Feb 2026 09:48:56 +0000</pubDate><link>https://news.ycombinator.com/item?id=46868848</link><dc:creator>tapirl</dc:creator><comments>https://news.ycombinator.com/item?id=46868848</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46868848</guid></item><item><title><![CDATA[New comment by tapirl in "Why Go is not my favourite language"]]></title><description><![CDATA[
<p>Go was my favorite language for a long time, and I have written many books and articles about it. However, since the release of Go 1.22 [1], that is no longer the case. Go 1.22 damaged Go's reputation for promoting explicitness and maintaining strong backward compatibility.<p>[1]: <a href="https://go101.org/blog/2024-03-01-for-loop-semantic-changes-in-go-1.22.html" rel="nofollow">https://go101.org/blog/2024-03-01-for-loop-semantic-changes-...</a></p>
]]></description><pubDate>Tue, 03 Feb 2026 03:46:46 +0000</pubDate><link>https://news.ycombinator.com/item?id=46866208</link><dc:creator>tapirl</dc:creator><comments>https://news.ycombinator.com/item?id=46866208</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46866208</guid></item></channel></rss>