Perl 6 Archives

KBOS attributes

Welcome to the fifth post about the Kephra Base Object System, where I explain the need for three kinds of attributes: data, delegating and wrapping and gas a little about their properties. It is especially advised to have read the first part (scopes) and the previous part, since accessors are methods.

In case you wonder how practical this exercise is - I already implemented a slightly simpler version and currently rewrite it. It's a standalone bundle of modules with its own tests and docs named Base-Class (Kephra::Base::Class) (123kB), which depends only on the bundle Base (there are the data types) (32 kB). So once ready it could be released on CPAN without much work.

KBOS methods

After scopes, types and signatures we got all the prerequisites to talk about the syntax and semantics of KBOS methods. Unless you want to contribute to Kephra or write a plugin, you may never use them, but please join me in the thought experiment - maybe we get a littler smarter.

Introducing KBOS

Starting even before Moose, we (in the Perl 5 world) have a plethora of Modules extending the syntax of the language with Perl 6 and more in mind. The following article sums up not only my 2 and a half cents on the subject but also an attempt to implement it. It should be of interest to anybody thinking about programming in general.

Communication at the 36c3 Perl and Raku Assembly

The Chaos Communication Congress is the hugest convention and festival for hackers on the continent. Its part 5-9 track lecture conference, part massive parallel soldering and other workshops, part dance party and part carneval. I liked especially the one guy, just walking around while making music on it's novation circuit - but there was so much going on - he was hardly noticeable. Because it was gigantismic. When even a small self made booth for baking dough (one of several dozens food stands) sells over a ton (literally > 1000 kg), serving > 13000 people, it earned its name: waffle operation center (WAP). But that's the spirit and humor around here.

announcing Data::Table::Dynamic

Looks like I like tables. But unlike Math::Matrix this will be about organizing any data.

next Math::Matrix releases

As you can see in the Changefile, there is a lot stuff coming in the next release of Math::Matrix, the de facto standard for now for Perl 6 Matrix Math, as mentioned in the docs. However, I have further plans I want to announce here and also ask my readers if I should do the proposed change of name space or not. This should be maybe a lightning talk in at TPC in Riga, but I already have a regular and a lightning there, so I choose this format.

Perl6::Math::Matrix (Part 5: patient with docs)

If you write any software package, you have to document it. This simple truth drives more than few developers into despair. But there is also a way to craft good documentation and make the writing of it a useful part of the development. This is the closing part about authoring a Perl 6 module and Math::Matrix in particular (part: one, two, three, and four).

Perl6::Math::Matrix (Part 4: naming methods)

While reflecting on how to write a good Perl 6 module, I thought a lot about how to properly name my methods. In this text I want to summarize what served me, which is a direct continuation of the last part, where I wrote about when it is helpful that methods share one name.

Perl6::Math::Matrix (Part 3: when to use MMD)

In this guide about what to consider when writing a Perl 6 module, we (after part I and part II) will reach Perl 6's great power of signatures. They enable a feature, that is very often used in Perl 6 (internally and externally). Here are my arguments when the usage of MMD makes the most sense.

Perl6::Math::Matrix (Part 2: Converter)

In this series of articles I reflect and expand on a talk I gave this year in Glasgow were I spoke about writing Perl 6 modules in general and Math::Matrix in particular. Part I was about data types I used or wanted to use, because my approach is it to think first about data structures and built later the code around that. It is also crucial because this module basically provides the user a new data type.

introducing Perl6::Math::Matrix (Part 1: Data)

At TPC in Glasgow I held two talks (slides and Video stored or linked on my domain as linked on conference site) about my module Perl6::Math::Matrix. To me the most interesting parts of this talk were musings about how to write a good API in and for Perl 6. And since I already got from the audience a lot of good suggestion(, which are all implemented by now [by the critic or me]), I will write here also a series of posts about this topic and maybe get some inspirations more.

The hugest feature of Perl 6

If there would be an election for the single greatest Perl 6 feature, many would select the box for grammars and others would root for concurrency/async (as expressed in several articles here and elsewhere). Roles and types might be also strong contenders. Here is why I would pick: none of the above, even I like all of them very much.

My IPW afterthoughts

This will be just partially about the just ended Italian Perl Workshop in Bologna, because frankly most of the talks I did not not understand, even if I would like to improve my Italian. So why even bother being one of a hand full not Italian?


It was a good YAPC although I already knew FFM and their slightly musty University, so it lacked the excitement of a new unknown place. But I guess its part of the joy to meet the class of Perl again, greet domm here, say hai to karen there and so on.

