6guts

6guts.wordpress.com · Personal blog · on HN since 2010

6guts is the blog of Jonathan Worthington, a core developer of Rakudo Perl 6 and MoarVM, covering virtual machine and compiler work.

What HN saysHN links it for Perl 6 implementation internals, such as the MoarVM design and async IO work, and for the language's progress.
22HN people shared it
6linked it in comments
32stories submitted
151story points
5 years agolast shared
2010people per year2026

Most-shared posts

  1. 1
    MoarVM: A virtual machine for NQP and Rakudo
    2 people · 40 points · first shared 2013 · 23 comments on HN
  2. 2
  3. 3
  4. 4
    Of sisters, stacks, and CPAN
    2 people · 2 points · first shared 2018 · discussion on HN
  5. 5
    Not guts but 6 part 1
    2 people · first shared 2016
  6. 6
    Rakudo Perl 6 Architect Reflects on Last 8 Years
    1 people · 23 points · first shared 2015 · discussion on HN
  7. 7
  8. 8
    Porting Perl 6 to the JVM
    1 people · 7 points · first shared 2013 · 1 comments on HN
  9. 9
    Eliminating unrequired guards – MoarVM / Perl 6
    1 people · 6 points · first shared 2018 · discussion on HN
  10. 10
    Perl 6: Optimizing Reading Lines from a File
    1 people · 3 points · first shared 2017 · discussion on HN
  11. 11
    Faster box/unbox and Int operations – MoarVM / Perl 6
    1 people · 3 points · first shared 2018 · discussion on HN
  12. 12
    A Rakudo Debugger
    1 people · 3 points · first shared 2012 · discussion on HN
  13. 13
    Speeding up object creation (Perl6)
    1 people · 3 points · first shared 2018 · discussion on HN
  14. 14
    Towards a new general dispatch mechanism in MoarVM
    1 people · 3 points · first shared 2021 · discussion on HN
  15. 15
    Perl 6: Building and testing async socket code
    1 people · 3 points · first shared 2016 · 3 comments on HN

What HN people wrote when they linked it

lizmat · 2018-07-11
Since H. Merijn Brandt started working on the Perl 6 version of Text::CSV, he has kept a log of how long a specific test (referred to as test-t) too to run. https://tux.nl/Talks/CSV6/speed.log Since then, Rakudo Perl 6 has become more than 100x as fast, at least for this test. And more than 250x as fast using a concurrent version of the test (which was as simple as putting a `.race` in the code). This makes it still slower than the Perl 5 version, which uses XS (all parsing logic written in C). But the gap is closing with another round of optimizations to be merged later this week after an extensive refactor that took about 2 months. Of which you will most certainly see a report on https://6guts.wordpress.com , the blog of Jonathan Worthington.
falsedan · 2017-09-07
> Any benefit you get from using UTF-16 vanishes the moment you need to operate on it like a string, in other words. So, don't decode to a string, and do all your character manipulation on the bytes. > A better solution is to allow programmers to specify string encoding and default it to UTF-8. Absolutely not: the internal representation of a string should be of no interest to a user of your language. The 'best' solution is to represent strings as a list of index lookups into a palette, and to update the palette as new graphemes are seen. This is similar to the approach Perl6 is using[0]. [0]: https://6guts.wordpress.com/2015/12/05/getting-closer-to-christmas/
muraiki · 2016-01-13
I could give a list of features as to how Perl 6 will make my life as a developer better, but a list of features is not enough to justify adopting a whole new language with a small ecosystem. To adopt a language, it really has to improve your productivity. For instance, I think we've seen this with Go's adoption by people from dynamic languages, as it offered type safety, speed, and concurrency in a package that was generally more readily acceptable to them than Java/C#/Scala/etc. jnthn has a great series of blog posts illustrating how many of Perl 6's features come together to make developing a library very easy. To me, this is a great example of "how does Perl 6 help a business": by allowing rapid development of a complex asynchronous application, which is a use case many of us face. He illustrates this by writing a STOMP client for RabbitMQ, going from toy to a serious library: https://6guts.wordpress.com/2016/01/04/not-guts-but-6-part-1/ I look at this workflow and think, "Wow, I wish I could do things that easily." But now I can, because Perl 6 is out. :)
ash_gti · 2017-07-26
Perl6 (with the MoarVM backend at least) should have proper async IO on both network and file IO. jnthn (one of the primary contributors to MoarVM) has a write up about recent work done to improve the system here: https://6guts.wordpress.com/2017/06/08/sorting-out-synchronous-io/
jedharris · 2016-01-07
This is part of a sequence using TDD to refactor and extend a Stomp client. The earlier posts (not doing much with async code) are https://6guts.wordpress.com/2016/01/04/not-guts-but-6-part-1/ and https://6guts.wordpress.com/2016/01/05/not-guts-but-6-part-2/ . There will be more.
raiph · 2015-11-29
It turns out that the same NFG mechanism developed to support graphemes works for this non-grapheme scenario too: "... POSIX doesn’t promise you’ll get UTF-8, or even ASCII. It promises ... a bunch of bytes. We can now cope with this properly – surprisingly enough, thanks to the power of NFG. We now have a special encoding, UTF-8 Clean-8-bit, which turns bytes that are invalid as UTF-8 into synthetics, from which we can recover the original bytes again at output. This means that any filename, environment variable, and so forth can be roundtripped through Perl 6 problem-free. You can concat “.bak” onto the end of such a string, and it’ll still work out just fine." From https://6guts.wordpress.com/2015/11/21/what-one-christmas-elf-has-been…

Keyboard shortcuts

/Search
j kNext / previous blog
EnterOpen selected blog
vVisit the blog site
fFollow / unfollow
lSwitch grid / list view
dSwitch dark mode
g hHome
g pTop posts
g tTopics
g fFollowing
g lLiked
g yHistory
g qFAQ
EscBack / close