<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	xmlns:georss="http://www.georss.org/georss" xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#" xmlns:media="http://search.yahoo.com/mrss/"
	>

<channel>
	<title>Rakudo Death Star</title>
	<atom:link href="http://rdstar.wordpress.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://rdstar.wordpress.com</link>
	<description>The slightly offtopic, laser-equipped space station of Perl 6</description>
	<lastBuildDate>Sat, 23 Mar 2013 00:17:54 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.com/</generator>
<cloud domain='rdstar.wordpress.com' port='80' path='/?rsscloud=notify' registerProcedure='' protocol='http-post' />
<image>
		<url>http://s2.wp.com/i/buttonw-com.png</url>
		<title>Rakudo Death Star</title>
		<link>http://rdstar.wordpress.com</link>
	</image>
	<atom:link rel="search" type="application/opensearchdescription+xml" href="http://rdstar.wordpress.com/osd.xml" title="Rakudo Death Star" />
	<atom:link rel='hub' href='http://rdstar.wordpress.com/?pushpress=hub'/>
		<item>
		<title>The Rakudo Codebase: Visualized! (Partially)</title>
		<link>http://rdstar.wordpress.com/2012/11/22/the-rakudo-codebase-visualized-partially/</link>
		<comments>http://rdstar.wordpress.com/2012/11/22/the-rakudo-codebase-visualized-partially/#comments</comments>
		<pubDate>Thu, 22 Nov 2012 08:59:05 +0000</pubDate>
		<dc:creator>lueinc</dc:creator>
				<category><![CDATA[Progress Happened]]></category>
		<category><![CDATA[Research Department]]></category>
		<category><![CDATA[actualcoding]]></category>
		<category><![CDATA[graphs]]></category>
		<category><![CDATA[perl6]]></category>
		<category><![CDATA[pictures!]]></category>

		<guid isPermaLink="false">http://rdstar.wordpress.com/?p=152</guid>
		<description><![CDATA[Yesterday I stumbled upon this old perl6-compiler mailing list message which inspired me to actually try to split up the compilation of CORE.setting into smaller, saner pieces. I&#8217;ve started work on this already (so far having just modified the Makefile). &#8230; <a href="http://rdstar.wordpress.com/2012/11/22/the-rakudo-codebase-visualized-partially/">Continue reading <span class="meta-nav">&#8594;</span></a><img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=rdstar.wordpress.com&#038;blog=13482955&#038;post=152&#038;subd=rdstar&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
				<content:encoded><![CDATA[<p>Yesterday I stumbled upon <a href="http://www.nntp.perl.org/group/perl.perl6.compiler/2009/09/msg4885.html">this old perl6-compiler mailing list message</a> which inspired me to actually try to split up the compilation of CORE.setting into smaller, saner pieces. <a href="https://github.com/lue/rakudo">I&#8217;ve started work on this already</a> (so far having just modified the Makefile).</p>
<p>The one and only response to that post suggested using the stub syntax to resolve missing class issues. Sadly, that does not work, because perl6 needs to see the stubbed class in full sometime later in the file.</p>
<p>So, the best option I&#8217;ve seen is to include the files containing needed classes and roles into files that need them (through either use or require). This requires knowing what to include (as including everything everywhere ruins the point), and I&#8217;ve started to try to grasp what&#8217;s going on in the rakudo codebase, specifically src/core, in terms of dependencies.</p>
<p><a href="https://github.com/lue/rakudo-analyze">Here&#8217;s what I have so far.</a> It&#8217;s right now just one, single script. This single script graphs the inheritance chain of all the classes and roles in src/core (what classes and roles &#8220;is&#8221; and &#8220;does&#8221;). You need the modules Term::ANSIColor, Term::ProgressBar, and IO::Capture::Simple (at this time pulled in, but apparently unused, by Term::ProgressBar). You also need <a href="http://betterthangrep.com/">ack</a> and <a href="http://graphviz.org/">graphviz</a> (which is not used in the script, but needed to process the resulting core.dot file).</p>
<p>Wanna see the graph for nom commit bf472b0, the latest as of this writing? Here you go (click to embiggen, clearly):</p>
<p><a href="http://rdstar.files.wordpress.com/2012/11/core.png"><img class="alignnone size-medium wp-image-154" title="core" alt="" src="http://rdstar.files.wordpress.com/2012/11/core.png?w=300&#038;h=5" height="5" width="300" /></a></p>
<p>The arrows point towards what a particular box is inheriting, and the one or two white boxes mean that the class or role doesn&#8217;t exist within the src/core files. Yellow denotes classes, red denotes roles. And each box contains the name of the class/role, and the file it was found in and the line number of its definition.</p>
<p>This, however, doesn&#8217;t even begin to deal with all the dependencies abound in the src/core files. See all those abandoned colored blocks? Those aren&#8217;t inherited by anything in src/core, but they most certainly are utilized (e.g. the Pod::Config block, though not inherited, could easily be utilized as a variable type in the Pod code). I have a lot more work to do before I have a clear picture on how to separate CORE.setting into smaller pieces. (I might even need to utilize STD.pm6 or similar to do all the parsing I&#8217;ll eventually be doing!)</p>
<p>Just to finish off, Here are a couple more graphs of the same data. The first graph above was generated with GraphViz&#8217;s &#8220;dot&#8221;. This one (generated by their &#8220;twopi&#8221; program) I think looks hilarious:</p>
<p><a href="http://rdstar.files.wordpress.com/2012/11/core_twopi.png"><img class="alignnone size-medium wp-image-156" title="core_twopi" alt="" src="http://rdstar.files.wordpress.com/2012/11/core_twopi.png?w=300&#038;h=265" height="265" width="300" /></a></p>
<p>And this picture was generated by GraphViz&#8217;s &#8220;fdp&#8221;. I think this one is the easiest to follow.</p>
<p><a href="http://rdstar.files.wordpress.com/2012/11/core_fdp.png"><img class="alignnone size-medium wp-image-157" title="core_fdp" alt="" src="http://rdstar.files.wordpress.com/2012/11/core_fdp.png?w=258&#038;h=300" height="300" width="258" /></a></p>
<p>Happy viewing!</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/rdstar.wordpress.com/152/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/rdstar.wordpress.com/152/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=rdstar.wordpress.com&#038;blog=13482955&#038;post=152&#038;subd=rdstar&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://rdstar.wordpress.com/2012/11/22/the-rakudo-codebase-visualized-partially/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://2.gravatar.com/avatar/5680809f7c6ae51a1487e2650b95f0da?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">lueinc</media:title>
		</media:content>

		<media:content url="http://rdstar.files.wordpress.com/2012/11/core.png?w=300" medium="image">
			<media:title type="html">core</media:title>
		</media:content>

		<media:content url="http://rdstar.files.wordpress.com/2012/11/core_twopi.png?w=300" medium="image">
			<media:title type="html">core_twopi</media:title>
		</media:content>

		<media:content url="http://rdstar.files.wordpress.com/2012/11/core_fdp.png?w=258" medium="image">
			<media:title type="html">core_fdp</media:title>
		</media:content>
	</item>
		<item>
		<title>Making an IF game in August</title>
		<link>http://rdstar.wordpress.com/2012/07/27/making-an-if-game-in-august/</link>
		<comments>http://rdstar.wordpress.com/2012/07/27/making-an-if-game-in-august/#comments</comments>
		<pubDate>Fri, 27 Jul 2012 22:18:22 +0000</pubDate>
		<dc:creator>lueinc</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://rdstar.wordpress.com/?p=149</guid>
		<description><![CDATA[After masak is done with his July of blogging and separates Adventure::Engine from his game, I&#8217;ll be taking it and during the month of August crafting a game with it, adding various improvements to the engine. Here&#8217;s a list of &#8230; <a href="http://rdstar.wordpress.com/2012/07/27/making-an-if-game-in-august/">Continue reading <span class="meta-nav">&#8594;</span></a><img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=rdstar.wordpress.com&#038;blog=13482955&#038;post=149&#038;subd=rdstar&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
				<content:encoded><![CDATA[<p><a href="http://strangelyconsistent.org/blog/another-month-of-blogging-adventure-game-here-i-come">After masak is done with his July of blogging</a> and separates Adventure::Engine from his game, I&#8217;ll be taking it and during the month of August crafting a game with it, adding various improvements to the engine. Here&#8217;s a list of the general things I&#8217;ve planned so far.</p>
<p>Note: this list may change depending on what masak does in the last couple days of his blogging month.</p>
<ul>
<li>Modify Adventure::Engine to implement game objects as objects</li>
<li>Grammar/Actions for the game commands.</li>
<li>NPCs!</li>
<li>in-program descriptions</li>
<li>Curses!</li>
</ul>
<p>Let me explain:</p>
<h2>OOP&#8217;d Objects</h2>
<p>This I&#8217;ll most likely be doing first. While masak&#8217;s Adventure::Engine this year is great, it doesn&#8217;t use objects for the in-game objects. Instead, it uses hashes and lists to keep track of the features of various objects. I personally would like to group information about objects into, well, objects. I will, however, avoid becoming too class-happy<a href="https://raw.github.com/masak/crypt/2011/crypt.pl"> like masak&#8217;s solution to an adventure game last year </a>(making every game object its own class is just a wee bit class-happy in my opinion).</p>
<p>I&#8217;d accomplish this either by taking Adventure::Engine and having a local copy in the repo to modify, or by using <code>augment</code> and/or <code>supercede</code> in my own code, which would be a good opportunity to show off those rarely-used keywords.</p>
<p>The one problem I&#8217;d face is that it&#8217;s harder to have lists of objects when you&#8217;ve gone OOP. It&#8217;s (AFAICT) much easier to get a list of all the objects in the game in masak&#8217;s current Adventure::Engine. Oh well, I spy some binding will come into play \o/.</p>
<h2>Grammar for commands</h2>
<p>This is just a small little thing for me. I&#8217;ll have a Grammar and Actions turn the input on the commandline into something nicer to handle in the rest of the code.</p>
<h2>NPC characters</h2>
<p>Even though in any normal IF game I&#8217;d write, I&#8217;d avoid a story that needs any NPCs, I figured I&#8217;d implement NPCs and after August release it as, say, Adventure::Engine::NPC (depending).</p>
<h2>Descriptions in Code</h2>
<p>This is a non-item almost, I&#8217;ll just modify Adventure::Engine to have descriptions in-game.</p>
<h2>Curses!</h2>
<p>Because I want a status line at the top (like ye olde Infocom), why not (n)curses? If there is no existing Perl 6 module to interface with curses, I&#8217;ll write one (NativeCall GO!). I considered writing a module (if there is no existing curses module) that uses a laborious amount of print statements and \e characters, but I&#8217;ll try to interface with ncurses first.</p>
<p>Although I don&#8217;t know if I can do a month of blogging, I&#8217;ll try to fit it all within the month of August.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/rdstar.wordpress.com/149/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/rdstar.wordpress.com/149/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=rdstar.wordpress.com&#038;blog=13482955&#038;post=149&#038;subd=rdstar&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://rdstar.wordpress.com/2012/07/27/making-an-if-game-in-august/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://2.gravatar.com/avatar/5680809f7c6ae51a1487e2650b95f0da?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">lueinc</media:title>
		</media:content>
	</item>
		<item>
		<title>NQP on LLVM: How to Port</title>
		<link>http://rdstar.wordpress.com/2012/07/12/nqp-on-llvm-how-to-port/</link>
		<comments>http://rdstar.wordpress.com/2012/07/12/nqp-on-llvm-how-to-port/#comments</comments>
		<pubDate>Thu, 12 Jul 2012 20:10:43 +0000</pubDate>
		<dc:creator>lueinc</dc:creator>
				<category><![CDATA[Think Tank]]></category>
		<category><![CDATA[LLVM]]></category>
		<category><![CDATA[nocoding]]></category>
		<category><![CDATA[nqp]]></category>
		<category><![CDATA[perl6]]></category>
		<category><![CDATA[trademarks™]]></category>

		<guid isPermaLink="false">http://rdstar.wordpress.com/?p=145</guid>
		<description><![CDATA[I&#8217;ve since realized that writing a version of NQP on LLVM from scratch would be either quite a lot of work or, by taking as many of the .nqp files as I can from the exisiting NQP for a self-compiling &#8230; <a href="http://rdstar.wordpress.com/2012/07/12/nqp-on-llvm-how-to-port/">Continue reading <span class="meta-nav">&#8594;</span></a><img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=rdstar.wordpress.com&#038;blog=13482955&#038;post=145&#038;subd=rdstar&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
				<content:encoded><![CDATA[<p>I&#8217;ve since realized that writing a version of NQP on LLVM from scratch would be either quite a lot of work or, by taking as many of the .nqp files as I can from the exisiting NQP for a self-compiling compiler, essentialy the same as a porting of NQP. So, I&#8217;ve instead tried poking around in the NQP codebase to see where I&#8217;d be spending a lot of time doing such a port.</p>
<p>In NQP there are two directories where I&#8217;ll likely focus my attention first: ops/ and pmc/ . ops/ contains the opcode extensions for Parrot (IIUC), while pmc/ contains the custom <a href="http://docs.parrot.org/parrot/devel/html/docs/user/pir/pmcs.pod.html">Parrot PMCs</a> for use in NQP. Both of these folders take advantage of a mechanism in Parrot that allows for a modification of the language of Parrot externally, without modifying Parrot itself or recompiling the entirety of it.</p>
<p>LLVM has no such mechanism. If I wanted to modify the language of LLVM like what ends up happening in Parrot, I&#8217;d not only have to modify the actual LLVM codebase, <a href="http://llvm.org/docs/ExtendingLLVM.html">but instructions (opcodes) and types are two of the things that, when added, break LLVM&#8217;s bitcode format</a>. Not good. To be fair, I could implement the instructions as intrinsics instead, but that still leaves types, and modifying LLVM from within still seems like a Bad Thing™.</p>
<p>My current theoretical solution is to replace the files in ops/ and pmc/ with hand-coded .ll offering up the same functionality. ops/ is easy enough, I can just implement those opcodes as regular ol&#8217; <a href="http://llvm.org/docs/LangRef.html#functionstructure">LLVMIR functions</a>. pmc/ is a bit trickier, because LLVMIR provides no classes or any such thing. But just because OOP isn&#8217;t built-in, doesn&#8217;t mean I can&#8217;t do OOP. I&#8217;d either use <a href="http://llvm.org/docs/LangRef.html#t_struct">LLVMIR structures</a> (with normal variables as &#8220;attributes&#8221; and pointers to functions as &#8220;methods&#8221;), or just create a mess of LLVMIR that in the end handles like objects, from the outside.</p>
<p>Questions I&#8217;ll certainly have to ask on the llvm-dev mailing list, for sure.</p>
<p>I have two last concerns with putting NQP on LLVM. The first is where the actual generation of PIR starts. I have yet to find the spot where PIR instructions are emitted, which makes me think that&#8217;s all handled in Parrot, with NQP just sending it a structure representing the NQP code it parsed. If this is the case, then that&#8217;d be interesting to port to LLVM. <a href="http://llvm.org/docs/FAQ.html#i-d-like-to-write-a-self-hosting-llvm-compiler-how-should-i-interface-with-the-llvm-middle-end-optimizers-and-back-end-code-generators">Since it&#8217;s best to let LLVM generate LLVMIR for me</a>, I&#8217;d likely end up writing a C/++ &#8220;middleman&#8221; of sorts between the .nqp files of NQP and LLVM, where this C/++ middleman takes what NQP&#8217;s final output is and sends it through LLVM&#8217;s IR generators.</p>
<p>The final concern is where to begin coding so that it takes the least code before I can test the porting of NQP as it goes. I really wouldn&#8217;t feel good about doing the entire port without running tests frequently (or even once).</p>
<p>Questions I&#8217;ll certainly have to ask jnthn, for sure.</p>
<p>This sounds like a difficult, but fun, project. I hope it is.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/rdstar.wordpress.com/145/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/rdstar.wordpress.com/145/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=rdstar.wordpress.com&#038;blog=13482955&#038;post=145&#038;subd=rdstar&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://rdstar.wordpress.com/2012/07/12/nqp-on-llvm-how-to-port/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
	
		<media:content url="http://2.gravatar.com/avatar/5680809f7c6ae51a1487e2650b95f0da?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">lueinc</media:title>
		</media:content>
	</item>
		<item>
		<title>Thoughts on starting NQP on LLVM</title>
		<link>http://rdstar.wordpress.com/2012/06/25/thoughts-on-starting-nqp-on-llvm/</link>
		<comments>http://rdstar.wordpress.com/2012/06/25/thoughts-on-starting-nqp-on-llvm/#comments</comments>
		<pubDate>Mon, 25 Jun 2012 05:04:46 +0000</pubDate>
		<dc:creator>lueinc</dc:creator>
				<category><![CDATA[Think Tank]]></category>
		<category><![CDATA[C++]]></category>
		<category><![CDATA[LLVM]]></category>
		<category><![CDATA[nocoding]]></category>
		<category><![CDATA[nqp]]></category>
		<category><![CDATA[perl6]]></category>
		<category><![CDATA[Zavolaj]]></category>

		<guid isPermaLink="false">http://rdstar.wordpress.com/?p=137</guid>
		<description><![CDATA[Lately I&#8217;ve been getting into certain project ideas (which I&#8217;ll specify later if they ever become anything) that would require a GUI of some kind. Although I&#8217;ve had some success learning SFML, I&#8217;m not too much a fan of C &#8230; <a href="http://rdstar.wordpress.com/2012/06/25/thoughts-on-starting-nqp-on-llvm/">Continue reading <span class="meta-nav">&#8594;</span></a><img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=rdstar.wordpress.com&#038;blog=13482955&#038;post=137&#038;subd=rdstar&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
				<content:encoded><![CDATA[<p>Lately I&#8217;ve been getting into certain project ideas (which I&#8217;ll specify later if they ever become anything) that would require a GUI of some kind. Although I&#8217;ve had some success learning <a href="http://www.sfml-dev.org/">SFML</a>, I&#8217;m not too much a fan of C and C++. Not because they&#8217;re bad languages, but I feel I&#8217;m spending more time making sure I&#8217;ve specified types and type casts correctly and things like that instead of actually coding<sup>1</sup>.</p>
<p>Also, my last C++ program segfaults right at a for loop declaration, for no discernible reason.</p>
<p>So, I decided to take a look at <a href="https://github.com/jnthn/zavolaj">Zavolaj</a>, which allows you to use external libraries, such as GUI toolkits, in Perl 6. I&#8217;m feeling excited about using Zavolaj and Perl 6 instead of C++ now, there&#8217;s just one roadblock left for me.</p>
<p>Parrot. Rakudo on Parrot is slooow, so slow that the last version of Rakudo I successfully compiled locally is 2011.09-46-g1c2c2d4, the culprit being compiling CORE.setting. I&#8217;ve barely tried since that last time (only once or twice more), because I must not have the memory to compile it.</p>
<p>Now I could just continue using C++ and live with it, but that won&#8217;t be very enjoyable, at least for a while<sup>2</sup>. So I wish to finally begin porting NQP to LLVM, so that I can ultimately have Rakudo run natively.</p>
<p><strong>How to Port NQP</strong></p>
<p>I see two ways of going about this task. The first is rewriting NQP, that is starting from scratch, and replacing all the PIR generating parts of the current NQP with LLVMIR generating parts.</p>
<p>Rewriting would seem to me to be the first choice, because it avoids the potential complexity of modifying parts of the existing code (bear in mind I haven&#8217;t examined NQP&#8217;s code deeply enough to know if this is more complex than a rewrite). A rewrite would also allow the option of not writing any of NQP in NQP, as long as the self-compiling part of the original NQP isn&#8217;t essential to its operation<sup>3</sup>.</p>
<p>The one problem is that the features of the NQP language aren&#8217;t well-documented. Except for a <a href="https://en.wikibooks.org/wiki/Parrot_Virtual_Machine/Not_Quite_Perl">very helpful wikibooks page</a>, I haven&#8217;t found much in the way of such documentation. Which would mean inspecting the original code and asking many, many question on #perl6 to get all the information needed.</p>
<p>Option two is rewriting the PIR generating parts of NQP to generate LLVMIR instead. Hopefuly this code resides in the .nqp files of NQP <img src='http://s0.wp.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' />  . After that, we have two choices. The first is that we could compile this LLVMIR-generating NQP to Parrot and update the bootstrap so we get .ll and .bc files instead of .pir and .pbc files, respectively. The other choice is to manually rewrite the .pir and .pbc files and then have a completely LLVM based NQP compiler.</p>
<p>This option could be either as simple as &#8220;just modify the nqp files in this directory and you&#8217;ll be targeting a new backend!&#8221; or as complex as &#8220;every single file needs modification. Good luck!&#8221;.</p>
<p>I hope to get started on this soon, so that I can use Perl 6 all the time <img src='http://s0.wp.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' />  .</p>
<p>1. <small>Of course, I haven&#8217;t been coding C++ for long, so this could be just me being a beginner.</small><br />
2. <small>My general view on C++ is that every time I use C++, I appreciate Perl 6 more.</small><br />
3. <small>Maybe it&#8217;s a bootstrapped compiler because PIR isn&#8217;t very enjoyable <img src='http://s0.wp.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' />  . I&#8217;ll likely find out the reason very soon.</small></p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/rdstar.wordpress.com/137/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/rdstar.wordpress.com/137/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=rdstar.wordpress.com&#038;blog=13482955&#038;post=137&#038;subd=rdstar&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://rdstar.wordpress.com/2012/06/25/thoughts-on-starting-nqp-on-llvm/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
	
		<media:content url="http://2.gravatar.com/avatar/5680809f7c6ae51a1487e2650b95f0da?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">lueinc</media:title>
		</media:content>
	</item>
		<item>
		<title>RD* Phasers Set to PRE</title>
		<link>http://rdstar.wordpress.com/2012/05/21/rd-phasers-set-to-pre/</link>
		<comments>http://rdstar.wordpress.com/2012/05/21/rd-phasers-set-to-pre/#comments</comments>
		<pubDate>Mon, 21 May 2012 05:52:12 +0000</pubDate>
		<dc:creator>lueinc</dc:creator>
				<category><![CDATA[Think Tank]]></category>
		<category><![CDATA[frotzlexity]]></category>
		<category><![CDATA[interactivefiction]]></category>
		<category><![CDATA[LLVM]]></category>
		<category><![CDATA[nocoding]]></category>
		<category><![CDATA[nqp]]></category>
		<category><![CDATA[perl6]]></category>
		<category><![CDATA[psyde]]></category>

		<guid isPermaLink="false">http://rdstar.wordpress.com/?p=133</guid>
		<description><![CDATA[Well, I hope the PRE phaser fires before the START phaser, or else this post&#8217;s title will look silly. The purpose of this post, as suggested by the title, is for me to formally list what it is I plan &#8230; <a href="http://rdstar.wordpress.com/2012/05/21/rd-phasers-set-to-pre/">Continue reading <span class="meta-nav">&#8594;</span></a><img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=rdstar.wordpress.com&#038;blog=13482955&#038;post=133&#038;subd=rdstar&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
				<content:encoded><![CDATA[<p>Well, I hope the PRE phaser fires before the START phaser, or else this post&#8217;s title will look silly.</p>
<p>The purpose of this post, as suggested by the title, is for me to formally list what it is I plan to do Perl6-wise over the summer. As usual, I expect the projects I find interesting to change even before 13 June (my last day of school, the afternoon of which will be the start of my summer). Here&#8217;s a short list (in no particular order):</p>
<p><strong>Port NQP to LLVM.</strong> The reason I&#8217;d like to do this is so that Rakudo, when it&#8217;s completely moved from PIR to NQP, will be able to compile to native machine code. I&#8217;m sure this task will be a lot harder than I could possibly imagine, but it&#8217;s worth a shot. I also imagine this idea would be more worked on once Rakudo is fully on NQP.</p>
<p><strong>Get a working frotzlexity.</strong> Frotzlexity is my IF (interactive fiction) system for Perl 6. The first thing I plan on implementing is the English parser, just so I have an interface to the rest of the system as it&#8217;s coded. (This plan isn&#8217;t set in stone, though.)</p>
<p><strong>Make a static website generator.</strong> Over the past couple of days I&#8217;ve been thinking of preparing a website to put up eventually. Since I can&#8217;t really write Perl 6 websites (the way you can with Perl 5), I&#8217;d rather go and make a static website. Of course, things like navigation and common design elements are easier when using a generator as opposed to all by hand. I haven&#8217;t quite decided if I&#8217;d help masak improve on psyde or just go and create my own generator (I&#8217;m leaning towards helping with psyde, just because starting up a second identical project doesn&#8217;t seem like a good idea to me).</p>
<p>Well, that&#8217;s what I&#8217;m currently planning on anyway. I can&#8217;t wait until I have enough time to work on Perl 6 things once again.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/rdstar.wordpress.com/133/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/rdstar.wordpress.com/133/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=rdstar.wordpress.com&#038;blog=13482955&#038;post=133&#038;subd=rdstar&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://rdstar.wordpress.com/2012/05/21/rd-phasers-set-to-pre/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://2.gravatar.com/avatar/5680809f7c6ae51a1487e2650b95f0da?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">lueinc</media:title>
		</media:content>
	</item>
		<item>
		<title>Two Years of Perl 6!</title>
		<link>http://rdstar.wordpress.com/2012/02/20/two-years-of-perl-6/</link>
		<comments>http://rdstar.wordpress.com/2012/02/20/two-years-of-perl-6/#comments</comments>
		<pubDate>Mon, 20 Feb 2012 22:48:56 +0000</pubDate>
		<dc:creator>lueinc</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[anniversary]]></category>
		<category><![CDATA[interactivefiction]]></category>
		<category><![CDATA[LLVM]]></category>
		<category><![CDATA[modules]]></category>
		<category><![CDATA[nocoding]]></category>
		<category><![CDATA[perl6]]></category>

		<guid isPermaLink="false">http://rdstar.wordpress.com/?p=125</guid>
		<description><![CDATA[6 Feb 2010 marks the two year anniversary of my involvement in Perl 6. It&#8217;s the first day I started conversing on #perl6, and I joined the channel two days earlier. (Today also, coincidentally, is the same day I made &#8230; <a href="http://rdstar.wordpress.com/2012/02/20/two-years-of-perl-6/">Continue reading <span class="meta-nav">&#8594;</span></a><img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=rdstar.wordpress.com&#038;blog=13482955&#038;post=125&#038;subd=rdstar&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
				<content:encoded><![CDATA[<p>6 Feb 2010 marks the two year anniversary of my involvement in Perl 6. It&#8217;s the first day I started conversing on #perl6, and I joined the channel two days earlier. (Today also, coincidentally, is the same day I made <a title="One Year of Perl 6!" href="http://rdstar.wordpress.com/2011/02/20/one-year-of-perl-6/">a belated anniversary post</a> last year.) It&#8217;s been a wonderful ride since the start, and it still isn&#8217;t over with yet.</p>
<p>Just one note about Perl 6: I think it&#8217;s the best language ever. Recently I&#8217;ve toyed a bit with C and C++, and every time I play with one of those languages, I just appreciate Perl 6 more (and eventually wish I didn&#8217;t have to be using C/C++ in this situation). I think the community at #perl6 has really helped with my enjoyment of the language. The language and community have taught me a lot about programming in general, such as not using the very first idea for structuring your program (obvious, but a strong impulse if you&#8217;re not told this directly), and also how important it is to lay out your program, if for no other reason than unit tests.</p>
<p>Now, I haven&#8217;t been involved in Perl 6 (and #perl6) recently, and I&#8217;m hoping to change that. I sadly won&#8217;t be able to go full-scale into Perl 6 right now (we can thank the institution known as &#8220;school&#8221; <img src='http://s0.wp.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> ), but I do want to start getting more involved again before it&#8217;s too late.</p>
<p>So, for my third year of Perl6-ing, this is what I have planned:</p>
<h2>Perl6 IF</h2>
<p>This is my favorite idea. It&#8217;s to code an Interactive Fiction game in Perl 6. Then, once the game is made, I would separate the game from the IF world model, and releases the modules as a way of coding IF in Perl 6. Hopefully, if done right, such a setup could even transform your game into formats like ZCode <img src='http://s0.wp.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' />  (more detail on this in later posts). I&#8217;ll be using <a href="https://github.com/masak/crypt">masak&#8217;s crypt</a> as inspiration, and when I get started you can follow the progress at <a href="https://github.com/lue/frotzlexity">frotzlexity (on github)</a>.</p>
<h2>&#8220;Native Perl 6&#8243;</h2>
<p>I&#8217;ve had ideas for a while of creating an implementation of Perl 6 that compiles your Perl 6 into native machine code. My current form of the idea is to instead port NQP to LLVM, and then replace all the PIR-dependent bits in Rakudo with equivalent NQP bits <img src='http://s0.wp.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' />  (granted, removing all direct ties to Parrot in Rakudo is most likely easier said than done).</p>
<p>However, since my goal is to really have some form of Perl 6 running at a decent speed on my computer (at least when executing a P6 program), <a href="https://6guts.wordpress.com/2012/02/10/bounded-serialization-better-regexes-and-better-errors/">jnthn&#8217;s new serialization efforts</a> in Rakudo may improve Rakudo enough to run decent on this very old thing of mine, and remove all my interest in this. We&#8217;ll see (my interest will be lost when the serialization makes CORE.setting compile in a decent amount of time (read: at all) on my 384MiB RAM machine <img src='http://s0.wp.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> ).</p>
<h2>Modules in Perl 6</h2>
<p>Somehow I always come back to modules in Perl 6. Maybe that&#8217;s because I&#8217;m still not 100% happy with how it all works, in code and (rarely) community. (This dislike is likely caused by my still-incomplete understanding of modules in Perl6 and, heck, Perl6 in general.) My current area of interest is in adding stuff to <a href="http://modules.perl6.org/">modules.perl6.org</a>, in particular multiple pages (maybe 10 or so entries per page?), as well as the beginnings of some form of categorization. I can definitely see <a href="http://modules.perl6.org/">modules.perl6.org</a> become something like CPAN and would like to start working towards that. Let&#8217;s see how the rest of #perl6 feels about this idea first though (as historically my thoughts on modules in Perl 6 haven&#8217;t been the greatest).</p>
<p>That&#8217;s my basic list of things I&#8217;m interested in (at this moment) for this third year of Perl 6 hacking. As always, I&#8217;ll have the appropriate amount of fun!</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/rdstar.wordpress.com/125/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/rdstar.wordpress.com/125/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=rdstar.wordpress.com&#038;blog=13482955&#038;post=125&#038;subd=rdstar&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://rdstar.wordpress.com/2012/02/20/two-years-of-perl-6/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://2.gravatar.com/avatar/5680809f7c6ae51a1487e2650b95f0da?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">lueinc</media:title>
		</media:content>
	</item>
		<item>
		<title>Perl 6 is not Perl, Version 6</title>
		<link>http://rdstar.wordpress.com/2011/09/07/p6-isnt-pv6/</link>
		<comments>http://rdstar.wordpress.com/2011/09/07/p6-isnt-pv6/#comments</comments>
		<pubDate>Wed, 07 Sep 2011 21:38:06 +0000</pubDate>
		<dc:creator>lueinc</dc:creator>
				<category><![CDATA[Think Tank]]></category>
		<category><![CDATA[nocoding]]></category>
		<category><![CDATA[opinion]]></category>
		<category><![CDATA[perl6]]></category>

		<guid isPermaLink="false">http://rdstar.wordpress.com/?p=115</guid>
		<description><![CDATA[In these last few days of summer vacation, I had decided to write an article about my opinion on Perl 6 and its relation to the rest of Perl. I have posted it on github, feel free to click on &#8230; <a href="http://rdstar.wordpress.com/2011/09/07/p6-isnt-pv6/">Continue reading <span class="meta-nav">&#8594;</span></a><img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=rdstar.wordpress.com&#038;blog=13482955&#038;post=115&#038;subd=rdstar&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
				<content:encoded><![CDATA[<p>In these last few days of summer vacation, I had decided to write an article about my opinion on Perl 6 and its relation to the rest of Perl. I have posted it on github, feel free to click on the link below and read it.</p>
<p>I want to stress that this is an <em><strong>opinion</strong></em>, not a statement of any sort of facts. Feel free to blog your rampant disapprovals of my opinions without fear you&#8217;re disapproving of any facts <img src='http://s0.wp.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' />  . I also stress this to make sure no one mistakes this as a statement of facts and runs around convinced that Perl 6 isn&#8217;t the successor to Perl 5 (that&#8217;s my opinion, I just don&#8217;t want it portrayed as fact unless the important decision-makers say I&#8217;m right).</p>
<p><a href="https://gist.github.com/1201788">https://gist.github.com/1201788</a>  enjoy.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/rdstar.wordpress.com/115/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/rdstar.wordpress.com/115/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=rdstar.wordpress.com&#038;blog=13482955&#038;post=115&#038;subd=rdstar&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://rdstar.wordpress.com/2011/09/07/p6-isnt-pv6/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
	
		<media:content url="http://2.gravatar.com/avatar/5680809f7c6ae51a1487e2650b95f0da?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">lueinc</media:title>
		</media:content>
	</item>
		<item>
		<title>The Mu Proof</title>
		<link>http://rdstar.wordpress.com/2011/08/26/the-mu-proof/</link>
		<comments>http://rdstar.wordpress.com/2011/08/26/the-mu-proof/#comments</comments>
		<pubDate>Fri, 26 Aug 2011 20:47:27 +0000</pubDate>
		<dc:creator>lueinc</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[math]]></category>
		<category><![CDATA[mu]]></category>
		<category><![CDATA[nocoding]]></category>
		<category><![CDATA[perl6]]></category>

		<guid isPermaLink="false">http://rdstar.wordpress.com/?p=111</guid>
		<description><![CDATA[This is a paper I wrote a while ago after a discussion on #perl6 one night (the link to the discussion is in the paper below) that proves anything divided by zero equals everything. Enjoy. &#160; The Mu Proof &#160;<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=rdstar.wordpress.com&#038;blog=13482955&#038;post=111&#038;subd=rdstar&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
				<content:encoded><![CDATA[<p>This is a paper I wrote a while ago after a discussion on #perl6 one night (the link to the discussion is in the paper below) that proves anything divided by zero equals everything. Enjoy.</p>
<p>&nbsp;</p>
<p><a href="http://rdstar.files.wordpress.com/2011/08/divzeromu.pdf">The Mu Proof</a></p>
<p>&nbsp;</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/rdstar.wordpress.com/111/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/rdstar.wordpress.com/111/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=rdstar.wordpress.com&#038;blog=13482955&#038;post=111&#038;subd=rdstar&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://rdstar.wordpress.com/2011/08/26/the-mu-proof/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://2.gravatar.com/avatar/5680809f7c6ae51a1487e2650b95f0da?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">lueinc</media:title>
		</media:content>
	</item>
		<item>
		<title>Thoughts on Module Distribution in P6</title>
		<link>http://rdstar.wordpress.com/2011/08/14/thoughts-on-module-distribution-in-p6/</link>
		<comments>http://rdstar.wordpress.com/2011/08/14/thoughts-on-module-distribution-in-p6/#comments</comments>
		<pubDate>Sun, 14 Aug 2011 21:56:41 +0000</pubDate>
		<dc:creator>lueinc</dc:creator>
				<category><![CDATA[Think Tank]]></category>
		<category><![CDATA[modules]]></category>
		<category><![CDATA[nocoding]]></category>
		<category><![CDATA[perl6]]></category>
		<category><![CDATA[S22]]></category>
		<category><![CDATA[spec]]></category>
		<category><![CDATA[synopses]]></category>

		<guid isPermaLink="false">http://rdstar.wordpress.com/?p=105</guid>
		<description><![CDATA[I&#8217;ve been thinking a bit lately of the way module distribution is handled in Perl 6. Right now there&#8217;s modules.perl6.org. It&#8217;s a brilliant start, however I think we need to formalize some aspects of how it works and what&#8217;s needed &#8230; <a href="http://rdstar.wordpress.com/2011/08/14/thoughts-on-module-distribution-in-p6/">Continue reading <span class="meta-nav">&#8594;</span></a><img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=rdstar.wordpress.com&#038;blog=13482955&#038;post=105&#038;subd=rdstar&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
				<content:encoded><![CDATA[<p>I&#8217;ve been thinking a bit lately of the way module distribution is handled in Perl 6. Right now there&#8217;s <a href="http://modules.perl6.org">modules.perl6.org</a>. It&#8217;s a brilliant start, however I think we need to formalize some aspects of how it works and what&#8217;s needed to make the system work. (The results of this formalization of sorts would replace the fossil that is S22 and other relevant parts of the spec.) Here are some of the things I&#8217;ve thought so far:</p>
<p><strong>Don&#8217;t use CPAN.</strong> This is one point I&#8217;ll be fighting for the most. <a title="The View of Perl6 and Cleaning the Specs" href="http://rdstar.wordpress.com/2010/12/28/the-view-of-perl6-and-cleaning-the-specs/">There is a commonly perceived split between Perl 6 and Perl 5</a>, one I don&#8217;t personally believe will go away any time soon. I think that since there&#8217;s a separate perl6.org site for Perl 6, there should be a separate repository for Perl 6 modules. (Remember, I came to Perl learning Perl 6. I have never been a part of Perl 5 and I have always perceived that P6 is different enough from P5 that the are separate branches that should get confused and mix together (e.g., the same website for P6 <em>and</em> P5 is a no-no to me if clarity is a goal). There&#8217;s most likely bias here because of this fact.)</p>
<p><strong>P6SSMPR.</strong> Yes, it&#8217;s that mouthful of an acronym again <img src='http://s0.wp.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' />  . I really want to provide a central place for all Perl 6 code. (The acronym stands for Perl 6 Snippets, Scripts, Modules, and Programs Repository.) modules.perl6.org is already a great site, so perhaps the <em>idea</em> of P6SSMPR can be applied to modules.perl6.org. Soon (within a day or two, hopefully) I will publish a document describing exactly what I mean when I think of P6SSMPR.</p>
<p><strong>Clearly explain the module system.</strong> I&#8217;m a fan of <a href="http://betterexplained.com">betterexplained.com</a> (as well as its other projects, including <a href="http://aha.betterexplained.com">aha.betterexplained.com</a> for sharing your own ideas and <a href="http://instacalc.com">instacalc.com</a>), so I really want to make the spec easy to understand. Of course, first I need to finish with explaining the type hierarchy (er, object inheritance chain?). Then, when I get started on explaining the module system (or whatever other part I want to explain), then I&#8217;ll merge the type hierarchy project into a more general spec explanation project. (I&#8217;ve even thought of a fourth category of pages, the &#8220;Tutorials&#8221;, to explain the Synopses, like the Exegeses explain the Apoclypses. But that&#8217;s another story.)</p>
<p>Anyway, I think it&#8217;s high time some of the higher numbered specs and less worked on parts of Perl 6 need to be fleshed out. Since I like the idea of <del>messing with</del> formalizing the module system, I figured I start there. And I figured I&#8217;d start by starting a discussion of this (<a href="http://irclog.perlgeek.de/perl6/2011-08-14#i_4277734">at least one that I&#8217;ll be around for, apparently</a>). Any ideas?</p>
<p>tl;dr — The universe has reportedly been turned upside down. Investigations are under way to determine why nobody noticed.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/rdstar.wordpress.com/105/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/rdstar.wordpress.com/105/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=rdstar.wordpress.com&#038;blog=13482955&#038;post=105&#038;subd=rdstar&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://rdstar.wordpress.com/2011/08/14/thoughts-on-module-distribution-in-p6/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://2.gravatar.com/avatar/5680809f7c6ae51a1487e2650b95f0da?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">lueinc</media:title>
		</media:content>
	</item>
		<item>
		<title>Beginning Notes for the Perl 6 Type Hierarchy</title>
		<link>http://rdstar.wordpress.com/2011/08/13/beginning-notes-for-the-perl-6-type-hierarchy/</link>
		<comments>http://rdstar.wordpress.com/2011/08/13/beginning-notes-for-the-perl-6-type-hierarchy/#comments</comments>
		<pubDate>Sat, 13 Aug 2011 07:19:36 +0000</pubDate>
		<dc:creator>lueinc</dc:creator>
				<category><![CDATA[Progress Happened]]></category>
		<category><![CDATA[nocoding]]></category>
		<category><![CDATA[perl6]]></category>
		<category><![CDATA[pod]]></category>
		<category><![CDATA[S01]]></category>
		<category><![CDATA[S02]]></category>
		<category><![CDATA[synopses]]></category>

		<guid isPermaLink="false">http://rdstar.wordpress.com/?p=103</guid>
		<description><![CDATA[I stated in my last post some ideas I came up with involving Perl 6 that I&#8217;d be at least semi-interested in doing. Although the code repository (P6SSMPR) was actually my favorite idea, I decided to start with the small &#8230; <a href="http://rdstar.wordpress.com/2011/08/13/beginning-notes-for-the-perl-6-type-hierarchy/">Continue reading <span class="meta-nav">&#8594;</span></a><img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=rdstar.wordpress.com&#038;blog=13482955&#038;post=103&#038;subd=rdstar&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
				<content:encoded><![CDATA[<p><a title="Ideas for me to improve Perl 6" href="http://rdstar.wordpress.com/2011/08/06/ideas-for-me-to-improve-perl-6/">I stated in my last post</a> some ideas I came up with involving Perl 6 that I&#8217;d be at least semi-interested in doing. Although the code repository (P6SSMPR) was actually my favorite idea, I decided to start with the small (and remotely possible) stuff, namely a project whose ultimate goal is a pretty graph.</p>
<p>For the past couple days I&#8217;ve been taking notes on any mention of types and especially the hierarchy of types in Perl 6. <a href="https://github.com/lue/Perl-6-Type-Hierarchy">You can see the work so far here</a>. S01 contained no information, while S02 is proving to be quite the ordeal (<a href="https://github.com/lue/Perl-6-Type-Hierarchy/commit/a61a5ef94aa7bcce9b158914160cbc1f9fd48dc6">as seen in this recent commit message</a>). I knew this wasn&#8217;t going to be easy.</p>
<p>I state the goals for this project in the README (by the way, yes I do support the use of .pod6 as a valid extension), but to repeat them here, I want to do this for two reasons:</p>
<ol>
<li>To help newcomers to Perl 6 understand the type system (one less confusing aspect of the language to be all alone on)</li>
<li>To reveal any potential inconsistencies in the synopses, at least what&#8217;s pertinent to types and the type hierarchy.</li>
</ol>
<p>There it is! Hope you&#8217;ll follow the work, and snicker at the occasional witty note/commit message.</p>
<p>(Actually, <a href="http://irclog.perlgeek.de/perl6/2011-08-10#i_4256300">moritz mentioned that there is no type hierarchy</a>. In that case, is the P6 Standard Objects Inheritance Chain? Or maybe SCOI. No wait, definitely CISO. No,&#8230;)</p>
<p>TL;DR: You just missed a valuable cash opportunity in the blog post. Maybe next time.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/rdstar.wordpress.com/103/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/rdstar.wordpress.com/103/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=rdstar.wordpress.com&#038;blog=13482955&#038;post=103&#038;subd=rdstar&#038;ref=&#038;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://rdstar.wordpress.com/2011/08/13/beginning-notes-for-the-perl-6-type-hierarchy/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
	
		<media:content url="http://2.gravatar.com/avatar/5680809f7c6ae51a1487e2650b95f0da?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">lueinc</media:title>
		</media:content>
	</item>
	</channel>
</rss>
