<?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>IPorsut</title>
	<atom:link href="http://iporsut.wordpress.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://iporsut.wordpress.com</link>
	<description></description>
	<lastBuildDate>Mon, 30 Jan 2012 14:42:24 +0000</lastBuildDate>
	<language>th</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.com/</generator>
<cloud domain='iporsut.wordpress.com' port='80' path='/?rsscloud=notify' registerProcedure='' protocol='http-post' />
<image>
		<url>http://s2.wp.com/i/buttonw-com.png</url>
		<title>IPorsut</title>
		<link>http://iporsut.wordpress.com</link>
	</image>
	<atom:link rel="search" type="application/opensearchdescription+xml" href="http://iporsut.wordpress.com/osd.xml" title="IPorsut" />
	<atom:link rel='hub' href='http://iporsut.wordpress.com/?pushpress=hub'/>
		<item>
		<title>ย้ายไป http://www.iporsut.com ครับ</title>
		<link>http://iporsut.wordpress.com/2010/04/02/%e0%b8%a2%e0%b9%89%e0%b8%b2%e0%b8%a2%e0%b9%84%e0%b8%9b-httpwww-iporsut-com-%e0%b8%84%e0%b8%a3%e0%b8%b1%e0%b8%9a/</link>
		<comments>http://iporsut.wordpress.com/2010/04/02/%e0%b8%a2%e0%b9%89%e0%b8%b2%e0%b8%a2%e0%b9%84%e0%b8%9b-httpwww-iporsut-com-%e0%b8%84%e0%b8%a3%e0%b8%b1%e0%b8%9a/#comments</comments>
		<pubDate>Sat, 03 Apr 2010 05:28:05 +0000</pubDate>
		<dc:creator>iporsut</dc:creator>
				<category><![CDATA[MyLife]]></category>
		<category><![CDATA[ย้าย blog]]></category>
		<category><![CDATA[iporsut]]></category>

		<guid isPermaLink="false">http://iporsut.wordpress.com/?p=209</guid>
		<description><![CDATA[เคยย้ายไปรอบนึงแล้วครับ แต่ตอนนั้นใช้ mangoblog ซึ่งมีปัญหานิดหน่อย เลยย้ายกลับมาเขียนที่นี่ต่อ ตอนนี้เปลี่ยนใจ ไปลง drupal แทนแล้วครับ ตามไปอ่านกันต่อได้ที่ http://www.iporsut.com ส่วน blog ที่นี่ก็ยังเปิดให้เข้ามาดูกันได้ปกติครับ<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=iporsut.wordpress.com&amp;blog=1017193&amp;post=209&amp;subd=iporsut&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>เคยย้ายไปรอบนึงแล้วครับ แต่ตอนนั้นใช้ mangoblog ซึ่งมีปัญหานิดหน่อย เลยย้ายกลับมาเขียนที่นี่ต่อ</p>
<p>ตอนนี้เปลี่ยนใจ ไปลง drupal แทนแล้วครับ ตามไปอ่านกันต่อได้ที่ <a href="http://www.iporsut.com">http://www.iporsut.com</a> ส่วน blog ที่นี่ก็ยังเปิดให้เข้ามาดูกันได้ปกติครับ</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/iporsut.wordpress.com/209/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/iporsut.wordpress.com/209/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/iporsut.wordpress.com/209/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/iporsut.wordpress.com/209/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/iporsut.wordpress.com/209/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/iporsut.wordpress.com/209/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/iporsut.wordpress.com/209/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/iporsut.wordpress.com/209/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/iporsut.wordpress.com/209/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/iporsut.wordpress.com/209/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/iporsut.wordpress.com/209/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/iporsut.wordpress.com/209/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/iporsut.wordpress.com/209/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/iporsut.wordpress.com/209/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=iporsut.wordpress.com&amp;blog=1017193&amp;post=209&amp;subd=iporsut&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://iporsut.wordpress.com/2010/04/02/%e0%b8%a2%e0%b9%89%e0%b8%b2%e0%b8%a2%e0%b9%84%e0%b8%9b-httpwww-iporsut-com-%e0%b8%84%e0%b8%a3%e0%b8%b1%e0%b8%9a/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/57b0a5b2ed09861a60163f0703c60b4b?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">iporsut</media:title>
		</media:content>
	</item>
		<item>
		<title>วิธีแก้ให้โชว์ menu ตอนบูต ของ Grub 2</title>
		<link>http://iporsut.wordpress.com/2010/04/01/%e0%b8%a7%e0%b8%b4%e0%b8%98%e0%b8%b5%e0%b9%81%e0%b8%81%e0%b9%89%e0%b9%83%e0%b8%ab%e0%b9%89%e0%b9%82%e0%b8%8a%e0%b8%a7%e0%b9%8c-menu-%e0%b8%95%e0%b8%ad%e0%b8%99%e0%b8%9a%e0%b8%b9%e0%b8%95-%e0%b8%82/</link>
		<comments>http://iporsut.wordpress.com/2010/04/01/%e0%b8%a7%e0%b8%b4%e0%b8%98%e0%b8%b5%e0%b9%81%e0%b8%81%e0%b9%89%e0%b9%83%e0%b8%ab%e0%b9%89%e0%b9%82%e0%b8%8a%e0%b8%a7%e0%b9%8c-menu-%e0%b8%95%e0%b8%ad%e0%b8%99%e0%b8%9a%e0%b8%b9%e0%b8%95-%e0%b8%82/#comments</comments>
		<pubDate>Fri, 02 Apr 2010 05:10:34 +0000</pubDate>
		<dc:creator>iporsut</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[grub2]]></category>
		<category><![CDATA[kernel panic]]></category>
		<category><![CDATA[lucid lynx]]></category>
		<category><![CDATA[ubuntu]]></category>

		<guid isPermaLink="false">http://iporsut.wordpress.com/?p=203</guid>
		<description><![CDATA[ตอนนี้ผมใช้ Ubuntu 10.04 Lucid Lynx beta อยู่ ก็จะมีอัพเดทถี่ๆแทบทุกวัน เมื่อคืนอัพเดทมีอัพ kernel จาก 2.6.32-18-generic ไปเป็น 2.6.32-19-generic แต่ก็ยังไม่ได้ restart เครื่อง จะนอนแล้วก็ปิดเครื่องไป พอเมื่อเช้าเปิดมาเจอ ทำอะไรไม่ได้เลย เพราะ default ของ grub2 ที่มากับ lucid มันไม่แสดง menu ให้เลือก มันเลือกบูตจาก kernel ตัวล่าสุดไปเลย ทำอะไรไม่ได้ก็เลยต้องหาแผ่น Live CD มาบูต ดีมีแผ่น Suriyan ที่ได้จากงาน miniDebCamp ติดกระเป๋า ก็เลยบูตเข้าไปที่ Suriyan ตัว Suriyan เองพัฒนาต่อมาจาก 9.10 Karmic ก็เลยใช้ grub2 เหมือนกัน ตอนแรกก็ค้นหาวิธีในเนต หายังไงก็ไม่เจอ ก็เลยคิดว่าจะลองบูตเข้าไปที่ kernel [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=iporsut.wordpress.com&amp;blog=1017193&amp;post=203&amp;subd=iporsut&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>ตอนนี้ผมใช้ Ubuntu 10.04 Lucid Lynx beta อยู่ ก็จะมีอัพเดทถี่ๆแทบทุกวัน เมื่อคืนอัพเดทมีอัพ kernel จาก 2.6.32-18-generic ไปเป็น 2.6.32-19-generic แต่ก็ยังไม่ได้ restart เครื่อง จะนอนแล้วก็ปิดเครื่องไป พอเมื่อเช้าเปิดมาเจอ</p>
<p><pre class="brush: plain;">
[ 58.593255 ] Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(0,0)</pre><br />
ทำอะไรไม่ได้เลย เพราะ default ของ grub2 ที่มากับ lucid มันไม่แสดง menu ให้เลือก มันเลือกบูตจาก kernel ตัวล่าสุดไปเลย</p>
<p>ทำอะไรไม่ได้ก็เลยต้องหาแผ่น Live CD มาบูต ดีมีแผ่น Suriyan ที่ได้จากงาน miniDebCamp ติดกระเป๋า ก็เลยบูตเข้าไปที่ Suriyan ตัว Suriyan เองพัฒนาต่อมาจาก 9.10 Karmic ก็เลยใช้ grub2 เหมือนกัน</p>
<p>ตอนแรกก็ค้นหาวิธีในเนต หายังไงก็ไม่เจอ ก็เลยคิดว่าจะลองบูตเข้าไปที่ kernel ตัวเก่า ก็เลยหาวิธีแก้ให้มันแสดง menu ตอนบูต ปัญหาคือมันเป็น grub2 ซึ่งเปลี่ยนวิธี config ไปจากเดิมอย่างสิ้นเชิง ของเก่าเคยแก้แค่ไฟล์ menu.lst แค่ไฟล์เดียว ตอนนี้เข้าไปก็ไม่เจอไฟล์ menu.lst แล้ว</p>
<p>ค้นไปค้นมาไปเจอ document ของมันที่ <a href="https://wiki.ubuntu.com/Grub2">https://wiki.ubuntu.com/Grub2</a> บอกวิธีแก้ให้มันแสดงเมนูโดยไปแก้ที่ไฟล์ /etc/default/grub ให้คอมเม้นที่<br />
<pre class="brush: plain;">#GRUB_HIDDEN_TIMEOUT=3</pre><br />
และ ปรับค่าจำนวนเวลาที่จะแสดง menu ที่<br />
<pre class="brush: plain;">GRUB_TIMEOUT=XXX</pre><br />
เสร็จแล้วให้เรียกคำสั่ง update-grub</p>
<p>แต่ว่า เราใช้ Suriyan บูต ทำให้มันไม่มอง drive ที่เรา mount เป็น root (/) ต้องเปลี่ยนด้วยคำสั่ง chroot ก่อน</p>
<p>ด้านล่างของ document จะมีบอกวิธี chroot แต่ว่าก่อนจะ chroot จะทำการ &#8211;bind พวก /dev /proc และ /sys ก่อน ด้วยคำสั่ง ประมาณนี้<br />
<pre class="brush: plain;">$ sudo mount --bind /dev /mnt/dev
$ sudo mount --bind /proc /mnt/proc
$ sudo mount --bind /sys /mnt/sys</pre><br />
ข้างหลังตรง /mnt/dev ก็คือชี้ไปที่ path ของรูทที่เรา mount ไว้ก่อน<br />
หลังจากนั้น ใช้คำสั่ง<br />
<pre class="brush: plain;">$ sudo chroot /mnt</pre><br />
เพื่อเปลี่ยน root directory โดย /mnt คือ path ของ drive อื่นที่ mount ไว้ หลังจากนั้นก็แก้ตามที่บอกข้างบน แล้ว reboot คราวนี้ก็จะเห็น menu แล้ว</p>
<p>สุดท้ายวิธีแก้ kernel panic ก็คือ บูตไป kernel เก่า แล้วไป apt-get remove ตัว kernel ใหม่ เสร็จแล้ว apt-get install ใหม่อีกที หายเลยทีนี้</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/iporsut.wordpress.com/203/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/iporsut.wordpress.com/203/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/iporsut.wordpress.com/203/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/iporsut.wordpress.com/203/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/iporsut.wordpress.com/203/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/iporsut.wordpress.com/203/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/iporsut.wordpress.com/203/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/iporsut.wordpress.com/203/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/iporsut.wordpress.com/203/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/iporsut.wordpress.com/203/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/iporsut.wordpress.com/203/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/iporsut.wordpress.com/203/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/iporsut.wordpress.com/203/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/iporsut.wordpress.com/203/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=iporsut.wordpress.com&amp;blog=1017193&amp;post=203&amp;subd=iporsut&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://iporsut.wordpress.com/2010/04/01/%e0%b8%a7%e0%b8%b4%e0%b8%98%e0%b8%b5%e0%b9%81%e0%b8%81%e0%b9%89%e0%b9%83%e0%b8%ab%e0%b9%89%e0%b9%82%e0%b8%8a%e0%b8%a7%e0%b9%8c-menu-%e0%b8%95%e0%b8%ad%e0%b8%99%e0%b8%9a%e0%b8%b9%e0%b8%95-%e0%b8%82/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/57b0a5b2ed09861a60163f0703c60b4b?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">iporsut</media:title>
		</media:content>
	</item>
		<item>
		<title>สัปดาห์หนังสือ 2553</title>
		<link>http://iporsut.wordpress.com/2010/03/31/%e0%b8%aa%e0%b8%b1%e0%b8%9b%e0%b8%94%e0%b8%b2%e0%b8%ab%e0%b9%8c%e0%b8%ab%e0%b8%99%e0%b8%b1%e0%b8%87%e0%b8%aa%e0%b8%b7%e0%b8%ad-2553/</link>
		<comments>http://iporsut.wordpress.com/2010/03/31/%e0%b8%aa%e0%b8%b1%e0%b8%9b%e0%b8%94%e0%b8%b2%e0%b8%ab%e0%b9%8c%e0%b8%ab%e0%b8%99%e0%b8%b1%e0%b8%87%e0%b8%aa%e0%b8%b7%e0%b8%ad-2553/#comments</comments>
		<pubDate>Wed, 31 Mar 2010 15:51:24 +0000</pubDate>
		<dc:creator>iporsut</dc:creator>
				<category><![CDATA[book]]></category>
		<category><![CDATA[สัปดาห์หนังสือ]]></category>

		<guid isPermaLink="false">http://iporsut.wordpress.com/?p=200</guid>
		<description><![CDATA[วันนี้ไปเดินงาน Motor Show มาช่วงบ่าย ไปกับไอ้ @Bank_Xavi แน่นอนไปดูเฉยๆ ทั้งไปดูรถและพริตตี้นั่นแหละ ดูเฉยๆดูไปก็ยังไม่ได้ซื้อ เดินถ่ายรูปพริตตี้กันไปจน 6 โมงเย็นก็ไปงานสัปดาห์หนังสือกันต่อ รถจากไบเทคไปอ่อนนุชโคตรติดเลย ระหว่างทางคุยกับแท็กซี่เรื่องการเมือง ดีพี่เขาไม่ทั้งแดงทั้งเหลือง เลยวิเคราะห์กันมันเลย กว่าจะถึงศูนย์ฯสิริกิติ์ ก็ปาไปทุ่มครึ่ง รีบเดินไป siam inter ก่อนเลย เพื่อ ปาฏิหาริย์แห่งผู้กล้า เล่ม 2 เลยซื้อ ปฐมบทผู้กล้า มาด้วยเพราะยังไม่ได้อ่าน เสร็จแล้วเดินๆไป บูตของ วินทร์ เลียววาริณ ได้มาอีก 2 เล่ม มังกรเซน กับ ปีกแดง แล้วก็ให้พี่เขาเซ็นให้เหมือนเดิม มาทีไร ได้ทุกที ย้ายไปต่อโซน C บูต ฟ้าเดียวกัน ช่วยกันซื้อคนละเล่มกับ @Bank_Xavi เอามาผลัดกันอ่าน เล่ม ข้อมูลใหม่ กับ พรมแดน แผนที่ ประวัติศาสตร์ [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=iporsut.wordpress.com&amp;blog=1017193&amp;post=200&amp;subd=iporsut&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>วันนี้ไปเดินงาน Motor Show มาช่วงบ่าย ไปกับไอ้ @Bank_Xavi แน่นอนไปดูเฉยๆ ทั้งไปดูรถและพริตตี้นั่นแหละ ดูเฉยๆดูไปก็ยังไม่ได้ซื้อ เดินถ่ายรูปพริตตี้กันไปจน 6 โมงเย็นก็ไปงานสัปดาห์หนังสือกันต่อ รถจากไบเทคไปอ่อนนุชโคตรติดเลย ระหว่างทางคุยกับแท็กซี่เรื่องการเมือง ดีพี่เขาไม่ทั้งแดงทั้งเหลือง เลยวิเคราะห์กันมันเลย กว่าจะถึงศูนย์ฯสิริกิติ์ ก็ปาไปทุ่มครึ่ง</p>
<p>รีบเดินไป siam inter ก่อนเลย เพื่อ ปาฏิหาริย์แห่งผู้กล้า เล่ม 2 เลยซื้อ ปฐมบทผู้กล้า มาด้วยเพราะยังไม่ได้อ่าน เสร็จแล้วเดินๆไป บูตของ วินทร์ เลียววาริณ ได้มาอีก 2 เล่ม มังกรเซน กับ ปีกแดง แล้วก็ให้พี่เขาเซ็นให้เหมือนเดิม มาทีไร ได้ทุกที ย้ายไปต่อโซน C บูต ฟ้าเดียวกัน ช่วยกันซื้อคนละเล่มกับ @Bank_Xavi เอามาผลัดกันอ่าน เล่ม ข้อมูลใหม่ กับ พรมแดน แผนที่ ประวัติศาสตร์ ชาตินิยม แค่นี้หมดไปอย่างรวดเร็ว พันกว่าบาทแล้ว กลับบ้าน จัด ปาฏิหาริย์แห่งผู้กล้าก่อนเลย กำลังมัน</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/iporsut.wordpress.com/200/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/iporsut.wordpress.com/200/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/iporsut.wordpress.com/200/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/iporsut.wordpress.com/200/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/iporsut.wordpress.com/200/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/iporsut.wordpress.com/200/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/iporsut.wordpress.com/200/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/iporsut.wordpress.com/200/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/iporsut.wordpress.com/200/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/iporsut.wordpress.com/200/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/iporsut.wordpress.com/200/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/iporsut.wordpress.com/200/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/iporsut.wordpress.com/200/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/iporsut.wordpress.com/200/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=iporsut.wordpress.com&amp;blog=1017193&amp;post=200&amp;subd=iporsut&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://iporsut.wordpress.com/2010/03/31/%e0%b8%aa%e0%b8%b1%e0%b8%9b%e0%b8%94%e0%b8%b2%e0%b8%ab%e0%b9%8c%e0%b8%ab%e0%b8%99%e0%b8%b1%e0%b8%87%e0%b8%aa%e0%b8%b7%e0%b8%ad-2553/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/57b0a5b2ed09861a60163f0703c60b4b?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">iporsut</media:title>
		</media:content>
	</item>
		<item>
		<title>ใช้ Jasper Reports ออกรายงานเป็นไฟล์ PDF ผ่าน Railo Coldfusion</title>
		<link>http://iporsut.wordpress.com/2010/03/25/%e0%b9%83%e0%b8%8a%e0%b9%89-jasper-reports-%e0%b8%ad%e0%b8%ad%e0%b8%81%e0%b8%a3%e0%b8%b2%e0%b8%a2%e0%b8%87%e0%b8%b2%e0%b8%99%e0%b9%80%e0%b8%9b%e0%b9%87%e0%b8%99%e0%b9%84%e0%b8%9f%e0%b8%a5%e0%b9%8c/</link>
		<comments>http://iporsut.wordpress.com/2010/03/25/%e0%b9%83%e0%b8%8a%e0%b9%89-jasper-reports-%e0%b8%ad%e0%b8%ad%e0%b8%81%e0%b8%a3%e0%b8%b2%e0%b8%a2%e0%b8%87%e0%b8%b2%e0%b8%99%e0%b9%80%e0%b8%9b%e0%b9%87%e0%b8%99%e0%b9%84%e0%b8%9f%e0%b8%a5%e0%b9%8c/#comments</comments>
		<pubDate>Thu, 25 Mar 2010 16:56:45 +0000</pubDate>
		<dc:creator>iporsut</dc:creator>
				<category><![CDATA[coldfusion]]></category>
		<category><![CDATA[java]]></category>
		<category><![CDATA[jasper reports]]></category>
		<category><![CDATA[railo]]></category>

		<guid isPermaLink="false">http://iporsut.wordpress.com/?p=195</guid>
		<description><![CDATA[ความก่อนเขียน java ตรงๆคราวนี้จะใช้ coldfusion ให้เรียกคลาส java เพื่อเรียกใช้ jasper reports ให้สร้างรายงานเป็น pdf โดยใช้ Railo ซึ่งเป็น opensource coldfusion application server และ ใช้ javaloader ซึ่งเป็น library ที่ช่วยใช้ coldfusion โหลดคลาสจาวา โดยไม่ต้องเอา jar ไฟล์ไปไว้ใน coldfusion classpath และไม่จำเป็นต้อง restart server ใหม่ ตัวอย่างโค้ด<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=iporsut.wordpress.com&amp;blog=1017193&amp;post=195&amp;subd=iporsut&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>ความก่อนเขียน java ตรงๆคราวนี้จะใช้ coldfusion ให้เรียกคลาส java เพื่อเรียกใช้ jasper reports ให้สร้างรายงานเป็น pdf</p>
<p>โดยใช้ <a href="http://www.getrailo.org/">Railo</a> ซึ่งเป็น opensource coldfusion application server และ ใช้ <a href="http://www.compoundtheory.com/?action=javaloader.index">javaloader</a> ซึ่งเป็น library ที่ช่วยใช้ coldfusion โหลดคลาสจาวา โดยไม่ต้องเอา jar ไฟล์ไปไว้ใน coldfusion classpath และไม่จำเป็นต้อง restart server ใหม่</p>
<p>ตัวอย่างโค้ด</p>
<p><pre class="brush: jscript;">
                &lt;cfscript&gt;
                        // กำหนด path ของ jar ไฟล์ที่จะโหลด
                        paths = arrayNew(1);
                        paths[1] = expandPath(&quot;/jassperreports-lib/commons-digester-1.7.jar&quot;);
                        paths[2] = expandPath(&quot;/jassperreports-lib/jasperreports-3.7.1.jar&quot;);
                        paths[3] = expandPath(&quot;/jassperreports-lib/groovy-all.jar&quot;);
      
                        //create the loader
                        loader = createObject(&quot;component&quot;, &quot;javaloader.JavaLoader&quot;).init(paths);


                        // getConnection ที่จำเป็นต้องใช้ผ่าน coldfusion datasource
                        datasourceService = createObject(&quot;java&quot;,&quot;coldfusion.server.ServiceFactory&quot;).getDataSourceService();
                        connection = datasourceService.getDatasource(&quot;qualinet&quot;).getConnection();

                        // hashMap ไว้เก็บค่า Property ต่างๆ ที่จะส่งไป fill ให้ jasper report
                        hashMap = createObject(&quot;java&quot;,&quot;java.util.HashMap&quot;).init();
                        hashMap.put(&quot;QUOTATION_ID&quot;,toString(url.qid));
                        // โหลดคลาส แต่ยังไม่ได้ทำการสร้าง instance
                        JasperFillManager = loader.create(&quot;net.sf.jasperreports.engine.JasperFillManager&quot;);
                        JasperExportManager = loader.create(&quot;net.sf.jasperreports.engine.JasperExportManager&quot;);
                        // โหลดแล้วสร้าง instance เลย
                        jrEmptyDataSource = loader.create(&quot;net.sf.jasperreports.engine.JREmptyDataSource&quot;).init();
                        
                        // ทำการ fill report โดยส่ง path ของ file jasper , hashMap และ connection 
                        jasperPrint = JasperFillManager.fillReport(&quot;/home/iporsut/railo/webapps/ROOT/example-0.6/quotation.jasper&quot;,hashMap,connection);

                        // export report ไปเป็นไฟล์ pdf
                        JasperExportManager.exportReportToPdfFile(jasperPrint,&quot;/home/iporsut/railo/webapps/ROOT/quotation.pdf&quot;);
                &lt;/cfscript&gt;
</pre></p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/iporsut.wordpress.com/195/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/iporsut.wordpress.com/195/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/iporsut.wordpress.com/195/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/iporsut.wordpress.com/195/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/iporsut.wordpress.com/195/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/iporsut.wordpress.com/195/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/iporsut.wordpress.com/195/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/iporsut.wordpress.com/195/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/iporsut.wordpress.com/195/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/iporsut.wordpress.com/195/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/iporsut.wordpress.com/195/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/iporsut.wordpress.com/195/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/iporsut.wordpress.com/195/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/iporsut.wordpress.com/195/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=iporsut.wordpress.com&amp;blog=1017193&amp;post=195&amp;subd=iporsut&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://iporsut.wordpress.com/2010/03/25/%e0%b9%83%e0%b8%8a%e0%b9%89-jasper-reports-%e0%b8%ad%e0%b8%ad%e0%b8%81%e0%b8%a3%e0%b8%b2%e0%b8%a2%e0%b8%87%e0%b8%b2%e0%b8%99%e0%b9%80%e0%b8%9b%e0%b9%87%e0%b8%99%e0%b9%84%e0%b8%9f%e0%b8%a5%e0%b9%8c/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/57b0a5b2ed09861a60163f0703c60b4b?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">iporsut</media:title>
		</media:content>
	</item>
		<item>
		<title>ใช้ Jasper Reports ออกรายงานเป็นไฟล์ PDF</title>
		<link>http://iporsut.wordpress.com/2010/01/20/%e0%b9%83%e0%b8%8a%e0%b9%89-jasper-reports-%e0%b8%ad%e0%b8%ad%e0%b8%81%e0%b8%a3%e0%b8%b2%e0%b8%a2%e0%b8%87%e0%b8%b2%e0%b8%99%e0%b9%80%e0%b8%9b%e0%b9%87%e0%b8%99%e0%b9%84%e0%b8%9f%e0%b8%a5%e0%b9%8c-pdf/</link>
		<comments>http://iporsut.wordpress.com/2010/01/20/%e0%b9%83%e0%b8%8a%e0%b9%89-jasper-reports-%e0%b8%ad%e0%b8%ad%e0%b8%81%e0%b8%a3%e0%b8%b2%e0%b8%a2%e0%b8%87%e0%b8%b2%e0%b8%99%e0%b9%80%e0%b8%9b%e0%b9%87%e0%b8%99%e0%b9%84%e0%b8%9f%e0%b8%a5%e0%b9%8c-pdf/#comments</comments>
		<pubDate>Wed, 20 Jan 2010 17:01:16 +0000</pubDate>
		<dc:creator>iporsut</dc:creator>
				<category><![CDATA[java]]></category>
		<category><![CDATA[ireport]]></category>
		<category><![CDATA[jasper reports]]></category>

		<guid isPermaLink="false">http://iporsut.wordpress.com/?p=192</guid>
		<description><![CDATA[มีงานต้องออก report โดยใช้ Jasper Reports เป็นตัวช่วย เวลาออกแบบก็ไปใช้ iReport แล้วเราจะได้ไฟล์ .jrxml เสร็จแล้ว จะเอามาเขียนโค้ดเพื่อโหลดไฟล์ และส่ง connection ของ database ให้ jasper Reports ทำการ export รายงานออกมาเป็น pdf โค้ด java ที่ลอง<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=iporsut.wordpress.com&amp;blog=1017193&amp;post=192&amp;subd=iporsut&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>มีงานต้องออก report โดยใช้ Jasper Reports เป็นตัวช่วย เวลาออกแบบก็ไปใช้ iReport แล้วเราจะได้ไฟล์ .jrxml เสร็จแล้ว จะเอามาเขียนโค้ดเพื่อโหลดไฟล์ และส่ง connection ของ database ให้ jasper Reports ทำการ export รายงานออกมาเป็น pdf<br />
โค้ด java ที่ลอง<br />
<pre class="brush: java;">
import net.sf.jasperreports.engine.*;
import net.sf.jasperreports.engine.design.JasperDesign;
import net.sf.jasperreports.engine.xml.JRXmlLoader;
import net.sf.jasperreports.engine.export.*;
import java.util.*;
import java.sql.*;
public class TestJasper {
	public static void main(String[] args) {
		JasperReport jasperReport;
		JasperPrint jasperPrint;
		JasperDesign jasperDesign;
		Connection conn = null;
		
		Map parameters = new HashMap();
		try {
			Class.forName(&quot;com.mysql.jdbc.Driver&quot;);
			conn = DriverManager.getConnection(&quot;jdbc:mysql://localhost/database?useUnicode=true&amp;characterEncoding=UTF-8&amp;user=root&amp;password=password&quot;);
                        // โหลดไฟล์ jrxml
			jasperDesign = JRXmlLoader.load(&quot;/home/iporsut/Sourcecode/report3.jrxml&quot;);
                        // คอมไพล์ report จะได้ไฟล์ report3.jasper
			jasperReport = JasperCompileManager.compileReport(jasperDesign);
                        // ส่ง parameters กับ connection ของ database ให้ jasper ทำการ fill report
			jasperPrint = JasperFillManager.fillReport(jasperReport,parameters,conn);
                        // export report ออกไปเป็นไฟล์ demo.pdf
			JasperExportManager.exportReportToPdfFile(jasperPrint,&quot;/home/iporsut/demo.pdf&quot;);
		}catch (JRException e) {
			e.printStackTrace();
		}
		catch (ClassNotFoundException ex) {System.err.println(ex.getMessage());}
	    	catch (SQLException ex) {System.err.println(ex.getMessage());}
	    	
		finally
		{
			if (conn != null)
			{
				try {conn.close();} 
				catch (Exception ignored) {}
			}
		}
	}
}
</pre></p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/iporsut.wordpress.com/192/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/iporsut.wordpress.com/192/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/iporsut.wordpress.com/192/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/iporsut.wordpress.com/192/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/iporsut.wordpress.com/192/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/iporsut.wordpress.com/192/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/iporsut.wordpress.com/192/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/iporsut.wordpress.com/192/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/iporsut.wordpress.com/192/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/iporsut.wordpress.com/192/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/iporsut.wordpress.com/192/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/iporsut.wordpress.com/192/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/iporsut.wordpress.com/192/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/iporsut.wordpress.com/192/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=iporsut.wordpress.com&amp;blog=1017193&amp;post=192&amp;subd=iporsut&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://iporsut.wordpress.com/2010/01/20/%e0%b9%83%e0%b8%8a%e0%b9%89-jasper-reports-%e0%b8%ad%e0%b8%ad%e0%b8%81%e0%b8%a3%e0%b8%b2%e0%b8%a2%e0%b8%87%e0%b8%b2%e0%b8%99%e0%b9%80%e0%b8%9b%e0%b9%87%e0%b8%99%e0%b9%84%e0%b8%9f%e0%b8%a5%e0%b9%8c-pdf/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/57b0a5b2ed09861a60163f0703c60b4b?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">iporsut</media:title>
		</media:content>
	</item>
		<item>
		<title>แก้โจทย์ L-99:Ninety-Nine Lisp Problems P13</title>
		<link>http://iporsut.wordpress.com/2010/01/06/%e0%b9%81%e0%b8%81%e0%b9%89%e0%b9%82%e0%b8%88%e0%b8%97%e0%b8%a2%e0%b9%8c-l-99ninety-nine-lisp-problems-p13/</link>
		<comments>http://iporsut.wordpress.com/2010/01/06/%e0%b9%81%e0%b8%81%e0%b9%89%e0%b9%82%e0%b8%88%e0%b8%97%e0%b8%a2%e0%b9%8c-l-99ninety-nine-lisp-problems-p13/#comments</comments>
		<pubDate>Wed, 06 Jan 2010 17:32:35 +0000</pubDate>
		<dc:creator>iporsut</dc:creator>
				<category><![CDATA[functional programming]]></category>
		<category><![CDATA[erlang]]></category>
		<category><![CDATA[haskell]]></category>
		<category><![CDATA[lisp]]></category>

		<guid isPermaLink="false">http://iporsut.wordpress.com/?p=187</guid>
		<description><![CDATA[P13 (**) Run-length encoding of a list (direct solution). Example: * (encode-direct &#8216;(a a a a b c c a a d e e e e)) ((4 A) B (2 C) (2 A) D (4 E)) ข้อนี้ให้ encode ลิสต์โดยแปลงให้กลายเป็น ลิสต์ของลิสต์ที่มีค่าแรกคือความยาวของตัวที่ซ้ำอีกตัวก็คือค่าที่ซ้ำ แต่ถ้าอันไหนยาวแค่ 1 ก็ไม่ต้องให้มีตัวเลขบอกจำนวน เช่น B กับ D ข้อนี้ สำหรับ Haskell วันนี้ จะสร้าง data type ขึ้นมาใหม่ [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=iporsut.wordpress.com&amp;blog=1017193&amp;post=187&amp;subd=iporsut&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<dl>
<dt><strong><a href="http://www.ic.unicamp.br/~meidanis/courses/mc336/2006s2/funcional/L-99_Ninety-Nine_Lisp_Problems.html">P13</a> (**) Run-length encoding of a list (direct solution).</strong></dt>
<dd> Example:<br />
* (encode-direct &#8216;(a a a a b c c a a d e e e e))<br />
((4 A) B (2 C) (2 A) D (4 E))</dd>
</dl>
<p>ข้อนี้ให้ encode ลิสต์โดยแปลงให้กลายเป็น ลิสต์ของลิสต์ที่มีค่าแรกคือความยาวของตัวที่ซ้ำอีกตัวก็คือค่าที่ซ้ำ แต่ถ้าอันไหนยาวแค่ 1 ก็ไม่ต้องให้มีตัวเลขบอกจำนวน เช่น B กับ D</p>
<p>ข้อนี้ สำหรับ Haskell วันนี้ จะสร้าง data type ขึ้นมาใหม่ เพื่อเก็บข้อมูลที่เข้ารหัส เพราะ ว่า Haskell มันเก็บ ลิสต์ที่มี type ต่างกันปนกันไม่ได้</p>
<p>Haskell<br />
<pre class="brush: plain;">
import Data.List
data LengthEncode a =  L a |  LS Int a
                        deriving (Show)

encode::(Eq a)=&gt;[a]-&gt; [LengthEncode a]
encode [] = []
encode xs = map subEncode (zip (map length (group xs)) (map head (group xs)))
                where
                        subEncode x = if ((fst x) == 1)
                                        then
                                                (L (snd x))
                                        else
                                                (LS (fst x) (snd x))
</pre></p>
<p>สร้าง data type ชื่อ LengthEncode a โดยมี constructor 2 แบบคือ L a สำหรับกรณีความยาวแค่ 1 และ LS Int a สำหรับกรณีที่เหลือ</p>
<p>ตรงส่วนของฟังก์ชัน encode เราจะใช้ map เข้ามาช่วย ตรง (zip (map length (group xs)) (map head (group xs))) เราจับ xs ที่เข้ามาไป เรียกใช้ group เพื่อให้ได้ list แบบโจทย์ข้อ P09 แล้ว มาใช้ map length จะได้ลิสต์ของจำนวนซ้ำ ส่วน map head จะเอาแค่ตัวแรกตัวเดียว เสร็จแล้วจับมา zip รวมกันจะได้ list ของ tuple ที่ตัวหน้าเป็นจำนวน ตัวหลังเป็นอิลิเมนต์ที่ถูกเข้ารหัส แล้วสุดท้ายใช้ map subEncode โดยที่ subEncode จะแปลงจาก tuple ไปเป็นข้อมูลแบบ LengthEncode a จะใช้ L หรือ LS ก็แยกตามความยาว</p>
<p>Erlang<br />
<pre class="brush: plain;">
-module(pack).
-export([encode/1]).
pack ([]) -&gt;    [];
pack (L)  -&gt;    [H|_] = L,
                A = lists:takewhile(fun(X)-&gt; X == H end,L),
                B = lists:dropwhile(fun(X)-&gt; X == H end,L),
                [A | pack(B)].
encode([]) -&gt; [];
encode(L)  -&gt; ELEMCOUNT = lists:map(fun(X)-&gt;[H|_] = X,H end,pack(L)),
              COUNT = lists:map(fun erlang:length/1 ,pack(L)),
              ZIP = lists:zip(COUNT,ELEMCOUNT),
              lists:map(fun(X)-&gt;{C,E} = X, (if C == 1 -&gt; E; C &gt; 1 -&gt; [C,E] end) end,ZIP).
</pre></p>
<p>Lisp<br />
<pre class="brush: plain;">
(defun my-filter (L A R)
        (if L
                (if (equal (first L) A)
                        (my-filter (rest L) A (cons (first L) R))
                        (cons R L)
                )
                (cons R L)
        )
)
(defun pack (L)
        (if L
                (cons (first (my-filter L (first L) nil)) (pack (rest (my-filter L (first L) nil))))
                nil
        )
)

(defun encode (L) (map 'list (lambda (X) (if (eql (length X) 1) (first X) (cons (length X) (cons (first X) nil)))) (pack L)))
</pre></p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/iporsut.wordpress.com/187/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/iporsut.wordpress.com/187/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/iporsut.wordpress.com/187/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/iporsut.wordpress.com/187/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/iporsut.wordpress.com/187/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/iporsut.wordpress.com/187/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/iporsut.wordpress.com/187/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/iporsut.wordpress.com/187/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/iporsut.wordpress.com/187/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/iporsut.wordpress.com/187/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/iporsut.wordpress.com/187/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/iporsut.wordpress.com/187/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/iporsut.wordpress.com/187/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/iporsut.wordpress.com/187/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=iporsut.wordpress.com&amp;blog=1017193&amp;post=187&amp;subd=iporsut&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://iporsut.wordpress.com/2010/01/06/%e0%b9%81%e0%b8%81%e0%b9%89%e0%b9%82%e0%b8%88%e0%b8%97%e0%b8%a2%e0%b9%8c-l-99ninety-nine-lisp-problems-p13/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/57b0a5b2ed09861a60163f0703c60b4b?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">iporsut</media:title>
		</media:content>
	</item>
		<item>
		<title>My Shell History</title>
		<link>http://iporsut.wordpress.com/2010/01/06/my-shell-history-2/</link>
		<comments>http://iporsut.wordpress.com/2010/01/06/my-shell-history-2/#comments</comments>
		<pubDate>Wed, 06 Jan 2010 14:28:33 +0000</pubDate>
		<dc:creator>iporsut</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[shell history]]></category>

		<guid isPermaLink="false">http://iporsut.wordpress.com/?p=185</guid>
		<description><![CDATA[เห็น blog ของ @llun ทำ ลองดูบ้าง history &#124; awk &#8216;{CMD[$2]++;count++;}END { for (a in CMD)print CMD[a] &#8221; &#8221; CMD[a]/count*100 &#8220;% &#8221; a;}&#8217; &#124; grep -v &#8220;./&#8221; &#124; column -c3 -s &#8221; &#8221; -t &#124; sort -nr &#124; nl &#124;  head -n10 1    126  25.2%  vim 2    92   18.4%  cd 3    86   17.2%  ls 4    68   [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=iporsut.wordpress.com&amp;blog=1017193&amp;post=185&amp;subd=iporsut&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>เห็น <a href="http://llun.in.th/archives/1321">blog</a> ของ <a href="http://www.twitter.com/llun">@llun</a> ทำ ลองดูบ้าง</p>
<p>history | awk &#8216;{CMD[$2]++;count++;}END { for (a in CMD)print CMD[a] &#8221; &#8221; CMD[a]/count*100 &#8220;% &#8221; a;}&#8217; | grep -v &#8220;./&#8221; | column -c3 -s &#8221; &#8221; -t | sort -nr | nl |  head -n10<br />
1    126  25.2%  vim<br />
2    92   18.4%  cd<br />
3    86   17.2%  ls<br />
4    68   13.6%  erl<br />
5    26   5.2%   clisp<br />
6    25   5%     ghci<br />
7    24   4.8%   sudo<br />
8    12   2.4%   exit<br />
9    6    1.2%   kill<br />
10    5    1%     ssh</p>
<p>เออ ช่วงนี้มี erl, clisp, ghci เยอะแฮะ ตอนแรกเดาว่า cd เยอะสุด แต่ก็ยังแพ้ VIM เหอะๆ ไม่มี emacs เลย</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/iporsut.wordpress.com/185/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/iporsut.wordpress.com/185/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/iporsut.wordpress.com/185/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/iporsut.wordpress.com/185/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/iporsut.wordpress.com/185/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/iporsut.wordpress.com/185/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/iporsut.wordpress.com/185/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/iporsut.wordpress.com/185/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/iporsut.wordpress.com/185/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/iporsut.wordpress.com/185/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/iporsut.wordpress.com/185/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/iporsut.wordpress.com/185/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/iporsut.wordpress.com/185/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/iporsut.wordpress.com/185/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=iporsut.wordpress.com&amp;blog=1017193&amp;post=185&amp;subd=iporsut&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://iporsut.wordpress.com/2010/01/06/my-shell-history-2/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/57b0a5b2ed09861a60163f0703c60b4b?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">iporsut</media:title>
		</media:content>
	</item>
		<item>
		<title>แก้โจทย์ L-99:Ninety-Nine Lisp Problems P09</title>
		<link>http://iporsut.wordpress.com/2010/01/05/%e0%b9%81%e0%b8%81%e0%b9%89%e0%b9%82%e0%b8%88%e0%b8%97%e0%b8%a2%e0%b9%8c-l-99ninety-nine-lisp-problems-p09/</link>
		<comments>http://iporsut.wordpress.com/2010/01/05/%e0%b9%81%e0%b8%81%e0%b9%89%e0%b9%82%e0%b8%88%e0%b8%97%e0%b8%a2%e0%b9%8c-l-99ninety-nine-lisp-problems-p09/#comments</comments>
		<pubDate>Tue, 05 Jan 2010 15:41:11 +0000</pubDate>
		<dc:creator>iporsut</dc:creator>
				<category><![CDATA[functional programming]]></category>
		<category><![CDATA[erlang]]></category>
		<category><![CDATA[haskell]]></category>
		<category><![CDATA[lisp]]></category>

		<guid isPermaLink="false">http://iporsut.wordpress.com/?p=181</guid>
		<description><![CDATA[วันนี้ทำข้อ P09 P09 (**) Pack consecutive duplicates of list elements into sublists. If a list contains repeated elements they should be placed in separate sublists. Example: * (pack &#8216;(a a a a b c c a a d e e e e)) ((A A A A) (B) (C C) (A A) (D) (E E E [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=iporsut.wordpress.com&amp;blog=1017193&amp;post=181&amp;subd=iporsut&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>วันนี้ทำข้อ<a href="http://www.ic.unicamp.br/~meidanis/courses/mc336/2006s2/funcional/L-99_Ninety-Nine_Lisp_Problems.html"> P09</a></p>
<dl>
<dt><strong>P09 (**) Pack consecutive duplicates of list elements into sublists.</strong> </dt>
<dd>If a list contains repeated elements they should be placed     in separate sublists.</p>
<p>Example:<br />
* (pack &#8216;(a a a a b c c a a d e e e e))<br />
((A A A A) (B) (C C) (A A) (D) (E E E E))</dd>
</dl>
<p>ข้อนี้ จะจับอลิเม้นที่เหมือนกัน ที่อยู่ติดๆกันให้เป็นลิสต์ใหม่โดยผลลัพธ์สุดท้ายก็คือลิสต์ของลิสต์ที่จับตัวที่ซ้ำๆมาอยู่ด้วยกันแล้วนั่นเอง</p>
<p>ข้อนี้ถ้าใช้ takeWhile กับ dropWhile มาช่วยดึงเอาelementที่ซ้ำๆที่ติดกันออกมาจะง่ายหน่อย แต่จะยังไม่ใช้จะเขียนฟังก์ชันขึ้นมาช่วยเองอีกตัวใช้แยกลิสต์ที่เป็น input ออกเป็น 2 ส่วนคือ ส่วนที่ซ้ำ กับ element ที่เหลือที่หักส่วนที่ซ้ำออก ส่วนฟังก์ชัน pack หลักๆนั้นก็แค่ทำการเรียกฟังก์ชันที่ใช้แยกelementที่ซ้ำก็จะได้listของelementแล้วก็เอาลิสต์นั้นมาต่อๆกับผลลัพธ์ที่ได้จากการเรียกซ้ำส่วนที่เหลือของลิสต์</p>
<p>Haskell<br />
<pre class="brush: plain;">
pack::(Eq a)=&gt;[a]-&gt;[[a]]
pack [] = []
pack xs = (fst (myFilter xs (head xs) [])):(pack (snd (myFilter xs (head xs) [])))
                where
                        myFilter [] a rs = (rs,[])
                        myFilter (x:xs) a rs | x == a = myFilter xs a (a:rs)
                                                        | otherwise =  (rs,(x:xs))
</pre><br />
ส่วน Haskell จะต่างกับ Erlang และ Lisp นิดหน่อยคือ myFilter จะส่งผลลัพธ์ที่ได้มาเป็น tuple</p>
<p>Erlang<br />
<pre class="brush: plain;">
-module(pack).
-export([pack/1]).
myfilter ([],_,R) -&gt; [R];
myfilter ([L|T],A,R) when L == A -&gt; myfilter (T,A,[L|R]);
myfilter (L,_,R) -&gt; [R|L].
pack ([]) -&gt;    [];
pack (L)  -&gt;    [H|_] = L,
                                   [A|B] = myfilter(L,H,[]),
                                   [A | pack(B)].
</pre></p>
<p>Lisp<br />
<pre class="brush: plain;">
(defun my-filter (L A R)
        (if L
                (if (equal (first L) A)
                        (my-filter (rest L) A (cons (first L) R))
                        (cons R L)
                )
                (cons R L)
        )
)
(defun pack (L)
        (if L
                (cons (first (my-filter L (first L) nil)) (pack (rest (my-filter L (first L) nil))))
                nil
        )
)
</pre></p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/iporsut.wordpress.com/181/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/iporsut.wordpress.com/181/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/iporsut.wordpress.com/181/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/iporsut.wordpress.com/181/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/iporsut.wordpress.com/181/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/iporsut.wordpress.com/181/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/iporsut.wordpress.com/181/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/iporsut.wordpress.com/181/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/iporsut.wordpress.com/181/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/iporsut.wordpress.com/181/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/iporsut.wordpress.com/181/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/iporsut.wordpress.com/181/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/iporsut.wordpress.com/181/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/iporsut.wordpress.com/181/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=iporsut.wordpress.com&amp;blog=1017193&amp;post=181&amp;subd=iporsut&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://iporsut.wordpress.com/2010/01/05/%e0%b9%81%e0%b8%81%e0%b9%89%e0%b9%82%e0%b8%88%e0%b8%97%e0%b8%a2%e0%b9%8c-l-99ninety-nine-lisp-problems-p09/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/57b0a5b2ed09861a60163f0703c60b4b?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">iporsut</media:title>
		</media:content>
	</item>
		<item>
		<title>เอิร์ลแลง(Erlang) concurrent programming ตอน 2 ส่ง Message</title>
		<link>http://iporsut.wordpress.com/2010/01/04/%e0%b9%80%e0%b8%ad%e0%b8%b4%e0%b8%a3%e0%b9%8c%e0%b8%a5%e0%b9%81%e0%b8%a5%e0%b8%87erlang-concurrent-programming-%e0%b8%95%e0%b8%ad%e0%b8%99-2-%e0%b8%aa%e0%b9%88%e0%b8%87-message/</link>
		<comments>http://iporsut.wordpress.com/2010/01/04/%e0%b9%80%e0%b8%ad%e0%b8%b4%e0%b8%a3%e0%b9%8c%e0%b8%a5%e0%b9%81%e0%b8%a5%e0%b8%87erlang-concurrent-programming-%e0%b8%95%e0%b8%ad%e0%b8%99-2-%e0%b8%aa%e0%b9%88%e0%b8%87-message/#comments</comments>
		<pubDate>Mon, 04 Jan 2010 17:55:35 +0000</pubDate>
		<dc:creator>iporsut</dc:creator>
				<category><![CDATA[erlang]]></category>
		<category><![CDATA[concurrent programming]]></category>
		<category><![CDATA[message]]></category>

		<guid isPermaLink="false">http://iporsut.wordpress.com/?p=177</guid>
		<description><![CDATA[คราวที่แล้วเราสร้าง process ด้วย spawn ไปแล้ว คราวนี้เราจะมาดูวิธี ส่ง และ รับ message ระหว่าง processes การเขียนฟังก์ชันให้รอรับ message นั้นใช้คีย์เวิร์ด receive &#8230;. end. ตัวอย่างเช่น ตรงระหว่าง receive กับ end นั้นจะเป็น pattern ของ message และ action เมื่อเจอ message pattern นั้นส่งมาหา process ที่กำลังทำงานฟังก์ชันนี้อยู่ ทีนี้ วิธีการส่ง message ไปหา process จะใช้รูปแบบนี้ โดยที่ทางซ้ายคือ PID (process id) ส่วนทางขวา จะเป็น message ที่ต้องการส่ง receive end. จะรอรับ message แต่ครั้งเดียว เมื่อมี [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=iporsut.wordpress.com&amp;blog=1017193&amp;post=177&amp;subd=iporsut&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>คราวที่แล้วเราสร้าง process ด้วย spawn ไปแล้ว คราวนี้เราจะมาดูวิธี ส่ง และ รับ message ระหว่าง processes</p>
<p>การเขียนฟังก์ชันให้รอรับ message นั้นใช้คีย์เวิร์ด receive &#8230;. end. ตัวอย่างเช่น</p>
<p><pre class="brush: plain;">
-module(chat).
-export([alert/0]).

alert () -&gt;
        receive
                Any -&gt;
                        io:format(&quot;Alert : ~w~n&quot;,[Any])
        end.
</pre></p>
<p>ตรงระหว่าง receive กับ end นั้นจะเป็น pattern ของ message และ action เมื่อเจอ message pattern นั้นส่งมาหา process ที่กำลังทำงานฟังก์ชันนี้อยู่</p>
<p>ทีนี้ วิธีการส่ง message ไปหา process จะใช้รูปแบบนี้</p>
<p><pre class="brush: plain;">
Eshell V5.7.2  (abort with ^G)
1&gt; c(chat).
{ok,chat}
2&gt; PID = spawn(chat,alert,[]).
&lt;0.42.0&gt;
3&gt; PID ! hello.
Alert Hello: hello
hello
4&gt; halt().
</pre></p>
<p>โดยที่ทางซ้ายคือ PID (process id) ส่วนทางขวา จะเป็น message ที่ต้องการส่ง</p>
<p>receive end. จะรอรับ message แต่ครั้งเดียว เมื่อมี message ส่งมาแล้วก็จะหยุด แต่ถ้าเราต้องการให้ process รอรับ message อีกรอบ ก็ให้เรียกซ้ำฟังก์ชันอีกครั้งแบบนี้</p>
<p><pre class="brush: plain;">
-module(chat).
-export([alert/0]).

alert () -&gt;
        receive
                Any -&gt;
                        io:format(&quot;Alert : ~w~n&quot;,[Any])
        end,
        alert().
</pre></p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/iporsut.wordpress.com/177/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/iporsut.wordpress.com/177/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/iporsut.wordpress.com/177/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/iporsut.wordpress.com/177/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/iporsut.wordpress.com/177/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/iporsut.wordpress.com/177/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/iporsut.wordpress.com/177/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/iporsut.wordpress.com/177/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/iporsut.wordpress.com/177/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/iporsut.wordpress.com/177/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/iporsut.wordpress.com/177/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/iporsut.wordpress.com/177/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/iporsut.wordpress.com/177/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/iporsut.wordpress.com/177/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=iporsut.wordpress.com&amp;blog=1017193&amp;post=177&amp;subd=iporsut&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://iporsut.wordpress.com/2010/01/04/%e0%b9%80%e0%b8%ad%e0%b8%b4%e0%b8%a3%e0%b9%8c%e0%b8%a5%e0%b9%81%e0%b8%a5%e0%b8%87erlang-concurrent-programming-%e0%b8%95%e0%b8%ad%e0%b8%99-2-%e0%b8%aa%e0%b9%88%e0%b8%87-message/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/57b0a5b2ed09861a60163f0703c60b4b?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">iporsut</media:title>
		</media:content>
	</item>
		<item>
		<title>แก้โจทย์ L-99:Ninety-Nine Lisp Problems P08</title>
		<link>http://iporsut.wordpress.com/2010/01/04/%e0%b9%81%e0%b8%81%e0%b9%89%e0%b9%82%e0%b8%88%e0%b8%97%e0%b8%a2%e0%b9%8c-l-99ninety-nine-lisp-problems-p08/</link>
		<comments>http://iporsut.wordpress.com/2010/01/04/%e0%b9%81%e0%b8%81%e0%b9%89%e0%b9%82%e0%b8%88%e0%b8%97%e0%b8%a2%e0%b9%8c-l-99ninety-nine-lisp-problems-p08/#comments</comments>
		<pubDate>Mon, 04 Jan 2010 17:08:21 +0000</pubDate>
		<dc:creator>iporsut</dc:creator>
				<category><![CDATA[functional programming]]></category>
		<category><![CDATA[erlang]]></category>
		<category><![CDATA[haskell]]></category>
		<category><![CDATA[lisp]]></category>

		<guid isPermaLink="false">http://iporsut.wordpress.com/?p=172</guid>
		<description><![CDATA[วันนี้ทำข้อ P08 P08 (**) Eliminate consecutive duplicates of list elements. If a list contains repeated elements they should be replaced with a single copy of the element. The order of the elements should not be changed. Example: * (compress &#8216;(a a a a b c c a a d e e e e)) (A B [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=iporsut.wordpress.com&amp;blog=1017193&amp;post=172&amp;subd=iporsut&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>วันนี้ทำข้อ <a href="http://www.ic.unicamp.br/~meidanis/courses/mc336/2006s2/funcional/L-99_Ninety-Nine_Lisp_Problems.html">P08</a></p>
<dl>
<dt><strong>P08 (**) Eliminate consecutive duplicates of list elements.</strong> </dt>
<dd>If a list contains repeated elements they should be replaced     with a single copy of the element. The order of the elements should     not be changed.</p>
<p>Example:<br />
* (compress &#8216;(a a a a b c c a a d e e e e))<br />
(A B C A D E)</dd>
</dl>
<p>จากโจทย์คือเขียนฟังก์ชัน compress เปลี่ยนลิสต์ที่มีสมาชิกที่ซ้ำๆกัน และอยู่ติดกัน ให้เหลือเพียงแค่ตัวเดียว ข้อนี้ไม่ยาก เงื่อนไขมี 3 แบบ คือ เมื่อ ลิสต์มีสมาชิกแค่ตัวเดียวให้ ส่งค่านั้นเป็นผลลัพธ์ ถ้าเป็นกรณีอื่นให้เอาสมาชิกตัวที่หนึ่งกับสอง มาเทียบกัน ถ้าเท่ากัน เราจะเรียกซ้ำฟังก์ชัน แต่ตัดสมาชิกตัวแรกสุดออก ถ้าสมาชิกตัวที่หนึ่งกับสองไม่เท่ากัน เราจะเอาสมาชิกตัวที่หนึ่งมาต่อกับผลลัพธ์ที่ได้จากการเรียกซ้ำโดยตัดสมาชิกตัวแรกออก</p>
<p>Haskell<br />
<pre class="brush: plain;">
compress::(Eq a) =&gt;[a]-&gt;[a]

compress [x] = [x]
compress (x:y:xs)
                | x == y = compress (y:xs)
                | otherwise = x:compress(y:xs)
</pre></p>
<p>Erlang<br />
<pre class="brush: plain;">
-module(compress).
-export([compress/1]).

compress ([L|[]]) -&gt; [L|[]];
compress ([L|[M|T]]) when (L == M) -&gt; compress ([M|T]);
compress ([L|T]) -&gt; [L | compress (T)].
</pre></p>
<p>Lisp<br />
<pre class="brush: plain;">
(defun compress (L)
        (if (eql (second L) nil)
                L
                (if (eql (first L) (second L))
                        (compress (rest L))
                        (cons (first L) (compress (rest L)))
                )
        )
)
</pre></p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/iporsut.wordpress.com/172/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/iporsut.wordpress.com/172/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/iporsut.wordpress.com/172/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/iporsut.wordpress.com/172/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/iporsut.wordpress.com/172/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/iporsut.wordpress.com/172/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/iporsut.wordpress.com/172/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/iporsut.wordpress.com/172/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/iporsut.wordpress.com/172/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/iporsut.wordpress.com/172/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/iporsut.wordpress.com/172/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/iporsut.wordpress.com/172/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/iporsut.wordpress.com/172/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/iporsut.wordpress.com/172/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=iporsut.wordpress.com&amp;blog=1017193&amp;post=172&amp;subd=iporsut&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://iporsut.wordpress.com/2010/01/04/%e0%b9%81%e0%b8%81%e0%b9%89%e0%b9%82%e0%b8%88%e0%b8%97%e0%b8%a2%e0%b9%8c-l-99ninety-nine-lisp-problems-p08/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/57b0a5b2ed09861a60163f0703c60b4b?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">iporsut</media:title>
		</media:content>
	</item>
	</channel>
</rss>
