<?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>Lojic Technologies Blog &#187; book</title>
	<atom:link href="http://lojic.com/blog/tag/book/feed/" rel="self" type="application/rss+xml" />
	<link>http://lojic.com/blog</link>
	<description></description>
	<lastBuildDate>Fri, 25 Nov 2011 20:12:56 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.4</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Getting Started with Standard ML</title>
		<link>http://lojic.com/blog/2009/05/02/getting-started-with-standard-ml/</link>
		<comments>http://lojic.com/blog/2009/05/02/getting-started-with-standard-ml/#comments</comments>
		<pubDate>Sat, 02 May 2009 17:26:49 +0000</pubDate>
		<dc:creator>Brian Adkins</dc:creator>
				<category><![CDATA[books]]></category>
		<category><![CDATA[programming]]></category>
		<category><![CDATA[book]]></category>
		<category><![CDATA[sml]]></category>

		<guid isPermaLink="false">http://lojic.com/blog/?p=545</guid>
		<description><![CDATA[One of the two parallel tracks in my 2009 Programming Language Plan begins with the Standard ML programming language, so it&#8217;s time to get started.
Standard ML Resources
Compilers

 Standard ML of New Jersey is highly recommended and comes with a REPL.
 Moscow ML
 MLKit
 PolyML
 MLton is a Standard ML compiler with excellent performance. However, as [...]]]></description>
			<content:encoded><![CDATA[<p>One of the two parallel tracks in my <a href="http://lojic.com/blog/2009/04/27/2009-programming-language-plan/">2009 Programming Language Plan</a> begins with the Standard ML programming language, so it&#8217;s time to get started.</p>
<h2>Standard ML Resources</h2>
<h3>Compilers</h3>
<ul>
<li> <a href="http://www.smlnj.org/">Standard ML of New Jersey</a> is highly recommended and comes with a <a href="http://en.wikipedia.org/wiki/REPL">REPL</a>.</li>
<li> <a href="http://www.itu.dk/people/sestoft/mosml.html">Moscow ML</a></li>
<li> <a href="http://www.itu.dk/research/mlkit/index.php/Main_Page">MLKit</a></li>
<li> <a href="http://www.polyml.org/">PolyML</a></li>
<li> <a href="http://mlton.org/">MLton</a> is a Standard ML compiler with excellent performance. However, as far as I know, it doesn&#8217;t have a <a href="http://en.wikipedia.org/wiki/REPL">REPL</a>, which makes it less than ideal for learning.</li>
</ul>
<h3>Books</h3>
<p>Since I was unfamiliar with the Standard ML programming language, I was surprised to find there are a number of good books about the language. Following are just some of them:</p>
<p><a href="http://www.amazon.com/gp/product/0137903871?ie=UTF8&amp;tag=lojiccom-20&amp;linkCode=as2&amp;camp=1789&amp;creative=390957&amp;creativeASIN=0137903871">Elements of ML Programming</a><img style="border:none !important; margin:0px !important;" src="http://www.assoc-amazon.com/e/ir?t=lojiccom-20&amp;l=as2&amp;o=1&amp;a=0137903871" border="0" alt="" width="1" height="1" /></p>
<p><a href="http://www.amazon.com/gp/product/052156543X?ie=UTF8&amp;tag=lojiccom-20&amp;linkCode=as2&amp;camp=1789&amp;creative=390957&amp;creativeASIN=052156543X">ML for the Working Programmer</a><img style="border:none !important; margin:0px !important;" src="http://www.assoc-amazon.com/e/ir?t=lojiccom-20&amp;l=as2&amp;o=1&amp;a=052156543X" border="0" alt="" width="1" height="1" /></p>
<p><a href="http://www.amazon.com/gp/product/0521663504?ie=UTF8&amp;tag=lojiccom-20&amp;linkCode=as2&amp;camp=1789&amp;creative=390957&amp;creativeASIN=0521663504">Purely Functional Data Structures</a><img style="border:none !important; margin:0px !important;" src="http://www.assoc-amazon.com/e/ir?t=lojiccom-20&amp;l=as2&amp;o=1&amp;a=0521663504" border="0" alt="" width="1" height="1" /></p>
<p><a href="http://www.amazon.com/gp/product/0262631814?ie=UTF8&amp;tag=lojiccom-20&amp;linkCode=as2&amp;camp=1789&amp;creative=390957&amp;creativeASIN=0262631814">The Definition of Standard ML</a><img style="border:none !important; margin:0px !important;" src="http://www.assoc-amazon.com/e/ir?t=lojiccom-20&amp;l=as2&amp;o=1&amp;a=0262631814" border="0" alt="" width="1" height="1" /></p>
<p><a href="http://www.amazon.com/gp/product/0521794781?ie=UTF8&amp;tag=lojiccom-20&amp;linkCode=as2&amp;camp=1789&amp;creative=390957&amp;creativeASIN=0521794781">The Standard ML Basis Library</a><img style="border:none !important; margin:0px !important;" src="http://www.assoc-amazon.com/e/ir?t=lojiccom-20&amp;l=as2&amp;o=1&amp;a=0521794781" border="0" alt="" width="1" height="1" /></p>
<p><a href="http://www.amazon.com/gp/product/0201398206?ie=UTF8&amp;tag=lojiccom-20&amp;linkCode=as2&amp;camp=1789&amp;creative=390957&amp;creativeASIN=0201398206">Introduction to Programming using SML</a><img style="border:none !important; margin:0px !important;" src="http://www.assoc-amazon.com/e/ir?t=lojiccom-20&amp;l=as2&amp;o=1&amp;a=0201398206" border="0" alt="" width="1" height="1" /></p>
<p><a href="http://www.amazon.com/gp/product/0521714729?ie=UTF8&amp;tag=lojiccom-20&amp;linkCode=as2&amp;camp=1789&amp;creative=390957&amp;creativeASIN=0521714729">Concurrent Programming in ML</a></p>
<h3>Other Educational Materials</h3>
<p>
<a href="http://www.cs.cmu.edu/~rwh/smlbook/online.pdf">Programming in Standard ML</a> &#8211; excellent online book by <a href="http://www.cs.cmu.edu/~rwh/">Robert Harper</a> of Carnegie Mellon University. Since I don&#8217;t know if Standard ML will simply be a stepping stone to Haskell (which in turn may not be a primary language for me) or a language I invest a lot of time in, I&#8217;m going to restrict myself from my normal method of purchasing a book or two when learning a new language. Instead, I&#8217;ll be going through Harper&#8217;s online book initially.
</p>
<p>
<a href="http://www.itu.dk/people/tofte/publ/tips.pdf">Tips for Computer Scientists on Standard ML (Revised)</a>
</p>
<h2>Hello World</h2>
<p>There are a number of great compilers for Standard ML (listed above), but I only need one to get started, so I chose Standard ML of New Jersey despite the funky name. It&#8217;s a popular version, and it has a REPL, so it&#8217;s good enough for me for now.</p>
<p>I develop software on Mac OSX and deploy on Ubuntu Linux. On my Ubuntu server, installing SML/NJ was as simple as:</p>
<pre class="code">
sudo apt-get install smlnj
</pre>
<p>On Mac OSX, there are a couple of options listed on <a href="http://www.smlnj.org/dist/working/110.69/index.html">this page</a>. I could use a pre-built system or the generic Unix install, so naturally I chose the generic Unix install which installed easily according to the simple directions.</p>
<pre class="code"># Download config.tgz
tar xzf config.tgz
config/install.sh

# Wait for install to complete

~/software/smlnj$ rlwrap bin/sml
Standard ML of New Jersey v110.69 [built: Sat May  2 12:04:08 2009]
- print "hello, world\n";
hello, world
val it = () : unit
-</pre>
<p>Great, looks like everything is working fine. Note, I use the <em>rlwrap</em> utility to provide a nicer REPL experience, but it&#8217;s not required.</p>
<p>I&#8217;ll continue with a series of posts with notes from working through &#8220;Programming in Standard ML&#8221;.</p>
]]></content:encoded>
			<wfw:commentRss>http://lojic.com/blog/2009/05/02/getting-started-with-standard-ml/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>jQuery in Action</title>
		<link>http://lojic.com/blog/2009/01/20/jquery-in-action/</link>
		<comments>http://lojic.com/blog/2009/01/20/jquery-in-action/#comments</comments>
		<pubDate>Tue, 20 Jan 2009 21:49:58 +0000</pubDate>
		<dc:creator>Brian Adkins</dc:creator>
				<category><![CDATA[books]]></category>
		<category><![CDATA[programming]]></category>
		<category><![CDATA[book]]></category>
		<category><![CDATA[javascript]]></category>

		<guid isPermaLink="false">http://lojic.com/blog/?p=163</guid>
		<description><![CDATA[ I just finished &#8220;jQuery in Action&#8221; by Bear Bibeault and Yehuda Katz. It&#8217;s an excellent book on the jQuery JavaScript library. The book comes with a number of example labs to try out various jQuery/JavaScript techniques w/o having to write a lot of code.
There&#8217;s plenty of jQuery information online, but &#8220;jQuery in Action&#8221; easily [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.amazon.com/gp/product/1933988355?ie=UTF8&#038;tag=lojiccom-20&#038;linkCode=as2&#038;camp=1789&#038;creative=9325&#038;creativeASIN=1933988355"><img src="http://lojic.com/blog/wp-content/uploads/2009/01/jquery_in_action.jpg" alt="jQuery in Action cover image" title="jquery_in_action" width="128" height="160" style="margin-bottom: 3px; margin-right: 11px; border-bottom: 1px solid #444; border-right: 1px solid #444;" align="left" /></a> I just finished <a href="http://www.amazon.com/gp/product/1933988355?ie=UTF8&#038;tag=lojiccom-20&#038;linkCode=as2&#038;camp=1789&#038;creative=9325&#038;creativeASIN=1933988355">&#8220;jQuery in Action&#8221;</a> by Bear Bibeault and Yehuda Katz. It&#8217;s an excellent book on the <a href="http://jquery.com/">jQuery</a> JavaScript library. The book comes with a number of example labs to try out various jQuery/JavaScript techniques w/o having to write a lot of code.</p>
<p>There&#8217;s plenty of jQuery information online, but &#8220;jQuery in Action&#8221; easily paid for itself in saved time in getting me up to speed quickly. It&#8217;s nicely organized, well written and the editing/quality control seems to be higher than many tech books (although that bar isn&#8217;t very high!). It also has a brief, 20 page, tutorial on JavaScript that you may find helpful.</p>
<p>jQuery may not satisfy the zealots on comp.lang.javascript, but I&#8217;ve found it to be an excellent JavaScript library thus far, and I think this book was the fastest way to becoming proficient.</p>
]]></content:encoded>
			<wfw:commentRss>http://lojic.com/blog/2009/01/20/jquery-in-action/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Peter Seibel: Coders at Work</title>
		<link>http://lojic.com/blog/2007/08/27/peter-seibel-coders-at-work/</link>
		<comments>http://lojic.com/blog/2007/08/27/peter-seibel-coders-at-work/#comments</comments>
		<pubDate>Mon, 27 Aug 2007 17:39:20 +0000</pubDate>
		<dc:creator>Brian Adkins</dc:creator>
				<category><![CDATA[books]]></category>
		<category><![CDATA[programming]]></category>
		<category><![CDATA[book]]></category>
		<category><![CDATA[lisp]]></category>

		<guid isPermaLink="false">http://lojic.com/blog/2007/08/27/peter-seibel-coders-at-work/</guid>
		<description><![CDATA[Peter Seibel is working on a book, &#8220;Coders at Work&#8221;, that will &#8220;contain interviews with around sixteen of the most interesting computer programmers alive today&#8221;. He has a page that lists 284 programmers, with links to more info on each one, that I think is worth perusing:
284 Coders
Peter is the author of Practical Common Lisp [...]]]></description>
			<content:encoded><![CDATA[<p>Peter Seibel is working on a book, &#8220;Coders at Work&#8221;, that will &#8220;contain interviews with around sixteen of the most interesting computer programmers alive today&#8221;. He has a page that lists 284 programmers, with links to more info on each one, that I think is worth perusing:</p>
<p><a href="http://www.codersatwork.com/names.html?order=popularity">284 Coders</a></p>
<p>Peter is the author of <a href="http://www.amazon.com/gp/product/1590592395?ie=UTF8&#038;tag=lojiccom-20&#038;linkCode=as2&#038;camp=1789&#038;creative=9325&#038;creativeASIN=1590592395">Practical Common Lisp</a> which I <strong>highly</strong> recommend.</p>
<p>Also see his <a href="http://lojic.com/blog/2007/08/04/peter-seibels-practical-common-lisp-google-talk/">Google Talk on Common Lisp</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://lojic.com/blog/2007/08/27/peter-seibel-coders-at-work/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Peter Seibel’s “Practical Common Lisp” Google Talk</title>
		<link>http://lojic.com/blog/2007/08/04/peter-seibels-practical-common-lisp-google-talk/</link>
		<comments>http://lojic.com/blog/2007/08/04/peter-seibels-practical-common-lisp-google-talk/#comments</comments>
		<pubDate>Sat, 04 Aug 2007 06:15:05 +0000</pubDate>
		<dc:creator>Brian Adkins</dc:creator>
				<category><![CDATA[books]]></category>
		<category><![CDATA[people]]></category>
		<category><![CDATA[programming]]></category>
		<category><![CDATA[video]]></category>
		<category><![CDATA[book]]></category>
		<category><![CDATA[lisp]]></category>

		<guid isPermaLink="false">http://lojic.com/blog/?p=101</guid>
		<description><![CDATA[Here&#8217;s Peter Seibel&#8217;s &#8220;Practical Common Lisp&#8221; talk at Google (about an hour):

Google Video Link
]]></description>
			<content:encoded><![CDATA[<p>Here&#8217;s Peter Seibel&#8217;s &#8220;Practical Common Lisp&#8221; talk at Google (about an hour):</p>
<p><object width="425" height="350"><param name="movie" value="http://www.youtube.com/v/Ge8PxdluVw8"></param><param name="wmode" value="transparent"></param><embed src="http://www.youtube.com/v/Ge8PxdluVw8" type="application/x-shockwave-flash" wmode="transparent" width="425" height="350"></embed></object></p>
<p><a href="http://video.google.com/videoplay?docid=448441135356213813">Google Video Link</a></p>
]]></content:encoded>
			<wfw:commentRss>http://lojic.com/blog/2007/08/04/peter-seibels-practical-common-lisp-google-talk/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
	</channel>
</rss>

