<?xml version="1.0" encoding="UTF-8"?><!-- generator="wordpress/2.2.1" -->
<rss version="2.0" 
	xmlns:content="http://purl.org/rss/1.0/modules/content/">
<channel>
	<title>Comments on: Your Next Programming Language</title>
	<link>http://www.alittlemadness.com/2006/05/09/your-next-programming-language/</link>
	<description>A man needs a little madness, or else he never dares cut the rope and be free. -Nikos Kazantzakis</description>
	<pubDate>Thu, 20 Nov 2008 22:31:50 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.2.1</generator>

	<item>
		<title>By: Technical Related Notes &#187; Blog Archive &#187; links for 2006-07-07</title>
		<link>http://www.alittlemadness.com/2006/05/09/your-next-programming-language/#comment-348</link>
		<author>Technical Related Notes &#187; Blog Archive &#187; links for 2006-07-07</author>
		<pubDate>Mon, 10 Jul 2006 02:58:12 +0000</pubDate>
		<guid>http://www.alittlemadness.com/2006/05/09/your-next-programming-language/#comment-348</guid>
		<description>[...] a little madness » Blog Archive » Your Next Programming Language (tags: shell unix) [...]</description>
		<content:encoded><![CDATA[<p>[&#8230;] a little madness » Blog Archive » Your Next Programming Language (tags: shell unix) [&#8230;]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Peter Butler</title>
		<link>http://www.alittlemadness.com/2006/05/09/your-next-programming-language/#comment-95</link>
		<author>Peter Butler</author>
		<pubDate>Fri, 19 May 2006 05:30:13 +0000</pubDate>
		<guid>http://www.alittlemadness.com/2006/05/09/your-next-programming-language/#comment-95</guid>
		<description>find . -name ‘*.txt’ &#124; while read filename; do cat $filename; done

Argh!  Do this:

find -name '*.txt' &#124; xargs -n1 cat

xargs is fan-fuckin-tastic.</description>
		<content:encoded><![CDATA[<p>find . -name ‘*.txt’ | while read filename; do cat $filename; done</p>
<p>Argh!  Do this:</p>
<p>find -name &#8216;*.txt&#8217; | xargs -n1 cat</p>
<p>xargs is fan-fuckin-tastic.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: NZ</title>
		<link>http://www.alittlemadness.com/2006/05/09/your-next-programming-language/#comment-91</link>
		<author>NZ</author>
		<pubDate>Wed, 17 May 2006 18:53:00 +0000</pubDate>
		<guid>http://www.alittlemadness.com/2006/05/09/your-next-programming-language/#comment-91</guid>
		<description>JScript on Microsoft
Why reinvent or reinstall the wheel ?


You can use JScript fo do a lot of stuff.
And you do not have to download or intall anything.
It works as a batch or shell script (you can even use VB if you prefer buy JS is more powerful)

Drag files over (to do something on them)

var text=' Selected files:';
var strArgument;
for (var i=0;i</description>
		<content:encoded><![CDATA[<p>JScript on Microsoft<br />
Why reinvent or reinstall the wheel ?</p>
<p>You can use JScript fo do a lot of stuff.<br />
And you do not have to download or intall anything.<br />
It works as a batch or shell script (you can even use VB if you prefer buy JS is more powerful)</p>
<p>Drag files over (to do something on them)</p>
<p>var text=&#8217; Selected files:&#8217;;<br />
var strArgument;<br />
for (var i=0;i</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: timvw</title>
		<link>http://www.alittlemadness.com/2006/05/09/your-next-programming-language/#comment-82</link>
		<author>timvw</author>
		<pubDate>Wed, 10 May 2006 11:42:55 +0000</pubDate>
		<guid>http://www.alittlemadness.com/2006/05/09/your-next-programming-language/#comment-82</guid>
		<description>In my experience there is no good definition for 'scripting language' and thus i find it ridiculous to talk about them...

I do agree with the content of the article as in that there will always be room for automation and that some tools are better suited than others for that taks...</description>
		<content:encoded><![CDATA[<p>In my experience there is no good definition for &#8217;scripting language&#8217; and thus i find it ridiculous to talk about them&#8230;</p>
<p>I do agree with the content of the article as in that there will always be room for automation and that some tools are better suited than others for that taks&#8230;</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: David Taylor</title>
		<link>http://www.alittlemadness.com/2006/05/09/your-next-programming-language/#comment-81</link>
		<author>David Taylor</author>
		<pubDate>Wed, 10 May 2006 11:27:16 +0000</pubDate>
		<guid>http://www.alittlemadness.com/2006/05/09/your-next-programming-language/#comment-81</guid>
		<description>Sankey,

If you do have a few minutes, google and download Microsoft PowerShell RC1 (for Windows XP or Server 2003).  It is an interesting bridge of functional programming, with a shell and scripting language based on stringly typed objects instead of text.  I have heard about this (under the old Monad name) since MS started the project 4-5 years ago, but ignored it even at the PDC in LA last year which I attented (did not go to any Monad sessions).  But finally over since Release Candidate 1 came out last week I have been learning it and am completely impressed.

&#62;&#62;find . -name ‘*.txt’ -exec cat ‘{}’ \;

# Same as find example in Jason’s post above
&#62; Get-ChildItem *.txt -rec &#124; Get-Content

# Note that PowerShell provides Alias for the above so you can just type:
&#62; dir *.txt -r &#124; type

This is pasically saying, call the directory command (get-childitem) and pipe the output into the type command (get-content).

Coolect thing is you can do things like:
dir *.txt -r &#124; sort Length &#124; select -first 5 Name, Length

Now cool is that!

BTW I work for Melbourne IT, so it is nice finding another Aussie blog - but I am working from our London office at the moment.</description>
		<content:encoded><![CDATA[<p>Sankey,</p>
<p>If you do have a few minutes, google and download Microsoft PowerShell RC1 (for Windows XP or Server 2003).  It is an interesting bridge of functional programming, with a shell and scripting language based on stringly typed objects instead of text.  I have heard about this (under the old Monad name) since MS started the project 4-5 years ago, but ignored it even at the PDC in LA last year which I attented (did not go to any Monad sessions).  But finally over since Release Candidate 1 came out last week I have been learning it and am completely impressed.</p>
<p>&gt;&gt;find . -name ‘*.txt’ -exec cat ‘{}’ \;</p>
<p># Same as find example in Jason’s post above<br />
&gt; Get-ChildItem *.txt -rec | Get-Content</p>
<p># Note that PowerShell provides Alias for the above so you can just type:<br />
&gt; dir *.txt -r | type</p>
<p>This is pasically saying, call the directory command (get-childitem) and pipe the output into the type command (get-content).</p>
<p>Coolect thing is you can do things like:<br />
dir *.txt -r | sort Length | select -first 5 Name, Length</p>
<p>Now cool is that!</p>
<p>BTW I work for Melbourne IT, so it is nice finding another Aussie blog - but I am working from our London office at the moment.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Paul Brown</title>
		<link>http://www.alittlemadness.com/2006/05/09/your-next-programming-language/#comment-80</link>
		<author>Paul Brown</author>
		<pubDate>Tue, 09 May 2006 17:01:48 +0000</pubDate>
		<guid>http://www.alittlemadness.com/2006/05/09/your-next-programming-language/#comment-80</guid>
		<description>Lambda the Ultimate (a.k.a., LtU) (http://lambda-the-ultimate.org/) is a great place (if not THE place) to go next language shopping.</description>
		<content:encoded><![CDATA[<p>Lambda the Ultimate (a.k.a., LtU) (http://lambda-the-ultimate.org/) is a great place (if not THE place) to go next language shopping.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Keith Hill</title>
		<link>http://www.alittlemadness.com/2006/05/09/your-next-programming-language/#comment-79</link>
		<author>Keith Hill</author>
		<pubDate>Tue, 09 May 2006 16:10:10 +0000</pubDate>
		<guid>http://www.alittlemadness.com/2006/05/09/your-next-programming-language/#comment-79</guid>
		<description>If you are on Windows you really should take a look at the new Windows PowerShell (aka Monad).  PowerShell is an interactive shell that provides a C# like scripting language allowing access to the .NET Framework.  You can write script at the prompt so it makes for a nice little .NET based REPL.  You can download it from:

http://www.microsoft.com/PowerShell

And do stuff like this:

# Same as find example in Jason's post above
&#62; Get-ChildItem *.txt -rec &#124; Get-Content

# Get BIOS info
&#62; Get-WmiObject Win32_Bios

SMBIOSBIOSVersion : A07
Manufacturer      : Dell Computer Corporation
Name              : Phoenix ROM BIOS PLUS Version 1.10 A07
SerialNumber      : 60X4W22
Version           : DELL   - 8

# Get stats on my music collection
&#62;  get-childitem "$home\Music" -rec &#124; 
&#62;&#62;  where {!$_.PsIsContainer -and $_.extension -match "mp3&#124;wma"} &#124;
&#62;&#62;  measure-object -property length -sum -min -max -ave
&#62;&#62;

Count    : 1018
Average  : 2991362.43123772
Sum      : 3045206955
Max      : 102750941
Min      : 89025
Property : Length

# Find all files/dirs that have been written to in the past week
# Note: gci is an alias for Get-ChildItem and ? is an alias for where
&#62; $lastWeek = (get-date).AddDays(-7)
&#62; gci "$home\Documents" -rec &#124; ? {$_.LastWriteTime -gt $lastWeek}

# Tweak the registry
&#62; cd 'HKCU:\Software\Microsoft\Command Processor'
&#62; set-itemproperty . -name CompletionChar -value 9</description>
		<content:encoded><![CDATA[<p>If you are on Windows you really should take a look at the new Windows PowerShell (aka Monad).  PowerShell is an interactive shell that provides a C# like scripting language allowing access to the .NET Framework.  You can write script at the prompt so it makes for a nice little .NET based REPL.  You can download it from:</p>
<p><a href="http://www.microsoft.com/PowerShell" rel="nofollow">http://www.microsoft.com/PowerShell</a></p>
<p>And do stuff like this:</p>
<p># Same as find example in Jason&#8217;s post above<br />
&gt; Get-ChildItem *.txt -rec | Get-Content</p>
<p># Get BIOS info<br />
&gt; Get-WmiObject Win32_Bios</p>
<p>SMBIOSBIOSVersion : A07<br />
Manufacturer      : Dell Computer Corporation<br />
Name              : Phoenix ROM BIOS PLUS Version 1.10 A07<br />
SerialNumber      : 60X4W22<br />
Version           : DELL   - 8</p>
<p># Get stats on my music collection<br />
&gt;  get-childitem &#8220;$home\Music&#8221; -rec |<br />
&gt;&gt;  where {!$_.PsIsContainer -and $_.extension -match &#8220;mp3|wma&#8221;} |<br />
&gt;&gt;  measure-object -property length -sum -min -max -ave<br />
&gt;&gt;</p>
<p>Count    : 1018<br />
Average  : 2991362.43123772<br />
Sum      : 3045206955<br />
Max      : 102750941<br />
Min      : 89025<br />
Property : Length</p>
<p># Find all files/dirs that have been written to in the past week<br />
# Note: gci is an alias for Get-ChildItem and ? is an alias for where<br />
&gt; $lastWeek = (get-date).AddDays(-7)<br />
&gt; gci &#8220;$home\Documents&#8221; -rec | ? {$_.LastWriteTime -gt $lastWeek}</p>
<p># Tweak the registry<br />
&gt; cd &#8216;HKCU:\Software\Microsoft\Command Processor&#8217;<br />
&gt; set-itemproperty . -name CompletionChar -value 9</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Orhan</title>
		<link>http://www.alittlemadness.com/2006/05/09/your-next-programming-language/#comment-78</link>
		<author>Orhan</author>
		<pubDate>Tue, 09 May 2006 11:36:53 +0000</pubDate>
		<guid>http://www.alittlemadness.com/2006/05/09/your-next-programming-language/#comment-78</guid>
		<description>I agree. Nowadays I am trying to do the same thing with Groovy, since I am more familiar with Java.</description>
		<content:encoded><![CDATA[<p>I agree. Nowadays I am trying to do the same thing with Groovy, since I am more familiar with Java.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Jason</title>
		<link>http://www.alittlemadness.com/2006/05/09/your-next-programming-language/#comment-77</link>
		<author>Jason</author>
		<pubDate>Tue, 09 May 2006 10:09:42 +0000</pubDate>
		<guid>http://www.alittlemadness.com/2006/05/09/your-next-programming-language/#comment-77</guid>
		<description>Dieter,

If you are really just starting out, there is a good set of tutorials at developerworks:

http://www.ibm.com/developerworks/library/l-bash.html

Mostly, I have just learnt by doing over time, you can start simple and discover things as you go.  Also, bash scripting goes hand in hand with learning the other Unix tools, such as find, grep, sed, awk, cut, paste and so on.  A bit of determination and a shell pipeline can get you a long way.  Something I do frequently is applying a command to a bunch of files with a name that matches a certain pattern.  You can do this with find -exec, for example:

find . -name '*.txt' -exec cat '{}' \;

or, to avoid the awkward -exec syntax, you can use a bash loop:

find . -name '*.txt' &#124; while read filename; do cat $filename; done

As I discover neat ways to do things in bash, I may post a few tips here.  I have found that people always have new and different ways to accomplish things.  Searching through newsgroup posts for unix shell scripting can be enlightening.</description>
		<content:encoded><![CDATA[<p>Dieter,</p>
<p>If you are really just starting out, there is a good set of tutorials at developerworks:</p>
<p><a href="http://www.ibm.com/developerworks/library/l-bash.html" rel="nofollow">http://www.ibm.com/developerworks/library/l-bash.html</a></p>
<p>Mostly, I have just learnt by doing over time, you can start simple and discover things as you go.  Also, bash scripting goes hand in hand with learning the other Unix tools, such as find, grep, sed, awk, cut, paste and so on.  A bit of determination and a shell pipeline can get you a long way.  Something I do frequently is applying a command to a bunch of files with a name that matches a certain pattern.  You can do this with find -exec, for example:</p>
<p>find . -name &#8216;*.txt&#8217; -exec cat &#8216;{}&#8217; \;</p>
<p>or, to avoid the awkward -exec syntax, you can use a bash loop:</p>
<p>find . -name &#8216;*.txt&#8217; | while read filename; do cat $filename; done</p>
<p>As I discover neat ways to do things in bash, I may post a few tips here.  I have found that people always have new and different ways to accomplish things.  Searching through newsgroup posts for unix shell scripting can be enlightening.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Dieter D'haeyere</title>
		<link>http://www.alittlemadness.com/2006/05/09/your-next-programming-language/#comment-76</link>
		<author>Dieter D'haeyere</author>
		<pubDate>Tue, 09 May 2006 09:40:26 +0000</pubDate>
		<guid>http://www.alittlemadness.com/2006/05/09/your-next-programming-language/#comment-76</guid>
		<description>Any recommended starting points ? (examples for common tasks)</description>
		<content:encoded><![CDATA[<p>Any recommended starting points ? (examples for common tasks)</p>
]]></content:encoded>
	</item>
</channel>
</rss>
