<?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/"
	>

<channel>
	<title>Mindstab.net &#187; cl-pack Archives  &#8211; Mindstab.net</title>
	<atom:link href="http://www.mindstab.net/tag/cl-pack/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.mindstab.net</link>
	<description>Various projects and musings</description>
	<lastBuildDate>Tue, 27 Mar 2012 16:53:59 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>Github and primes rerelease</title>
		<link>http://www.mindstab.net/github/</link>
		<comments>http://www.mindstab.net/github/#comments</comments>
		<pubDate>Tue, 08 Mar 2011 07:23:42 +0000</pubDate>
		<dc:creator>Dan Ballard</dc:creator>
				<category><![CDATA[Posts]]></category>
		<category><![CDATA[cl-pack]]></category>
		<category><![CDATA[Coding]]></category>
		<category><![CDATA[git]]></category>
		<category><![CDATA[Primes]]></category>

		<guid isPermaLink="false">http://www.mindstab.net/?p=904</guid>
		<description><![CDATA[I&#8217;ve setup a github account at github.com/dballard/ and started pushing some code to it. So far cl-pack and my old primes project. Running primes again was fun. PHP is still quite fast for an interpreted language. Lisp is nicely inbetween VM languages like C# and Java and interpreted languages like PHP. Ruby1.9 is definatly faster [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve setup a github account at <a href="https://github.com/dballard/">github.com/dballard/</a> and started pushing some code to it.  So far <a href="http://www.cliki.net/cl-pack">cl-pack</a> and my old <a href="https://github.com/dballard/primes">primes</a> project.</p>
<p>Running primes again was fun.  PHP is still quite fast for an interpreted language.  Lisp is nicely inbetween VM languages like C# and Java and interpreted languages like PHP.  Ruby1.9 is definatly faster than 1.8 but still slower than pretty much everything else (sadly).  Nothing really seems to have dramatically noticeably changed.  The <a href="http://www.mindstab.net/primes-results-for-x86-vs-ppc-vs-arm/">old stats I generated</a> still seem roughly right-ish.  As right as this &#8220;benchmark&#8221; can be.</p>
<p>A quick benchmark on a Athlon 5200+ sorted by running speed:</p>
<pre>
Prime number benchmarks
Benchmark machine: Linux 2.6.32-29-generic-pae #58-Ubuntu SMP Fri Feb 11 2011 i686 GNU/Linux

C results:
Compile [gcc]:          0.09 seconds
Execute:                0.60 seconds

x86 Assembly results:
Compile [gcc]:          0.08 seconds
Execute:                0.65 seconds

C++ results:
Compile [g++]:          0.44 seconds
Execute:                0.78 seconds

Haskell results:
Compile [ghc]:          0.85 seconds
Execute:                0.93 seconds

C# (Mono) results:
Compile [mcs]:          0.52 seconds
Execute [mono]:         1.18 seconds

Java results:
Compile [javac]:        1.38 seconds
Execute [java]:         1.55 seconds

Common Lisp results:
Compile [sbcl]:         1.00 seconds
Execute [sbcl]:         3.09 seconds

Erlang results:
Compile [erlc]:         0.54 seconds
Execute [erl]:          5.82 seconds

PHP results:
Execute [php]:          12.0 seconds

PERL results:
Execute [perl]:         14.3 seconds

AWK results:
Execute [awk]:          15.3 seconds

Python results:
Execute [python]:       15.7 seconds

Ruby 1.9.1 results:
Execute [ruby1.9.1]:    32.6 seconds

Ruby 1.8 results:
Execute [ruby1.8]:      73.4 seconds

TCL results:
Execute [tclsh]:        180. seconds
</pre>
]]></content:encoded>
			<wfw:commentRss>http://www.mindstab.net/github/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>cl-pack 0.2</title>
		<link>http://www.mindstab.net/cl-pack-0-2/</link>
		<comments>http://www.mindstab.net/cl-pack-0-2/#comments</comments>
		<pubDate>Sat, 15 Aug 2009 18:04:13 +0000</pubDate>
		<dc:creator>Dan Ballard</dc:creator>
				<category><![CDATA[Posts]]></category>
		<category><![CDATA[cl-pack]]></category>
		<category><![CDATA[Coding]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[Lisp]]></category>

		<guid isPermaLink="false">http://www.mindstab.net/wordpress/?p=607</guid>
		<description><![CDATA[cl-pack 0.2 is out and can be gotten at the regular place. I&#8217;ve packed a lot of new features into it. More data types supported, and a lot of new syntax and formating rules including grouping and &#8216;/&#8217; templates. Additionally some bugs were fixed including signed number support. cl-pack covers most of Perl&#8217;s pack&#8217;s features [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.cliki.net/cl-pack">cl-pack 0.2</a> is out and can be gotten at <a href="http://ftp.mindstab.net/cl-pack">the regular place</a>.  I&#8217;ve packed a lot of new features into it.  More data types supported, and a lot of new syntax and formating rules including grouping and &#8216;/&#8217; templates.  Additionally some bugs were fixed including signed number support.</p>
<p>cl-pack covers most of <a href="http://perldoc.perl.org/functions/pack.html">Perl&#8217;s pack&#8217;s</a> features ignoring as far as I&#8217;m concerned only weird esoteric stuff.  Granted thats up to interpretation but I am very happy with what cl-pack supports and so I am pushing out 0.2 and calling it &#8220;feature complete&#8221; unless I hear from anyone soon needing anything or with bugs.  If not I&#8217;ll rerelease it in a bit as 1.0.  It&#8217;s a pretty solid piece of work IMHO.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.mindstab.net/cl-pack-0-2/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>A days work on cl-pack</title>
		<link>http://www.mindstab.net/a-days-work-on-cl-pack/</link>
		<comments>http://www.mindstab.net/a-days-work-on-cl-pack/#comments</comments>
		<pubDate>Thu, 09 Jul 2009 10:55:15 +0000</pubDate>
		<dc:creator>Dan Ballard</dc:creator>
				<category><![CDATA[Posts]]></category>
		<category><![CDATA[cl-pack]]></category>
		<category><![CDATA[Coding]]></category>

		<guid isPermaLink="false">http://www.mindstab.net/wordpress/?p=530</guid>
		<description><![CDATA[Well, today I made some progress on cl-pack. I fixed a native endian detection bug, wrote some more test cases and most importantly added actually support for signed integers. Not bad for a days work. Then went through all the perldoc on pack and made up a list of all the features I still need [...]]]></description>
			<content:encoded><![CDATA[<p>Well, today I made some progress on cl-pack.  I fixed a native endian detection bug, wrote some more test cases and most importantly added actually support for signed integers.  Not bad for a days work.  Then went through all the perldoc on pack and made up a list of all the features I still need to support for pretty much full compatibility.  It isn&#8217;t tiny or trivial but it should be doable and hopefully in not a huge amount of time.  I&#8217;m at least pretty stoked.  cl-pack is really coming along and then lisp can boast fully pack/unpack support like most other languages out there.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.mindstab.net/a-days-work-on-cl-pack/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>cl-pack 0.1.1</title>
		<link>http://www.mindstab.net/cl-pack-011/</link>
		<comments>http://www.mindstab.net/cl-pack-011/#comments</comments>
		<pubDate>Sat, 04 Jul 2009 20:13:27 +0000</pubDate>
		<dc:creator>Dan Ballard</dc:creator>
				<category><![CDATA[Posts]]></category>
		<category><![CDATA[cl-pack]]></category>
		<category><![CDATA[Coding]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[Lisp]]></category>

		<guid isPermaLink="false">http://www.mindstab.net/wordpress/?p=525</guid>
		<description><![CDATA[I&#8217;ve released cl-pack 0.1.1. Just a few code improvements suggested by Zach. This is just light stuff, some slight tweeks to be more in line with lisp standards and a few small speed up using native functions I didn&#8217;t know about instead of my own code. He&#8217;d suggested some more radical changes too, the biggest [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve released <a href="http://www.cliki.net/cl-pack">cl-pack 0.1.1</a>.  Just a few code improvements suggested by Zach.  This is just light stuff, some slight tweeks to be more in line with lisp standards and a few small speed up using native functions I didn&#8217;t know about instead of my own code.  </p>
<p>He&#8217;d suggested some more radical changes too, the biggest being to turn the two pack/unpack case statements into macro-foo so that I could just go</p>

<div class="wp_syntax"><div class="code"><pre class="lisp" style="font-family:monospace;"><span style="color: #66cc66;">&#40;</span>define-directive #\i <span style="color: #66cc66;">...</span><span style="color: #66cc66;">&#41;</span></pre></div></div>

<p>all on its own.  I gave it a good try and pretty much got it working, but it unfortunately spits out about 125 style warnings, increased the code by about 100 lines or ~ 20% and I&#8217;m not sure in the end if it really was any clearer, so I scrapped that for now and am just releasing the basic easy changes and moving onto a few more features.</p>
<p>The planned release will be hopefully something like a few more features for 0.2.0 and then if nothing explodes, release it as 1.0 and cl-pack should be done-ish.  </p>
]]></content:encoded>
			<wfw:commentRss>http://www.mindstab.net/cl-pack-011/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>CL-PACK 0.1 released!</title>
		<link>http://www.mindstab.net/cl-pack-01-released/</link>
		<comments>http://www.mindstab.net/cl-pack-01-released/#comments</comments>
		<pubDate>Tue, 16 Jun 2009 22:25:55 +0000</pubDate>
		<dc:creator>Dan Ballard</dc:creator>
				<category><![CDATA[Posts]]></category>
		<category><![CDATA[cl-pack]]></category>
		<category><![CDATA[Coding]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[Lisp]]></category>

		<guid isPermaLink="false">http://www.mindstab.net/wordpress/?p=514</guid>
		<description><![CDATA[Well, as promised, I&#8217;ve finished the first version of the little Lisp project I&#8217;ve been working on and it&#8217;s only mid June. So with no further adu, I present cl-pack. cl-pack is a Common Lisp library supplying perl/php/ruby compatible pack() and unpack() functions so that Lisp can easily communicate with those languages via binary protocols [...]]]></description>
			<content:encoded><![CDATA[<p>Well, as promised, I&#8217;ve finished the first version of the little Lisp project I&#8217;ve been working on and it&#8217;s only mid June.  So with no further adu, I present cl-pack.</p>
<p>cl-pack is a Common Lisp library supplying perl/php/ruby compatible pack() and unpack() functions so that Lisp can easily communicate with those languages via binary protocols or files.  pack() and unpack() take Lisp data and pack them into binary strings that can be stored or exchanged safely with other programs.  The (un)pack functions are handy utilities that most other common languages support and now so does Lisp.</p>
<p>Cavets: This is the first release, therefor full coverage of all pack() syntax isn&#8217;t yet available.  Most data type (all common ones) are supported, as are repeaters in the form of numbers and &#8216;*&#8217;.  Grouping with brackets and other extended syntax is not yet supported, but should be forthcoming in the next release.  Documentation is in cl-pack.lisp and if you want to see what it can do, also look at tests.lisp.  cl-pack is ASDF compatible so it should integrate with your system well.  It relies on ieee-floats but ships with a copy should your system be lacking one.</p>
<p>You can get it at <a href="http://ftp.mindstab.net/cl-pack/">ftp.mindstab.net/cl-pack</a></p>
<p>So yeah, this is what I&#8217;ve been working on for the past month or so.  Glad to get it out.  I plan to throw up some small web page for it in a few days and then start working on the remaining syntax support.</p>
<p>Edit: I set up a page for cl-pack at CLiki <a href="http://www.cliki.net/cl-pack">http://www.cliki.net/cl-pack</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.mindstab.net/cl-pack-01-released/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Little Lisp coding project at night</title>
		<link>http://www.mindstab.net/little-lisp-coding-project-at-night/</link>
		<comments>http://www.mindstab.net/little-lisp-coding-project-at-night/#comments</comments>
		<pubDate>Fri, 22 May 2009 07:00:16 +0000</pubDate>
		<dc:creator>Dan Ballard</dc:creator>
				<category><![CDATA[Posts]]></category>
		<category><![CDATA[cl-pack]]></category>
		<category><![CDATA[Coding]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[Lisp]]></category>

		<guid isPermaLink="false">http://www.mindstab.net/wordpress/?p=503</guid>
		<description><![CDATA[Maybe it&#8217;s just me, but I&#8217;ve found that as much fun as Lisp can be, it doesn&#8217;t play so well with other, weather that be the environment it&#8217;s executing in, or talking to other languages. I&#8217;m playing with a new RPC framework that doesn&#8217;t have Lisp support but I&#8217;m looking to see if I could [...]]]></description>
			<content:encoded><![CDATA[<p>Maybe it&#8217;s just me, but I&#8217;ve found that as much fun as Lisp can be, it doesn&#8217;t play so well with other, weather that be the environment it&#8217;s executing in, or talking to other languages.  </p>
<p>I&#8217;m playing with a new RPC framework that doesn&#8217;t have Lisp support but I&#8217;m looking to see if I could add it, and I&#8217;ve noticed that because it mainly uses a &#8216;binary protocol&#8217; that Lisp doesn&#8217;t necessarily support binary data types like float much.  Or at all.  And interestingly (at least to me) Lisp doesn&#8217;t seem to have a Perl compatible (and PHP, Ruby, and Python) pack() and unpack() function, which, looking at the code of the implementation of this RPC frame work in all the other languages, is what they use to encode the data. </p>
<p> So I&#8217;ve stepped back from that for a moment and am playing around with writing pack() and unpack() functions in Lisp.  Through this little side project I&#8217;m finally learning a lot more about Lisp packages and ASDF, so it&#8217;s been fun so far.  Integer support was dead easy to write, but I was dreading groking the ieee float specification enough to try implementing it, but thankfully someone already did and I can make use of the Lisp package ieee-floats for that, so Yay and thanks!  And so hopefully soon I&#8217;ll have a perl compatible pack() and unpack() set of functions for Lisp.</p>
<p>As a side note, even though it can be frustrating, I really do enjoy hacking away in Lisp, for some reason I just find it fun.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.mindstab.net/little-lisp-coding-project-at-night/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