Highlight was to me Stevan Littles presentation (no keynote was utterly important), even if I extracted the crucial infos before. I was especially sceptical to declare one line to get the getter/setter like in Moo/s/e. But combined getter/setter are not always right, you might follow the damian or even (god forbid) your own taste. So to …

8th Week of Perl 6 Tablets

This might be the last entry about the perl 6 tablets for a longer time. (lot of projects and articles have to be written soon and the moose article for heise sits on the brink and no article from me in this issue of perlzeitung). The work is now gradual and you surely don't want to hear same stuff every week. Just one thought on strategy.

I still work on the appendix (F and G now) rather on the actual tablets for several reasons:

A) work for the beginner

The appedices are more structured toward questions …

7th Week of Perl 6 Tablets

... and what happened?

I added a FAQ (Appendix F) page (and moved links to appendix H aka href appendix), but its just questions so far. You migth ask, but there is already a semiofficial FAQ. True. But would you not prefer better sorted anwers with links where all the parts of the answer are even better explained in more detail?

I added also a which gives you output like:

page title item anchor links lines bytes

Help to write Perl 6 Documentation

You have no clue about Perl 6 but still want to help? Here is your chance. After Appendix A now stabilizes and most of the 750 entries are well formated (signatures still catching on) and in Appendix B also over 600 items link back to Appendix A so you can click back and forth to get a minimal wikipedia effect (What I was looking for in the first place?), now my primary focus is on Appendix G.

This p…

Perl 6 Tablets: what happened this week

We're consolidating. Quality of about 50 entries was raised, escape chars for zero width assertions added, precedence table updated, better explanation of this compile time / runtime thing, the flipflops and zip operator.

And hurray i got help from raiph mellor, who has ambition to stay and constantly raise the quality.

But main news is something else. Im done with socialtext. Really. I had to dance around the syntax all the time, never knowing how this character would be displayed or if I had to put {{ }} around it. But even that doesn't helped --> which is used in Perl 6 …

A real Grant Report for the Perl 6 Tablets

Allright, long long time ago i got this TPF grant. You were all a generous boss to not tackle me because i had other important stuff to do for Perl community (including Perl 6 articles for $foo perl magazine, perlzeitung and heise online - the leading German IT news portal and a modern perl 5 tut to spread the praise of Perl into the free software world). But because slowly are coming in real results, I write now a real grant report the TPF can publish.

First I lied with the submission. Perl 6 so…

YACGR (yet another creepy grant report)

I mean creepy in the sense that results slowly creeping in. People who follow my tweets know that 2 smaller milestones are achieved: predefined subrules and regex quantifier are now all in place (in Index A and B). This was of course a byproduct of my upcoming Perl 6 Regex and Grammar talk.


sorta Perl 6 grant report

uh yes I have a running grant and want to close it in 2012 even it will take much more effort than just written down in the proposal. I was a bit shy with that to don't get rejected. I don't want to open any new projects til I get this done.

Recently I updated Index A, which is still the most usable part, because its a quick overview of all builtins and operators. There were tons of details I did: setting new links, cleaning up things I didn't understood myself exactly, making better examples, more "see …

the mental monitor box and the guys in the last row

On my "how much you can handle"-tour I gave my talk about Perl 6 array and hashes thrice. Third time masak and jnthn were in (the last row as any troublemaker in school) the audience and spottet some serious errors (I think it was an former rakudo bug). but its fixed and uploaded now. ( Arrays as in [] will not flattened inside a signature and so the number of elements in @_ on the last question in round 1 is…

my YAPC::EU summary

first some ad for Gabor, you might want to skip that *g*. I read "perl testing" and listened to some talks on that topic, even gave one, but until 2 days ago i actually hat had some misunderstanding about Devel::Cover and that it actually marks code pieces "already executed" when tests just call subs with different options and not by calling the pieces directly. Just a short comment by Gabor has lightend that up. thank you.

What i like most about yapc even more than about perl workshops: you get more high profile people. just grab them and discuss things that needs to get done. I met …

State of the Doc II

As an update and continuation of my last post: lot has happened. This is also a kind of Grant report since the Perl 6 Tablets are rolling again and I plan to cash in the first half of the TPF grant around YAPC in Riga but definitively before Frankfurt (german perl workshop).

You may ask what took so long or why I believe to be now much faster. I just…

State of the Documentation

The Perl 5 tutorial for freiesMagazin (the first and hardest part) is complete and I'm very happy about it (read it in the next month issue). It was a great teamwork and all who read it so far, like it very much. The result will reside in the wiki of (link later when arrived there), so it can be further expanded/improved/updated and can help a lot people more. Because its the most visited Perl forum in German and thanks to tinita++ we have there banners that link to different important pages in the wiki which gets 20 times more visited…

Why Perl 6 should be spelled roman

Yes it should spelled Perl vi (no pun intended). Just stays for vision. Perl 6 is the most visionary language i know of.

Lichtkind: 2010 / 2011

OMG yet another new year BS.

Since I live here on planet earth where biology by in large restarts with every spring, which happens in this part of the world in march, I'm bit reluctant to join the gregorian calender, which is named after a roman katholic pope and a calendar which prior to that changed its start to january by another roman dictator, which makes it further unatractive to me. don't get me wrong, I dont want to act here any more special then necesary, but its good to review and to make plans.

so here is my 2010:

* ="…

Grantreport - Perl 6 Tablets - 5th week // Perl 5 Testing

By week i mean 7 days in which I touched the tablets.

Basically i just read the advent calendar and other sources and check if the tablets missing something. This way Appendix A has 25 entries more, much more revamped finding even keyword fossils of ancient Perl 6, not even known to moritz++, jnthn++ was helpful too. Also wrote the section about quoting and some minor part…

Grantreport - Perl 6 Tablets - 4th week

in short: Tablet 3 is half ready, still added chapter to language design and trends, cleaned and added some corners in the index (now 594 entries) and tables.

You don't w…

Grantreport - Perl 6 Tablets - third week

Remember what I wrote in my first 2 reports? "tablet 2 is finished." And I still had to add something. And also the Perl 6 trends doubled in size since i first wrote: ready !! :) If you really wonder what Perl 6 is about here you have all the thoughtwork in a few lines.

The index has now 577 entries (many rewritten)…

Grantreport - Perl 6 Tablets - second week

Tablet 2 was ready, i just completed and moved the trends section, because there not really language design priciples, mere consequences from that and a great introduction into the Perldelta.

Most work gone into the third - Variable Tablet which now start to get substance. the basic structure and lot of content i took from the ge…

First Grant Report: Perl 6 Tablets

Not that I was too lazy but my time was very compartmentalized. So i just start slowly and since I don't get bucks til its done, you don't have to worry anyway. I just completed Tablet 2. Its a nice and dense overview what Perl 6 is about and whith which mindset Larry is designing Perl 6. (already got very positive feedback from #perl6 people).

On other hand It's small and not part of the official grant, but it belongs to the overall concept of the Perl 6 T…

What Weird Al and Larry have in common

Both can be funny with words come from LA and and wear sometime a moustache and wild coloured shirts. But this is a Perl blog and not about trivia right?

Both believe life should be fun and are not afraid if people lough about them. But to go deeper than that, to actually manufacture something like "white and nerdy" you need to know a lot about rap have a feel for rythm and know enough about "neird culture" to be funny. to be funny you need a feeling what people expect and how they there emotional reaction will be.

Thats where we slowly get to a difference between them. Al hel…

Back on the track for Perl 6

Yes, Dave Vaux, one of the british daves helps me translating my perl 6 tutorial and I'm writing here and there new lines into it. More important I'm reading synopses again. Im chatting with the Perl 6 crew again. What a great feeling, even jnthn is currently traveling. But I'm doing it more focussed then earlier. And when I learn something it gets immediately into stuff i write for the wiki, talks, slides. And to all of you who also stay at perl booths, I will try deliver them also in english. At least in a…

spreading perl on multiple level // please help with your codexp

jejky, I got a TPF grant. Even if scheduled it for 7 month, I plan to be ready end of this year. I think it will also appear in the first Module I ever uploaded to CPAN: Perl6::Doc, so you can grok perl 6 too. More info about that on my Perl 6 related blog.

Last week…

Pisa Résumé

its been a great YAPC, emotionally. Not as many technical talks where really compelling, but lot where really funny. But I met a lot of people I like. martin berends, jnthn and the bunch, finally i met mattia barbon which was also releasing and intresting (our interview will come soon on radio YAPC). I met a lot of germans, larry who tried to talk to me german too. and there were a lot more. great people, great food, wonderfull ice cream, fantastic hostel, great rides. it was the best possible holiday for me now.

my talks were both very well recieved but attended by few. Kephra is now…

bla bla bla bla bla

After Kieren Diments talk in schorndorf I held a spontaneous lightning talk about the state of the project called Perl 6. The slides wouldn't tell you much, since i pushed them together in 1 hour while listening to others. But i had to do it, since lot of people in the audience I talked with had no clear knowledge and some even said things on stage, that were hardly bearable. Get me right. i can listen to any opinion. No problem if someone says…

About lichtkind

user-pic Kephra, Articles, Books, Perl, Programming