<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/css" href="/stylesheets/rss.css"?>
<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/">
  <channel>
    <title>netswitch!</title>
    <link>http://blog.netswitch.jp</link>
    <language>en-us</language>
    <ttl>40</ttl>
    <description></description>
    <item>
      <title>xargs&#12398;&#20351;&#12356;&#26041;</title>
      <description>&lt;h3&gt;&#20415;&#21033;&#12394;xargs&lt;/h3&gt;

&lt;p&gt;UNIX&#31995;OS&#12395;&#12399;xargs&#12392;&#12356;&#12358;&#12467;&#12510;&#12531;&#12489;&#12364;&#12354;&#12426;&#12289;&lt;/p&gt;

&lt;div class="typocode"&gt;&lt;pre class='prettyprint'&gt;&lt;code class="typocode_default "&gt;$ cmd arg1
$ cmd arg2
$ cmd arg3
&#8230;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;&#12392;&#12356;&#12358;&#20966;&#29702;&#12434;&#12289;&#27425;&#12398;&#12424;&#12358;&#12395;&#33258;&#21205;&#21270;&#12375;&#12390;&#12367;&#12428;&#12427;&#12290;&lt;/p&gt;

&lt;div class="typocode"&gt;&lt;pre class='prettyprint'&gt;&lt;code class="typocode_default "&gt;$ cat args
arg1
arg2
arg3
&#8230;

$ cat args | xargs -n 1 cmd &lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;very venry!&lt;/p&gt;

&lt;h3&gt;&#30097;&#24785;&lt;/h3&gt;

&lt;p&gt;&#20415;&#21033;&#12394;xargs&#12391;&#12399;&#12354;&#12427;&#12364;&#12289;&#12458;&#12503;&#12471;&#12519;&#12490;&#12523;&#12394;&#24341;&#25968;&#12434;&#12392;&#12427;&#12424;&#12358;&#12394;&#20966;&#29702;&#12434;&#33258;&#21205;&#21270;&#12375;&#12424;&#12358;&#12392;&#12375;&#12383;&#12425;&#12289;&#12394;&#12363;&#12394;&#12363;&#24605;&#12358;&#36890;&#12426;&#12395;&#12356;&#12363;&#12394;&#12363;&#12387;&#12383;&#12290;&lt;br/&gt;
&#20197;&#19979;&#12289;Mac OSX 10.6.2 &#12391;&#12398;&#35441;&#12290;&lt;/p&gt;

&lt;h3&gt;&#35519;&#26619;&lt;/h3&gt;

&lt;div class="typocode"&gt;&lt;pre class='prettyprint'&gt;&lt;code class="typocode_default "&gt;$ cat args
arg1 opt
arg2
arg3
$ cat args | xargs ... ruby -e &amp;quot;p ARGV&amp;quot; ...&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;&#19978;&#12398;&#12424;&#12358;&#12394;&#20837;&#21147;&#12434;xargs&#12395;&#28193;&#12375;&#12289;&#21336;&#32020;&#12395;&#12467;&#12510;&#12531;&#12489;&#12521;&#12452;&#12531;&#24341;&#25968;&#12434;p&#12377;&#12427;Ruby&#12503;&#12525;&#12464;&#12521;&#12512;&#12434;&#20351;&#12387;&#12390;&#34892;&#12358;&#12290;&lt;/p&gt;

&lt;div class="typocode"&gt;&lt;pre class='prettyprint'&gt;&lt;code class="typocode_default "&gt;&#9783; cat args | xargs -n 2 ruby -e &amp;quot;p ARGV&amp;quot;
[&amp;quot;arg1&amp;quot;, &amp;quot;opt&amp;quot;]
[&amp;quot;arg2&amp;quot;, &amp;quot;arg3&amp;quot;]&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;xargs&#12300;&#31070;&#12399;&#31354;&#30333;&#12392;&#25913;&#34892;&#12434;&#24179;&#31561;&#12395;&#12362;&#12388;&#12367;&#12426;&#12395;&#12394;&#12425;&#12428;&#12383;&#12301;&lt;/p&gt;

&lt;div class="typocode"&gt;&lt;pre class='prettyprint'&gt;&lt;code class="typocode_default "&gt;&#9783; cat args | xargs -I% ruby -e &amp;quot;p ARGV&amp;quot; %
[&amp;quot;arg1 opt&amp;quot;]
[&amp;quot;arg2&amp;quot;]
[&amp;quot;arg3&amp;quot;]&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;&#24796;&#12375;&#12356;&#12290;&#31354;&#30333;&#12364;&#12456;&#12473;&#12465;&#12540;&#12503;&#12373;&#12428;&#12390;&#12356;&#12427;&#12398;&#12391; &lt;code&gt;$ cmd "arg1 opt"&lt;/code&gt; &#12392;&#21516;&#12376;&#12290;&lt;/p&gt;

&lt;div class="typocode"&gt;&lt;pre class='prettyprint'&gt;&lt;code class="typocode_default "&gt;&#9783; cat args | xargs -J% ruby -e &amp;quot;p ARGV&amp;quot; % 
[&amp;quot;arg1&amp;quot;, &amp;quot;opt&amp;quot;, &amp;quot;arg2&amp;quot;, &amp;quot;arg3&amp;quot;]&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;&#12381;&#12428;&#12399;&#22256;&#12426;&#12414;&#12377;&#8230;&#12290;                             &lt;/p&gt;

&lt;div class="typocode"&gt;&lt;pre class='prettyprint'&gt;&lt;code class="typocode_default "&gt;&#9783; cat args | xargs -E% ruby -e &amp;quot;p ARGV&amp;quot;
[&amp;quot;arg1&amp;quot;, &amp;quot;opt&amp;quot;, &amp;quot;arg2&amp;quot;, &amp;quot;arg3&amp;quot;]&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;&#12391;&#12377;&#12424;&#12397;&#12316;&#12290;&lt;/p&gt;

&lt;div class="typocode"&gt;&lt;pre class='prettyprint'&gt;&lt;code class="typocode_default "&gt;&#9783; cat args | xargs -L 1 -J% ruby -e &amp;quot;p ARGV&amp;quot; %
[&amp;quot;arg1&amp;quot;, &amp;quot;opt&amp;quot;]
[&amp;quot;arg2&amp;quot;]
[&amp;quot;arg3&amp;quot;]&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;&#12371;&#12428;&#12384;&#65281;L&#12399;&#19990;&#30028;&#12434;&#25937;&#12358;!&lt;/p&gt;

&lt;div class="typocode"&gt;&lt;pre class='prettyprint'&gt;&lt;code class="typocode_default "&gt;&#9783; cat args | xargs -L 1 ruby -e &amp;quot;p ARGV&amp;quot;
[&amp;quot;arg1&amp;quot;, &amp;quot;opt&amp;quot;]
[&amp;quot;arg2&amp;quot;]
[&amp;quot;arg3&amp;quot;]&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;xargs&#12300;&#12424;&#12367;&#12382;&#12383;&#12393;&#12426;&#12388;&#12356;&#12383;&#12301;&lt;/p&gt;</description>
      <pubDate>Sat, 30 Jan 2010 19:28:00 +0900</pubDate>
      <guid isPermaLink="false">urn:uuid:a5c47e55-b99c-4bbc-930a-331caab6dd05</guid>
      <author>nanki</author>
      <link>http://blog.netswitch.jp/articles/2010/01/30/using-xargs</link>
      <category>noise</category>
      <trackback:ping>http://blog.netswitch.jp/articles/trackback/8657</trackback:ping>
    </item>
    <item>
      <title>llvmruby llvm2.6&#23550;&#24540;&#12497;&#12483;&#12481;(&#26410;&#23436;&#25104;)</title>
      <description>&lt;p&gt;macports&#12391;&#20837;&#12428;&#12383;llvm&#12399;2.6&#12394;&#12398;&#12391;llvmruby&#12364;&#12467;&#12531;&#12497;&#12452;&#12523;&#12391;&#12365;&#12394;&#12356;&#12398;&#12391;&#12497;&#12483;&#12481;&#12434;&#26360;&#12356;&#12383;&#12290;
&#12414;&#12384;&#12486;&#12473;&#12488;&#12364;&#20840;&#37096;&#36890;&#12427;&#12431;&#12369;&#12391;&#12399;&#12394;&#12367;&#12390;&#12289;&lt;code&gt;test_basic.rb&lt;/code&gt;&#12398;&#19968;&#12459;&#25152;&#12391;&#33853;&#12385;&#12289;&lt;code&gt;test_ruby_vm.rb&lt;/code&gt;&#12364;&#20840;&#12390;&#22833;&#25943;&#12377;&#12427;&#12290;&lt;/p&gt;

&lt;p&gt;&#22522;&#26412;&#30340;&#12395;&#12399;&#12289;LLVMContext&#12364;&#24517;&#35201;&#12394;&#25152;&#12391;&#12289;&#20840;&#12390;getGlobalContext()&#12434;&#28193;&#12377;&#12424;&#12358;&#12395;&#22793;&#26356;&#12375;&#12383;&#12290;
&#12354;&#12392;&#12424;&#12367;&#12431;&#12363;&#12425;&#12394;&#12356;&#12369;&#12393;&#12289;ofstream&#12398;flush&#12434;&#21628;&#12403;&#20986;&#12375;&#12390;&#12356;&#12427;&#12392;&#12371;&#12429;&#12391;&#33853;&#12385;&#12390;&#12356;&#12383;&#12398;&#12391;&#12289;llvm&#12391;&#29992;&#24847;&#12373;&#12428;&#12390;&#12356;&#12427;raw_fd_ostream&#12392;&#12356;&#12358;&#12398;&#12434;&#20351;&#12358;&#12424;&#12358;&#12395;&#22793;&#12360;&#12383;&#12290;&lt;/p&gt;

&lt;script src="http://gist.github.com/267706.js?file=llvmruby-2.6.patch"&gt;&lt;/script&gt;

&lt;h5&gt;&#21442;&#32771;:&lt;/h5&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href="http://llvmruby.org/"&gt;llvmruby.org&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://github.com/tombagby/llvmruby"&gt;tombagby&amp;#8217;s llvmruby at master - GitHub&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;</description>
      <pubDate>Sun, 03 Jan 2010 20:59:00 +0900</pubDate>
      <guid isPermaLink="false">urn:uuid:44740af0-db68-4003-884c-1da86df15375</guid>
      <author>nanki</author>
      <link>http://blog.netswitch.jp/articles/2010/01/03/llvmruby-2.6-patch</link>
      <category>tech</category>
      <category>llvm</category>
      <trackback:ping>http://blog.netswitch.jp/articles/trackback/8656</trackback:ping>
    </item>
    <item>
      <title>&#20170;&#26085;&#12398;LLVM - &#12501;&#12451;&#12508;&#12490;&#12483;&#12481;&#25968;&#21015;</title>
      <description>&lt;p&gt;LLVM&#35328;&#35486;&#12395;&#12390;&#12289;&#12501;&#12451;&#12508;&#12490;&#12483;&#12481;&#25968;&#21015;&#12290;&lt;/p&gt;

&lt;div class="typocode"&gt;&lt;pre class='prettyprint'&gt;&lt;code class="typocode_default "&gt;@str = internal constant [4 x i8] c&amp;quot;%d\0A\00&amp;quot;

define void @main() nounwind {
init:
  br label %loop
loop:
  %i = phi i32 [0, %init], [%i.next, %loop]
  %fib = call i32 @fib(i32 %i)

  call i32 @printf( i8* getelementptr ([4 x i8]* @str, i32 0,i32 0), i32 %fib)

  %i.next = add i32 %i, 1

  %cond = icmp ult i32 %i.next, 30
  br i1 %cond, label %loop, label %exit

exit:
  ret void
}

define i32 @fib(i32 %n) nounwind {
  %cond = icmp ult i32 %n, 2
  br i1 %cond, label %c1, label %c2

c1:
  ret i32 1
c2:
  %n1 = sub i32 %n, 1
  %n2 = sub i32 %n, 2

  %fib1 = call i32 @fib(i32 %n1)
  %fib2 = call i32 @fib(i32 %n2)

  %r = add i32 %fib1, %fib2
  ret i32 %r
}

declare i32 @printf(i8*, ...) nounwind&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;div class="typocode"&gt;&lt;pre class='prettyprint'&gt;&lt;code class="typocode_default "&gt;&#65825; llvm-as fib.ll -o - | lli
1
1
2
3
5
8
13
21
34
55
89
144
233
377
610
987
1597
2584
4181
6765
10946
17711
28657
46368
75025
121393
196418
317811
514229
832040&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;&#20415;&#21033;&#12290;&lt;/p&gt;</description>
      <pubDate>Fri, 25 Dec 2009 10:35:00 +0900</pubDate>
      <guid isPermaLink="false">urn:uuid:cf7acb40-cec4-47f2-9866-6f527f051b8e</guid>
      <author>nanki</author>
      <link>http://blog.netswitch.jp/articles/2009/12/25/fibonacci-number-in-llvm</link>
      <category>tech</category>
      <category>llvm</category>
      <trackback:ping>http://blog.netswitch.jp/articles/trackback/8655</trackback:ping>
    </item>
    <item>
      <title>termtter&#12398;&#12497;&#12473;&#12527;&#12540;&#12489;&#12395;Mac&#12398;&#12461;&#12540;&#12481;&#12455;&#12540;&#12531;&#12434;&#20351;&#12358;</title>
      <description>&lt;p&gt;termtter &#12391;&#12399;&#12289;&#12497;&#12473;&#12527;&#12540;&#12489;&#12434;&#12501;&#12449;&#12452;&#12523;&#12395;&#20445;&#23384;&#12375;&#12383;&#12367;&#12394;&#12356;&#12289;&#12392;&#12356;&#12358;&#29702;&#30001;&#12363;&#12425;&#65311;&#12487;&#12501;&#12457;&#12523;&#12488;&#12391;&#12399;&#27598;&#22238;&#12497;&#12473;&#12527;&#12540;&#12489;&#12434;&#32862;&#12367;&#12424;&#12358;&#12395;&#12394;&#12387;&#12390;&#12356;&#12427;&#12290;&lt;/p&gt;

&lt;p&gt;Mac&#12391;&#12399;security&#12467;&#12510;&#12531;&#12489;&#12392;&#12356;&#12358;&#12398;&#12391;&#12461;&#12540;&#12481;&#12455;&#12540;&#12531;&#12395;&#12450;&#12463;&#12475;&#12473;&#12391;&#12365;&#12427;&#12381;&#12358;&#12394;&#12398;&#12391;&#12289;&#12381;&#12428;&#12434;&#20351;&#12387;&#12390;&#12415;&#12427;&#12290;&lt;/p&gt;

&lt;p&gt;&#27161;&#28310;&#12456;&#12521;&#12540;&#20986;&#21147;&#12395;&#12497;&#12473;&#12527;&#12540;&#12489;&#12434;&#21520;&#12367;&#12398;&#12391;popen3&#12434;&#20351;&#12358;&#12290;&lt;/p&gt;

&lt;div class="typocode"&gt;&lt;pre&gt;&lt;code class="typocode_ruby "&gt;&lt;span class="comment"&gt;# ~/.termtter/config&lt;/span&gt;
&lt;span class="keyword"&gt;def &lt;/span&gt;&lt;span class="method"&gt;password_from_keychain&lt;/span&gt;&lt;span class="punct"&gt;(&lt;/span&gt;&lt;span class="ident"&gt;user&lt;/span&gt;&lt;span class="punct"&gt;)&lt;/span&gt;
  &lt;span class="ident"&gt;require&lt;/span&gt; &lt;span class="punct"&gt;'&lt;/span&gt;&lt;span class="string"&gt;open3&lt;/span&gt;&lt;span class="punct"&gt;'&lt;/span&gt;
  &lt;span class="ident"&gt;_&lt;/span&gt;&lt;span class="punct"&gt;,&lt;/span&gt; &lt;span class="ident"&gt;_&lt;/span&gt;&lt;span class="punct"&gt;,&lt;/span&gt; &lt;span class="ident"&gt;err&lt;/span&gt; &lt;span class="punct"&gt;=&lt;/span&gt; &lt;span class="constant"&gt;Open3&lt;/span&gt;&lt;span class="punct"&gt;.&lt;/span&gt;&lt;span class="ident"&gt;popen3&lt;/span&gt;&lt;span class="punct"&gt;(&amp;quot;&lt;/span&gt;&lt;span class="string"&gt;/usr/bin/security find-internet-password -s twitter.com -a &lt;span class="expr"&gt;#{user}&lt;/span&gt; -r http -g&lt;/span&gt;&lt;span class="punct"&gt;&amp;quot;)&lt;/span&gt;

  &lt;span class="keyword"&gt;if&lt;/span&gt; &lt;span class="punct"&gt;/&lt;/span&gt;&lt;span class="regex"&gt;^password: &amp;quot;(.*)&amp;quot;$&lt;/span&gt;&lt;span class="punct"&gt;/&lt;/span&gt; &lt;span class="punct"&gt;===&lt;/span&gt; &lt;span class="ident"&gt;err&lt;/span&gt;&lt;span class="punct"&gt;.&lt;/span&gt;&lt;span class="ident"&gt;gets&lt;/span&gt;                                                  
    &lt;span class="global"&gt;$1&lt;/span&gt;
  &lt;span class="keyword"&gt;else&lt;/span&gt;
    &lt;span class="constant"&gt;nil&lt;/span&gt;
  &lt;span class="keyword"&gt;end&lt;/span&gt;
&lt;span class="keyword"&gt;end&lt;/span&gt;

&lt;span class="ident"&gt;config&lt;/span&gt;&lt;span class="punct"&gt;.&lt;/span&gt;&lt;span class="ident"&gt;user_name&lt;/span&gt; &lt;span class="punct"&gt;=&lt;/span&gt; &lt;span class="punct"&gt;'&lt;/span&gt;&lt;span class="string"&gt;your_account&lt;/span&gt;&lt;span class="punct"&gt;'&lt;/span&gt;
&lt;span class="ident"&gt;config&lt;/span&gt;&lt;span class="punct"&gt;.&lt;/span&gt;&lt;span class="ident"&gt;password&lt;/span&gt; &lt;span class="punct"&gt;=&lt;/span&gt; &lt;span class="ident"&gt;password_from_keychain&lt;/span&gt;&lt;span class="punct"&gt;(&lt;/span&gt;&lt;span class="ident"&gt;config&lt;/span&gt;&lt;span class="punct"&gt;.&lt;/span&gt;&lt;span class="ident"&gt;user_name&lt;/span&gt;&lt;span class="punct"&gt;)&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;h5&gt;&#21442;&#32771;:&lt;/h5&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href="http://github.com/jugyo/termtter"&gt;jugyo&amp;#8217;s termtter at master - GitHub&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;</description>
      <pubDate>Sat, 19 Dec 2009 18:15:00 +0900</pubDate>
      <guid isPermaLink="false">urn:uuid:d760b72b-d162-41ef-a44c-b6970a41ec21</guid>
      <author>nanki</author>
      <link>http://blog.netswitch.jp/articles/2009/12/19/use-keychain-for-termtter-on-mac</link>
      <category>ruby</category>
      <category>termtter</category>
      <trackback:ping>http://blog.netswitch.jp/articles/trackback/8654</trackback:ping>
    </item>
    <item>
      <title>Try maglev!</title>
      <description>&lt;p&gt;&#22082;&#12398;MagLev&#12434;&#35430;&#12375;&#12390;&#12415;&#12383;&#12290;&#20197;&#19979; Mac OS X 10.5.8 &#12391;&#12398;&#35441;&#12290;&lt;/p&gt;

&lt;div class="typocode"&gt;&lt;pre class='prettyprint'&gt;&lt;code class="typocode_default "&gt;&#9055; git clone git://github.com/MagLev/maglev.git # clone repository
&#9055; cd maglev
&#9055; ./instsall.sh # download and install GemStone

&#9055; vim .zshrc
export MAGLEV_HOME=/PATH_TO/maglev
export PATH=$MAGLEV_HOME/bin:$PATH

&#9055; rake maglev:start
&#9055; maglev-ruby -e &amp;quot;p 1 + 1&amp;quot;
2
&#9055; maglev-irb
error , Expected nil to be a Boolean.,
          during /..../maglev/bin/maglev-irb
ERROR 2085, Expected nil to be a Boolean. (RuntimeError)&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;maglev-irb &#12399;&#21205;&#12363;&#12394;&#12356;&gt;&amp;lt;&lt;/p&gt;

&lt;h5&gt;&#21442;&#32771;:&lt;/h5&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href="http://github.com/MagLev/maglev"&gt;MagLev&amp;#8217;s maglev at master - GitHub&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;</description>
      <pubDate>Wed, 25 Nov 2009 21:42:00 +0900</pubDate>
      <guid isPermaLink="false">urn:uuid:732756a9-b053-4c7b-986c-9871bac7a4e7</guid>
      <author>nanki</author>
      <link>http://blog.netswitch.jp/articles/2009/11/25/try-maglev</link>
      <category>tech</category>
      <category>ruby</category>
      <category>ruby</category>
      <trackback:ping>http://blog.netswitch.jp/articles/trackback/8653</trackback:ping>
    </item>
    <item>
      <title>&#12420;&#12399;&#12426;Ruby&#12391;&#12399; &#12316;Scala&#12398;&#28961;&#21517;&#38306;&#25968;&#12395;&#24999;&#12428;&#12390;&#12316;</title>
      <description>&lt;p&gt;&#24999;&#12428;&#12471;&#12522;&#12540;&#12474;&#31532;&#20108;&#24382;&#12290;&lt;/p&gt;

&lt;p&gt;Scala&#12398;&#21193;&#24375;&#12391;&#12418;&#12375;&#12424;&#12358;&#12363;&#12394;&#12289;&#12392;&#24605;&#12387;&#12390;Scala&#12398;&#26412;&#12434;&#38283;&#12356;&#12383;&#12425;&#12289;Scala&#12391;&#12399;&#28961;&#21517;&#38306;&#25968;&#12434;_(&#12450;&#12531;&#12480;&#12540;&#12473;&#12467;&#12450;)&#12434;&#20351;&#12387;&#12390;&#23450;&#32681;&#12391;&#12365;&#12427;&#12425;&#12375;&#12356;&#12290;
Ruby&#12395;&#12362;&#12369;&#12427;&#12381;&#12428;&#12398;&#23455;&#29694;&#21487;&#33021;&#24615;&#12395;&#32771;&#12360;&#12364;&#34892;&#12387;&#12390;&#12375;&#12414;&#12387;&#12390;&#12289;Scala&#12398;&#26412;&#12434;&#35501;&#12416;&#12398;&#12399;&#12381;&#12428;&#12391;&#12362;&#12375;&#12414;&#12356;&#12395;&#12394;&#12387;&#12383;&#12398;&#12384;&#8230;&lt;/p&gt;

&lt;p&gt;Ruby&#12391;&#12418;&#12289;&lt;/p&gt;

&lt;div class="typocode"&gt;&lt;pre&gt;&lt;code class="typocode_ruby "&gt;&lt;span class="punct"&gt;[&lt;/span&gt;&lt;span class="number"&gt;1&lt;/span&gt;&lt;span class="punct"&gt;,&lt;/span&gt; &lt;span class="number"&gt;2&lt;/span&gt;&lt;span class="punct"&gt;,&lt;/span&gt; &lt;span class="number"&gt;3&lt;/span&gt;&lt;span class="punct"&gt;].&lt;/span&gt;&lt;span class="ident"&gt;map&lt;/span&gt;&lt;span class="punct"&gt;(&lt;/span&gt;&lt;span class="ident"&gt;_&lt;/span&gt; &lt;span class="punct"&gt;*&lt;/span&gt; &lt;span class="number"&gt;2&lt;/span&gt;&lt;span class="punct"&gt;)&lt;/span&gt; &lt;span class="comment"&gt;# =&amp;gt; [2, 4, 6]&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;&#12392;&#12363;&#26360;&#12365;&#12383;&#12356;&#12424;&#12397;&#12290;&lt;/p&gt;

&lt;p&gt;Ruby&#12395;&#12399;&#12418;&#12392;&#12418;&#12392;&#12289;map&#12394;&#12393;&#12398;&#12502;&#12525;&#12483;&#12463;&#12434;&#21462;&#12427;&#12513;&#12477;&#12483;&#12489;&#12395;&#28961;&#21517;&#38306;&#25968;(Proc)&#12434;&#24341;&#25968;&#12392;&#12375;&#12390;&#28193;&#12377;&#12371;&#12392;&#12364;&#12391;&#12365;&#12427;&lt;/p&gt;

&lt;div class="typocode"&gt;&lt;pre&gt;&lt;code class="typocode_ruby "&gt;&lt;span class="punct"&gt;[&lt;/span&gt;&lt;span class="number"&gt;1&lt;/span&gt;&lt;span class="punct"&gt;,&lt;/span&gt; &lt;span class="number"&gt;2&lt;/span&gt;&lt;span class="punct"&gt;,&lt;/span&gt; &lt;span class="number"&gt;3&lt;/span&gt;&lt;span class="punct"&gt;].&lt;/span&gt;&lt;span class="ident"&gt;map&lt;/span&gt;&lt;span class="punct"&gt;(&amp;amp;&lt;/span&gt;&lt;span class="symbol"&gt;:to_s&lt;/span&gt;&lt;span class="punct"&gt;)&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;&#12371;&#12398;&#20363;&#12391;&#12399;&#12289;&lt;code&gt;:to_s&lt;/code&gt; &#12399; Symbol &#12384;&#12364;&#12289;Proc &#12434;&#36820;&#12377;&lt;code&gt;Symbol#to_proc&lt;/code&gt; &#12434;&#23450;&#32681;&#12375;&#12390;&#12362;&#12367;&#12392;&#12289;&#12381;&#12428;&#12364;&#21628;&#12400;&#12428;&#12390;&#12424;&#12375;&#12394;&#12395;&#12375;&#12390;&#12367;&#12428;&#12427;&#12290;&lt;code&gt;Symbol#to_proc&lt;/code&gt; &#12399;ActiveSupport &#12394;&#12393;&#12391;&#23450;&#32681;&#12373;&#12428;&#12390;&#12356;&#12427;&#12398;&#12391;&#12289;Rails&#20351;&#12356;&#12395;&#12399;&#12362;&#12394;&#12376;&#12415;&#12384;&#12429;&#12358;&#12290;&lt;/p&gt;

&lt;p&gt;&#12371;&#12398;&#20181;&#32068;&#12415;&#12434;&#21033;&#29992;&#12375;&#12390;&#12289; &lt;code&gt;_&lt;/code&gt; &#12395;&#23550;&#12375;&#12390;&#36865;&#12425;&#12428;&#12427;&#12513;&#12483;&#12475;&#12540;&#12472;&#12434;&#20445;&#23384;&#12375;&#12390;&#12362;&#12356;&#12390;&#12289;&lt;code&gt;to_proc&lt;/code&gt; &#12373;&#12428;&#12427;&#26178;&#12395;&#36969;&#24403;&#12394;Proc&#12434;&#36820;&#12377;&#12424;&#12358;&#12394;&#20309;&#12363;&#12434;&#20316;&#12428;&#12400;&#12424;&#12356;&#12290;&lt;/p&gt;

&lt;div class="typocode"&gt;&lt;pre&gt;&lt;code class="typocode_ruby "&gt;&lt;span class="keyword"&gt;module &lt;/span&gt;&lt;span class="module"&gt;Scala&lt;/span&gt;
  &lt;span class="keyword"&gt;class &lt;/span&gt;&lt;span class="class"&gt;LazyCall&lt;/span&gt;
    &lt;span class="ident"&gt;instance_methods&lt;/span&gt;&lt;span class="punct"&gt;.&lt;/span&gt;&lt;span class="ident"&gt;each&lt;/span&gt; &lt;span class="keyword"&gt;do&lt;/span&gt; &lt;span class="punct"&gt;|&lt;/span&gt;&lt;span class="ident"&gt;v&lt;/span&gt;&lt;span class="punct"&gt;|&lt;/span&gt;
      &lt;span class="ident"&gt;undef_method&lt;/span&gt;&lt;span class="punct"&gt;(&lt;/span&gt;&lt;span class="ident"&gt;v&lt;/span&gt;&lt;span class="punct"&gt;)&lt;/span&gt; &lt;span class="keyword"&gt;unless&lt;/span&gt; &lt;span class="punct"&gt;%w(&lt;/span&gt;&lt;span class="string"&gt;__id__ __send__&lt;/span&gt;&lt;span class="punct"&gt;).&lt;/span&gt;&lt;span class="ident"&gt;include?&lt;/span&gt;&lt;span class="punct"&gt;(&lt;/span&gt;&lt;span class="ident"&gt;v&lt;/span&gt;&lt;span class="punct"&gt;)&lt;/span&gt;
    &lt;span class="keyword"&gt;end&lt;/span&gt;

    &lt;span class="keyword"&gt;def &lt;/span&gt;&lt;span class="method"&gt;initialize&lt;/span&gt;&lt;span class="punct"&gt;(&lt;/span&gt;&lt;span class="ident"&gt;v&lt;/span&gt; &lt;span class="punct"&gt;=&lt;/span&gt; &lt;span class="constant"&gt;nil&lt;/span&gt;&lt;span class="punct"&gt;)&lt;/span&gt;
      &lt;span class="attribute"&gt;@v&lt;/span&gt; &lt;span class="punct"&gt;=&lt;/span&gt; &lt;span class="ident"&gt;v&lt;/span&gt;
      &lt;span class="attribute"&gt;@msgs&lt;/span&gt; &lt;span class="punct"&gt;=&lt;/span&gt; &lt;span class="punct"&gt;[]&lt;/span&gt;
    &lt;span class="keyword"&gt;end&lt;/span&gt;

    &lt;span class="keyword"&gt;def &lt;/span&gt;&lt;span class="method"&gt;method_missing&lt;/span&gt;&lt;span class="punct"&gt;(*&lt;/span&gt;&lt;span class="ident"&gt;args&lt;/span&gt;&lt;span class="punct"&gt;,&lt;/span&gt; &lt;span class="punct"&gt;&amp;amp;&lt;/span&gt;&lt;span class="ident"&gt;block&lt;/span&gt;&lt;span class="punct"&gt;)&lt;/span&gt;
      &lt;span class="attribute"&gt;@msgs&lt;/span&gt; &lt;span class="punct"&gt;&amp;lt;&amp;lt;&lt;/span&gt; &lt;span class="punct"&gt;[&lt;/span&gt;&lt;span class="ident"&gt;args&lt;/span&gt;&lt;span class="punct"&gt;,&lt;/span&gt; &lt;span class="ident"&gt;block&lt;/span&gt;&lt;span class="punct"&gt;]&lt;/span&gt; &lt;span class="keyword"&gt;unless&lt;/span&gt; &lt;span class="ident"&gt;args&lt;/span&gt; &lt;span class="punct"&gt;==&lt;/span&gt; &lt;span class="punct"&gt;[&lt;/span&gt;&lt;span class="symbol"&gt;:respond_to?&lt;/span&gt;&lt;span class="punct"&gt;,&lt;/span&gt; &lt;span class="symbol"&gt;:to_proc&lt;/span&gt;&lt;span class="punct"&gt;]&lt;/span&gt;
      &lt;span class="constant"&gt;self&lt;/span&gt;
    &lt;span class="keyword"&gt;end&lt;/span&gt;

    &lt;span class="keyword"&gt;def &lt;/span&gt;&lt;span class="method"&gt;to_proc&lt;/span&gt;
      &lt;span class="ident"&gt;proc&lt;/span&gt; &lt;span class="keyword"&gt;do&lt;/span&gt; &lt;span class="punct"&gt;|&lt;/span&gt;&lt;span class="ident"&gt;v&lt;/span&gt;&lt;span class="punct"&gt;|&lt;/span&gt;
        &lt;span class="attribute"&gt;@msgs&lt;/span&gt;&lt;span class="punct"&gt;.&lt;/span&gt;&lt;span class="ident"&gt;inject&lt;/span&gt;&lt;span class="punct"&gt;(&lt;/span&gt;&lt;span class="attribute"&gt;@v&lt;/span&gt;&lt;span class="punct"&gt;||&lt;/span&gt;&lt;span class="ident"&gt;v&lt;/span&gt;&lt;span class="punct"&gt;)&lt;/span&gt; &lt;span class="keyword"&gt;do&lt;/span&gt; &lt;span class="punct"&gt;|&lt;/span&gt;&lt;span class="ident"&gt;r&lt;/span&gt;&lt;span class="punct"&gt;,&lt;/span&gt; &lt;span class="ident"&gt;m&lt;/span&gt;&lt;span class="punct"&gt;|&lt;/span&gt;
          &lt;span class="ident"&gt;r&lt;/span&gt;&lt;span class="punct"&gt;.&lt;/span&gt;&lt;span class="ident"&gt;__send__&lt;/span&gt;&lt;span class="punct"&gt;(*&lt;/span&gt;&lt;span class="ident"&gt;m&lt;/span&gt;&lt;span class="punct"&gt;[&lt;/span&gt;&lt;span class="number"&gt;0&lt;/span&gt;&lt;span class="punct"&gt;].&lt;/span&gt;&lt;span class="ident"&gt;map&lt;/span&gt;&lt;span class="punct"&gt;{|&lt;/span&gt;&lt;span class="ident"&gt;a&lt;/span&gt;&lt;span class="punct"&gt;|&lt;/span&gt;&lt;span class="constant"&gt;LazyCall&lt;/span&gt; &lt;span class="punct"&gt;===&lt;/span&gt; &lt;span class="ident"&gt;a&lt;/span&gt; &lt;span class="punct"&gt;?&lt;/span&gt; &lt;span class="ident"&gt;a&lt;/span&gt;&lt;span class="punct"&gt;.&lt;/span&gt;&lt;span class="ident"&gt;to_proc&lt;/span&gt;&lt;span class="punct"&gt;[&lt;/span&gt;&lt;span class="ident"&gt;v&lt;/span&gt;&lt;span class="punct"&gt;]&lt;/span&gt; &lt;span class="punct"&gt;:&lt;/span&gt; &lt;span class="ident"&gt;a&lt;/span&gt;&lt;span class="punct"&gt;},&lt;/span&gt; &lt;span class="punct"&gt;&amp;amp;&lt;/span&gt;&lt;span class="ident"&gt;m&lt;/span&gt;&lt;span class="punct"&gt;[&lt;/span&gt;&lt;span class="number"&gt;1&lt;/span&gt;&lt;span class="punct"&gt;])&lt;/span&gt;
        &lt;span class="keyword"&gt;end&lt;/span&gt;
      &lt;span class="keyword"&gt;end&lt;/span&gt;
    &lt;span class="keyword"&gt;end&lt;/span&gt;
  &lt;span class="keyword"&gt;end&lt;/span&gt;

  &lt;span class="keyword"&gt;def &lt;/span&gt;&lt;span class="method"&gt;_&lt;/span&gt;&lt;span class="punct"&gt;(&lt;/span&gt;&lt;span class="ident"&gt;v&lt;/span&gt; &lt;span class="punct"&gt;=&lt;/span&gt; &lt;span class="constant"&gt;nil&lt;/span&gt;&lt;span class="punct"&gt;)&lt;/span&gt;
    &lt;span class="constant"&gt;LazyCall&lt;/span&gt;&lt;span class="punct"&gt;.&lt;/span&gt;&lt;span class="ident"&gt;new&lt;/span&gt; &lt;span class="ident"&gt;v&lt;/span&gt;
  &lt;span class="keyword"&gt;end&lt;/span&gt;

  &lt;span class="comment"&gt;# _0, _1, ...&lt;/span&gt;
  &lt;span class="punct"&gt;(&lt;/span&gt;&lt;span class="number"&gt;0&lt;/span&gt;&lt;span class="punct"&gt;...&lt;/span&gt;&lt;span class="number"&gt;3&lt;/span&gt;&lt;span class="punct"&gt;).&lt;/span&gt;&lt;span class="ident"&gt;each&lt;/span&gt; &lt;span class="keyword"&gt;do&lt;/span&gt; &lt;span class="punct"&gt;|&lt;/span&gt;&lt;span class="ident"&gt;i&lt;/span&gt;&lt;span class="punct"&gt;|&lt;/span&gt;
    &lt;span class="ident"&gt;define_method&lt;/span&gt;&lt;span class="punct"&gt;(&amp;quot;&lt;/span&gt;&lt;span class="string"&gt;_&lt;span class="expr"&gt;#{i}&lt;/span&gt;&lt;/span&gt;&lt;span class="punct"&gt;&amp;quot;){&lt;/span&gt;&lt;span class="constant"&gt;LazyCall&lt;/span&gt;&lt;span class="punct"&gt;.&lt;/span&gt;&lt;span class="ident"&gt;new&lt;/span&gt;&lt;span class="punct"&gt;[&lt;/span&gt;&lt;span class="ident"&gt;i&lt;/span&gt;&lt;span class="punct"&gt;]}&lt;/span&gt;
  &lt;span class="keyword"&gt;end&lt;/span&gt;
&lt;span class="keyword"&gt;end&lt;/span&gt;

&lt;span class="ident"&gt;include&lt;/span&gt; &lt;span class="constant"&gt;Scala&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;&#12381;&#12358;&#12375;&#12390;&#12391;&#12365;&#12383;&#12398;&#12364;&#12371;&#12428;&#12290;&lt;/p&gt;

&lt;p&gt;&#12371;&#12428;&#12434;&#20351;&#12358;&#12392;&#8230;&lt;/p&gt;

&lt;div class="typocode"&gt;&lt;pre&gt;&lt;code class="typocode_ruby "&gt;&lt;span class="punct"&gt;%w(&lt;/span&gt;&lt;span class="string"&gt;a b c d&lt;/span&gt;&lt;span class="punct"&gt;).&lt;/span&gt;&lt;span class="ident"&gt;map&lt;/span&gt;&lt;span class="punct"&gt;(&amp;amp;&lt;/span&gt;&lt;span class="ident"&gt;_&lt;/span&gt; &lt;span class="punct"&gt;*&lt;/span&gt; &lt;span class="ident"&gt;_&lt;/span&gt;&lt;span class="punct"&gt;.&lt;/span&gt;&lt;span class="ident"&gt;to_i&lt;/span&gt;&lt;span class="punct"&gt;(&lt;/span&gt;&lt;span class="number"&gt;16&lt;/span&gt;&lt;span class="punct"&gt;))&lt;/span&gt;
&lt;span class="comment"&gt;# =&amp;gt; [&amp;quot;aaaaaaaaaa&amp;quot;, &amp;quot;bbbbbbbbbbb&amp;quot;, &amp;quot;cccccccccccc&amp;quot;, &amp;quot;ddddddddddddd&amp;quot;]&lt;/span&gt;

&lt;span class="punct"&gt;[[&lt;/span&gt;&lt;span class="number"&gt;1&lt;/span&gt;&lt;span class="punct"&gt;,&lt;/span&gt; &lt;span class="number"&gt;2&lt;/span&gt;&lt;span class="punct"&gt;],&lt;/span&gt; &lt;span class="punct"&gt;[&lt;/span&gt;&lt;span class="number"&gt;2&lt;/span&gt;&lt;span class="punct"&gt;,&lt;/span&gt; &lt;span class="number"&gt;3&lt;/span&gt;&lt;span class="punct"&gt;]].&lt;/span&gt;&lt;span class="ident"&gt;map&lt;/span&gt;&lt;span class="punct"&gt;(&amp;amp;&lt;/span&gt;&lt;span class="ident"&gt;_0&lt;/span&gt; &lt;span class="punct"&gt;+&lt;/span&gt; &lt;span class="ident"&gt;_1&lt;/span&gt;&lt;span class="punct"&gt;)&lt;/span&gt;
&lt;span class="comment"&gt;# =&amp;gt; [3, 5]&lt;/span&gt;

&lt;span class="ident"&gt;_&lt;/span&gt;&lt;span class="punct"&gt;(&lt;/span&gt;&lt;span class="constant"&gt;Math&lt;/span&gt;&lt;span class="punct"&gt;).&lt;/span&gt;&lt;span class="ident"&gt;sqrt&lt;/span&gt;&lt;span class="punct"&gt;(&lt;/span&gt;&lt;span class="ident"&gt;_0&lt;/span&gt; &lt;span class="punct"&gt;**&lt;/span&gt; &lt;span class="number"&gt;2&lt;/span&gt; &lt;span class="punct"&gt;+&lt;/span&gt; &lt;span class="ident"&gt;_1&lt;/span&gt; &lt;span class="punct"&gt;**&lt;/span&gt; &lt;span class="number"&gt;2&lt;/span&gt;&lt;span class="punct"&gt;).&lt;/span&gt;&lt;span class="ident"&gt;to_proc&lt;/span&gt;&lt;span class="punct"&gt;[[&lt;/span&gt;&lt;span class="number"&gt;3&lt;/span&gt;&lt;span class="punct"&gt;,&lt;/span&gt; &lt;span class="number"&gt;4&lt;/span&gt;&lt;span class="punct"&gt;]]&lt;/span&gt;
&lt;span class="comment"&gt;# =&amp;gt; 5.0&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;&amp;amp; &#12398;&#24460;&#12395;&#25324;&#24359;&#12364;&#35201;&#12427;&#12392;&#24605;&#12387;&#12390;&#12356;&#12383;&#12364;&#12381;&#12435;&#12394;&#12371;&#12392;&#12399;&#12394;&#12363;&#12387;&#12383;&#12380;&#12290;&lt;/p&gt;

&lt;p&gt;&#12513;&#12483;&#12475;&#12540;&#12472;&#12434;&#12501;&#12483;&#12463;&#12377;&#12427;&#38306;&#20418;&#19978;&#12289;&#30452;&#25509; &lt;code&gt;Math.sqrt(_0 ** 2 + _1 ** 2)&lt;/code&gt; &#12392;&#12399;&#26360;&#12369;&#12394;&#12356;&#12369;&#12393;&#12289;&#12381;&#12358;&#26360;&#12365;&#12383;&#12356;&#20154;&#12399;&#12502;&#12525;&#12483;&#12463;&#20351;&#12387;&#12390;&#12367;&#12384;&#12373;&#12356;&#12290;&lt;/p&gt;

&lt;p&gt;&#20197;&#19979;&#31777;&#21336;&#12394;&#35500;&#26126;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;_ &#12399;&lt;code&gt;LazyCall&lt;/code&gt;&#12398;&#12452;&#12531;&#12473;&#12479;&#12531;&#12473;&#12434;&#36820;&#12375;&#12289;&#21463;&#12369;&#21462;&#12387;&#12383;&#12513;&#12483;&#12475;&#12540;&#12472;&#12434;&#24341;&#25968;&#12392;&#20849;&#12395;&#20445;&#23384;&#12290;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;[:respond_to?, :to_proc]&lt;/code&gt; &#12434;&#12399;&#12376;&#12356;&#12390;&#12356;&#12427;&#12398;&#12399;&#12289;&#24341;&#25968;&#12392;&#12375;&#12390;&#28193;&#12373;&#12428;&#12427;&#26178;&#12395;&#12371;&#12398;&#21839;&#12356;&#21512;&#12431;&#12379;&#12364;&#30330;&#29983;&#12377;&#12427;&#12398;&#12391;&#12289;&#12381;&#12428;&#12434;&#28961;&#35222;&#12377;&#12427;&#12383;&#12417;&#12290;(&#21103;&#20316;&#29992;&#12392;&#12375;&#12390;&#12289;&#28961;&#21517;&#38306;&#25968;&#12391;&#12399;&lt;code&gt;.respond_to? :to_proc&lt;/code&gt; &#12364;&#20351;&#12360;&#12394;&#12367;&#12394;&#12427;&#12392;&#24605;&#12358;)&lt;/li&gt;
&lt;li&gt;&lt;code&gt;to_proc&lt;/code&gt;&#20869;&#12391;&#12289;&#20445;&#23384;&#12375;&#12383;&#12513;&#12483;&#12475;&#12540;&#12472;&#12434;&#12289;proc&#12398;&#24341;&#25968;&#12395;&#36865;&#12426;&#30452;&#12375;&#12390;&#12356;&#12427;&#12290;&lt;/li&gt;
&lt;li&gt;&#20445;&#23384;&#12373;&#12428;&#12383;&#24341;&#25968;&#12398;&#20013;&#12395;&#12289;LazyCall&#12398;&#12452;&#12531;&#12473;&#12479;&#12531;&#12473;&#12364;&#12354;&#12427;&#22580;&#21512;&#12399;&#12289;call &#12375;&#12390;&#12381;&#12398;&#32080;&#26524;&#12392;&#32622;&#12365;&#25563;&#12360;&#12390;&#12356;&#12427;&#12290;&#12371;&#12428;&#12395;&#12424;&#12387;&#12390;&#12289;&lt;code&gt;_ * _&lt;/code&gt; &#12398;&#12424;&#12358;&#12394;&#34920;&#35352;&#12364;&#21487;&#33021;&#12395;&#12394;&#12427;&#12290;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;_0&lt;/code&gt;&#12399;&#12289;&lt;code&gt;_.[0]&lt;/code&gt;&#12398;&#12456;&#12452;&#12522;&#12450;&#12473;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&#20108;&#22812;&#12395;&#12431;&#12383;&#12427;ProxyObject&#29305;&#38598;&#12289;&#12356;&#12363;&#12364;&#12391;&#12375;&#12383;&#12391;&#12375;&#12423;&#12358;&#12363;&#12290;&#12373;&#12390;&#12289;&#26469;&#36913;&#12363;&#12425;&#12399;&#8230;&lt;/p&gt;

&lt;h5&gt;&#36861;&#35352;:2009/10/30&lt;/h5&gt;

&lt;p&gt;Scala&#12398; &lt;code&gt;_&lt;/code&gt; (&#12503;&#12524;&#12540;&#12473;&#12507;&#12523;&#12480;&#27083;&#25991;&#12392;&#21628;&#12406;&#12425;&#12375;&#12356;) &#12399; &lt;code&gt;_ + _&lt;/code&gt;&#12392;&#26360;&#12356;&#12383;&#12392;&#12365;&#12289;&#20108;&#12388;&#12398; &lt;code&gt;_&lt;/code&gt; &#12364;&#21516;&#12376;&#12418;&#12398;&#12434;&#24847;&#21619;&#12375;&#12394;&#12356;&#12381;&#12358;&#12391;&#12377;&#12290;&lt;/p&gt;

&lt;p&gt;&#12392;&#12289;&#38281;&#12376;&#12383;&#26412;&#12398;&#32154;&#12365;&#12395;&#26360;&#12356;&#12390;&#12354;&#12387;&#12383;&#12290;&lt;/p&gt;

&lt;p&gt;&#12354;&#12392;&#12289;&lt;code&gt;_0&lt;/code&gt; &#12394;&#12393;&#12434;&#20351;&#12358;&#12392;&#12289;20&#20493;&#12367;&#12425;&#12356;&#36933;&#12356;&#12290;&#12393;&#12358;&#12375;&#12383;&#12418;&#12398;&#12363;&#12290;&lt;/p&gt;</description>
      <pubDate>Thu, 29 Oct 2009 06:18:00 +0900</pubDate>
      <guid isPermaLink="false">urn:uuid:837fb5c9-f1be-49f3-9d75-02cb83e49cc6</guid>
      <author>nanki</author>
      <link>http://blog.netswitch.jp/articles/2009/10/29/scala-anonymous-function-in-ruby</link>
      <category>noise</category>
      <category>tech</category>
      <category>ruby</category>
      <category>ruby</category>
      <category>scala</category>
      <trackback:ping>http://blog.netswitch.jp/articles/trackback/8652</trackback:ping>
    </item>
    <item>
      <title>&#12383;&#12406;&#12435;Ruby&#12391;&#12399; &#12316; Maybe&#12514;&#12490;&#12489;&#12395;&#24999;&#12428;&#12390; &#12316;</title>
      <description>&lt;p&gt;Haskell&#12395;&#12399;Maybe&#12514;&#12490;&#12489;&#12392;&#12356;&#12358;&#12398;&#12364;&#12354;&#12387;&#12390;&#12289;&#12456;&#12521;&#12540;&#20966;&#29702;&#12434;&#12363;&#12394;&#12426;&#36969;&#24403;&#12394;&#24863;&#12376;&#12395;&#26360;&#12369;&#12390;&#12392;&#12390;&#12418;&#20415;&#21033;&#12381;&#12358;&#12290;&lt;/p&gt;

&lt;p&gt;&#19968;&#26041;&#12289;&#22810;&#12367;&#12398;&#12503;&#12525;&#12464;&#12521;&#12511;&#12531;&#12464;&#35328;&#35486;&#12391;&#12399;&#12289;&lt;/p&gt;

&lt;div class="typocode"&gt;&lt;pre class='prettyprint'&gt;&lt;code class="typocode_default "&gt;request.mobile &amp;amp;&amp;amp; request.mobile.docomo?

File.open('example.txt').read rescue nil # &#12371;&#12428;&#12399;&#12377;&#12371;&#12375;&#27178;&#30528;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;&#12371;&#12358;&#12356;&#12387;&#12383;&#35352;&#36848;&#12434;&#38971;&#32321;&#12395;&#20351;&#12358;&#24517;&#35201;&#12364;&#12354;&#12426;&#12289;&#12394;&#12435;&#12392;&#12363;&#12375;&#12383;&#12356;&#12290;&lt;/p&gt;

&lt;p&gt;&#12381;&#12371;&#12391;&#12289;&lt;/p&gt;

&lt;div class="typocode"&gt;&lt;pre class='prettyprint'&gt;&lt;code class="typocode_default "&gt;class Never
  instance_methods.each do |v|
    undef_method(v) unless %w(__id__ __send__).include?(v)
  end

  def method_missing(*args)
    self
  end

  def end
    nil
  end
end

class Maybe &amp;lt; Never
  def initialize(value)
    @value = value
  end

  def method_missing(*args, &amp;amp;block)
    Maybe.new @value.__send__(*args, &amp;amp;block)
  rescue Exception
    Never.new
  end

  def end
    @value
  end
end

class Object
  def maybe
    Maybe.new(block_given? ? yield : self)
  rescue Exception
    Never.new
  end
end&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;&#19978;&#12398;&#12424;&#12358;&#12394;&#12467;&#12540;&#12489;&#12434;&#23455;&#34892;&#12377;&#12427;&#12392;&#12289;&lt;/p&gt;

&lt;div class="typocode"&gt;&lt;pre class='prettyprint'&gt;&lt;code class="typocode_default "&gt;request.mobile.maybe.docomo?.end # =&amp;gt; true/false or nil

File.maybe.open(&amp;quot;file_does_not_exist.txt&amp;quot;).read.end # =&amp;gt; nil&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;&#12371;&#12358;&#12356;&#12358;&#39080;&#12395;&#26360;&#12367;&#20107;&#12364;&#12391;&#12365;&#12427;&#12424;&#12358;&#12395;&#12394;&#12387;&#12390;&#24184;&#12379;&#12290;
&#36884;&#20013;&#12398;&#12393;&#12371;&#12363;&#12391;&#22833;&#25943;&#12377;&#12427;&#12392;&#12289;&#21336;&#12395;nil&#12364;&#36820;&#12427;&#12290;&lt;/p&gt;

&lt;p&gt;&#12371;&#12398;&#12424;&#12358;&#12395;&#12289;&#21253;&#12435;&#12384;&#12458;&#12502;&#12472;&#12455;&#12463;&#12488;&#12398;&#12501;&#12522;&#12434;&#12377;&#12427;&#12458;&#12502;&#12472;&#12455;&#12463;&#12488;&#12434;&#20351;&#12358;&#25163;&#27861;&#12399;Rails&#12391;&#12399;&#22810;&#29992;&#12373;&#12428;&#12390;&#12356;&#12390;&#12289;&#35501;&#12435;&#12391;&#12415;&#12427;&#12392;&#21106;&#12392;&#27005;&#12375;&#12356;&#12290;ProxyObject&#12392;&#12363;&#21628;&#12406;&#12425;&#12375;&#12356;&#12290;&lt;/p&gt;

&lt;p&gt;&lt;code&gt;class Maybe &amp;lt; Never&lt;/code&gt; &#12398;&#12354;&#12383;&#12426;&#12364;&#12289;&lt;/p&gt;

&lt;p&gt;&#23376;&#12300;&#12362;&#29238;&#12373;&#12435;&#12289;&#36939;&#21205;&#20250;&#32118;&#23550;&#35211;&#12395;&#26469;&#12390;&#12397;&#12301;&lt;br/&gt;
&#29238;&#12300;&#32118;&#23550;&#34892;&#12367;&#12382;&#12301;&lt;/p&gt;

&lt;p&gt;&#19968;&#36913;&#38291;&#24460;&lt;/p&gt;

&lt;p&gt;&#23376;&#12300;&#12362;&#29238;&#12373;&#12435;&#12289;&#36939;&#21205;&#20250;&#32118;&#23550;&#35211;&#12395;&#26469;&#12390;&#12397;&#12301;&lt;br/&gt;
&#29238;&#12300;&#12383;&#12406;&#12435;&#8230;&#12301;&lt;/p&gt;

&lt;p&gt;&#12392;&#12356;&#12358;&#12424;&#12358;&#12394;&#20250;&#35441;&#12434;&#24819;&#20687;&#12375;&#12390;&#12375;&#12414;&#12387;&#12390;&#12289;&#12392;&#12390;&#12418;&#20154;&#38291;&#30340;&#12290;&lt;/p&gt;

&lt;h5&gt;&#21442;&#32771;:&lt;/h5&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href="http://kotonoha.cc/no/167275"&gt;&#12467;&#12488;&#12494;&#12495; - &#12300;&#22810;&#20998;&#12289;&#32118;&#23550;&#12301;&#12392;&#12356;&#12358;&#34920;&#29694;&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;</description>
      <pubDate>Wed, 28 Oct 2009 14:25:00 +0900</pubDate>
      <guid isPermaLink="false">urn:uuid:9fad39b4-04b0-4978-8613-3031ec1dee89</guid>
      <author>nanki</author>
      <link>http://blog.netswitch.jp/articles/2009/10/28/maybe-in-ruby</link>
      <category>tech</category>
      <category>ruby</category>
      <category>haskell</category>
      <category>ruby</category>
      <category>haskell</category>
      <trackback:ping>http://blog.netswitch.jp/articles/trackback/8651</trackback:ping>
    </item>
    <item>
      <title>&#36984;&#25246;&#12375;&#12383;&#25991;&#23383;&#21015;&#12418;&#12375;&#12367;&#12399;&#29694;&#22312;&#12398;URL&#12434;QR&#12467;&#12540;&#12489;&#12395;&#12377;&#12427;bookmarklet</title>
      <description>&lt;p&gt;&#36984;&#25246;&#12375;&#12383;&#25991;&#23383;&#21015;&#12418;&#12375;&#12367;&#12399;&#29694;&#22312;&#12398;URL&#12434;QR&#12467;&#12540;&#12489;&#12395;&#12377;&#12427;bookmarklet&lt;/p&gt;

&lt;div class="typocode"&gt;&lt;pre class='prettyprint'&gt;&lt;code class="typocode_default "&gt;javascript:s=document.getSelection().toString();s=s.length?s:location;open(&amp;quot;http://chart.apis.google.com/chart?cht=qr&amp;amp;chs=200x200&amp;amp;choe=UTF-8&amp;amp;chl=&amp;quot;+encodeURIComponent(s),'_blank')&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;Safari&#12391;&#12375;&#12363;&#35430;&#12375;&#12390;&#12394;&#12356;&#12290;
Google Chart API &#20415;&#21033;&#12290;&lt;/p&gt;

&lt;h5&gt;&#21442;&#32771;:&lt;/h5&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href="http://code.google.com/apis/chart/"&gt;Developer&amp;#8217;s Guide - Google Chart API - Google Code&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;</description>
      <pubDate>Tue, 27 Oct 2009 20:22:00 +0900</pubDate>
      <guid isPermaLink="false">urn:uuid:b2afdf32-5a2e-4ae7-88be-03a301c782e4</guid>
      <author>nanki</author>
      <link>http://blog.netswitch.jp/articles/2009/10/27/qrcode-bookmarklet</link>
      <category>javascript</category>
      <category>venry</category>
      <trackback:ping>http://blog.netswitch.jp/articles/trackback/8650</trackback:ping>
    </item>
    <item>
      <title>&#20170;&#26085;&#12398;golf - &#12427;&#12403;&#12414;&#12468;&#12523;&#12501;&#31532;&#19971;&#22238;</title>
      <description>&lt;p&gt;&#26376;&#12395;&#19968;&#24230;&#12398;golf. &#12392;&#12356;&#12358;&#12363;&#12289;&#20154;&#12364;&#12420;&#12387;&#12390;&#12356;&#12427;&#12398;&#12434;&#30446;&#12395;&#12377;&#12427;&#12392;&#12289;&#25163;&#12434;&#20986;&#12375;&#12383;&#12367;&#12394;&#12387;&#12390;&#12367;&#12427;&#12290;&lt;br/&gt;
&#12383;&#12406;&#12435;&#12289;&#23376;&#20379;&#12364;&#12503;&#12521;&#12514;&#12487;&#12523;&#32068;&#12415;&#31435;&#12390;&#12390;&#12356;&#12427;&#12398;&#12434;&#35211;&#12390;&#12300;&#12385;&#12423;&#12387;&#12392;&#12362;&#29238;&#12373;&#12435;&#12395;&#12363;&#12375;&#12390;&#12415;&#12394;&#12373;&#12356;&#12301;&#12392;&#12356;&#12358;&#12479;&#12452;&#12503;&#12290;&lt;/p&gt;

&lt;p&gt;&#32080;&#23616;&#12289;&lt;a href="http://blog.netswitch.jp/articles/2009/07/02/rubyist-magazine-26-golf"&gt;&#21069;&#22238;&lt;/a&gt;&#12398;&#26368;&#30701;&#12399;23B&#12384;&#12387;&#12383;&#12425;&#12375;&#12356;&#12290;&#22793;&#25968;&#21517;&#12414;&#12391;&#21516;&#12376;&#12384;&#12387;&#12383; :)&lt;br/&gt;
&#25991;&#23383;&#25968;&#12434;&#21066;&#12427;&#12392;&#12356;&#12358;&#20849;&#36890;&#12398;&#30446;&#30340;&#12364;&#12289;&#22793;&#25968;&#21517;&#12363;&#12425;&#24847;&#21619;&#12377;&#12425;&#22890;&#12358;&#12398;&#12384;&#12429;&#12358;&#12363;&#12290;&lt;/p&gt;

&lt;p&gt;20B&#12392;&#12356;&#12358;&#22082;&#12399;&#12394;&#12435;&#12384;&#12387;&#12383;&#12435;&#12384;&#12429;&#12358;&#8230;&lt;/p&gt;

&lt;p&gt;&#21453;&#30465;&#12434;&#29983;&#12363;&#12375;&#12390;&#12289;&#20170;&#22238;&#12399;&#12289;27B&#12414;&#12391;&#32302;&#12435;&#12384;&#12392;&#12371;&#12429;&#12391;&#23517;&#12363;&#12379;&#12390;&#12362;&#12367;&#12290;&lt;/p&gt;

&lt;p&gt;&#32154;&#12365;&#12395;&#12354;&#12427;&#12398;&#12399;&#12362;&#27671;&#12395;&#20837;&#12426;&#12398;&#31572;&#12360;&#12384;&#12364;&#12289;&#12497;&#12540;&#12290;&lt;/p&gt;

&lt;p&gt;&#36861;&#35352;: 2009/09/17
&#12356;&#12367;&#12388;&#12363;&#12398;&#26041;&#37341;&#12391;&#20351;&#12387;&#12390;&#12356;&#12427;&#26041;&#27861;&#12434;&#32068;&#12415;&#21512;&#12431;&#12379;&#12383;&#12425;23B&#12395;&#12394;&#12387;&#12383;&#12290;&#39514;&#12365;&#12290;&lt;/p&gt;

&lt;h5&gt;&#21442;&#32771;:&lt;/h5&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href="http://blog.netswitch.jp/articles/2009/07/02/rubyist-magazine-26-golf"&gt;netswitch! | &#20170;&#26085;&#12398;golf - &#12427;&#12403;&#12414;&#12468;&#12523;&#12501;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://jp.rubyist.net/magazine/?0027-RubiMaGolf"&gt;Rubyist Magazine - &#12427;&#12403;&#12414;&#12468;&#12523;&#12501; &#12304;&#31532; 7 &#22238;&#12305;&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;div class="typocode"&gt;&lt;pre&gt;&lt;code class="typocode_ruby "&gt;&lt;span class="ident"&gt;puts&lt;/span&gt; &lt;span class="ident"&gt;gets&lt;/span&gt;&lt;span class="punct"&gt;.&lt;/span&gt;&lt;span class="ident"&gt;scan&lt;/span&gt;&lt;span class="punct"&gt;(/&lt;/span&gt;&lt;span class="regex"&gt;(?=(.+$))&lt;/span&gt;&lt;span class="punct"&gt;/).&lt;/span&gt;&lt;span class="ident"&gt;reverse&lt;/span&gt; &lt;span class="comment"&gt;# 35B&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;</description>
      <pubDate>Mon, 14 Sep 2009 15:02:00 +0900</pubDate>
      <guid isPermaLink="false">urn:uuid:31eed9a5-2648-4072-8ae2-0fabce299a8c</guid>
      <author>nanki</author>
      <link>http://blog.netswitch.jp/articles/2009/09/14/rubyist-magazine-27-golf</link>
      <category>noise</category>
      <category>tech</category>
      <category>life</category>
      <category>ruby</category>
      <category>golf</category>
      <category>ruby</category>
      <trackback:ping>http://blog.netswitch.jp/articles/trackback/8649</trackback:ping>
    </item>
    <item>
      <title>Windows&#12434;&#33258;&#21205;&#21270; - EventGhost&#20415;&#21033;</title>
      <description>&lt;p&gt;&lt;img src="/files/eventghost.png" alt="eventghost"/&gt;&lt;/p&gt;

&lt;p&gt;InternetExplorer&#12398;&#12486;&#12473;&#12488;&#29992;&#12395;&#39164;&#12387;&#12390;&#12356;&#12427;&#12289;VMWare&#19978;&#12398;Windows&#12395;&#26032;&#12383;&#12394;&#20351;&#21629;&#12364;&#35506;&#12379;&#12425;&#12428;&#12383;&#12290;
&#25658;&#24111;&#12471;&#12511;&#12517;&#12524;&#12540;&#12479;&#12391;&#12398;&#12486;&#12473;&#12488;&#12384;&#12290;&lt;/p&gt;

&lt;p&gt;&#12383;&#12384;&#12289;&#12471;&#12511;&#12517;&#12524;&#12540;&#12479;&#12399;3&#12461;&#12515;&#12522;&#12450;&#20998;&#12354;&#12387;&#12390;&#12289;&#25805;&#20316;&#26041;&#27861;&#12418;&#20840;&#37096;&#36949;&#12358;&#12398;&#12391;&#12289;&#12371;&#12428;&#12363;&#12425;&#12370;&#12435;&#12394;&#12426;&#12377;&#12427;&#12371;&#12392;&#12434;&#24605;&#12358;&#12392;&#12370;&#12435;&#12394;&#12426;&#12377;&#12427;&#12290;&lt;/p&gt;

&lt;p&gt;&#12381;&#12371;&#12391;&#12289;&#12392;&#12426;&#12354;&#12360;&#12378;&#12289;&#19968;&#30330;&#12391;reload&#12364;&#12391;&#12365;&#12427;&#12424;&#12358;&#12395;&#12394;&#12425;&#12394;&#12356;&#12363;&#26041;&#27861;&#12434;&#25506;&#12375;&#12390;&#12415;&#12383;&#12290;&lt;/p&gt;

&lt;h3&gt;&#12506;&#12540;&#12472;&#12398;&#12522;&#12525;&#12540;&#12489;&lt;/h3&gt;

&lt;p&gt;&lt;a href="http://www.eventghost.org/"&gt;EventGhost&lt;/a&gt; &#12392;&#12356;&#12358;&#12398;&#12364;&#12354;&#12427;&#12425;&#12375;&#12356;&#12398;&#12391;&#12289;&#12480;&#12454;&#12531;&#12525;&#12540;&#12489;&#12377;&#12427;&#12290;
&#12506;&#12540;&#12472;&#12398;&#12522;&#12525;&#12540;&#12489;&#12399;&#12289;&#25351;&#23450;&#12375;&#12383;&#21517;&#21069;&#12398;&#12454;&#12451;&#12531;&#12489;&#12454;&#12434;&#25506;&#12375;&#12390;&#12289;F5&#12461;&#12540;&#12434;&#25276;&#12377;&#12371;&#12392;&#12391;&#23455;&#29694;&#12290;&#12371;&#12428;&#12434;&#12289;3&#12461;&#12515;&#12522;&#12450;&#20998;&#35373;&#23450;&#12290;(&#12477;&#12501;&#12488;&#12395;&#12424;&#12387;&#12390;&#12461;&#12540;&#12399;&#36949;&#12358;)&lt;/p&gt;

&lt;p&gt;&#12354;&#12387;&#12373;&#12426;&#12392;&#12391;&#12365;&#12390;&#12375;&#12414;&#12387;&#12383;&#12290;&lt;/p&gt;

&lt;h3&gt;&#12461;&#12515;&#12503;&#12481;&#12515;&lt;/h3&gt;

&lt;p&gt;&#12381;&#12428;&#12384;&#12369;&#12384;&#12392;&#38754;&#30333;&#12367;&#12394;&#12356;&#12398;&#12391;&#12289;&#12522;&#12525;&#12540;&#12489;&#12375;&#12383;&#24460;&#12289;&#30011;&#20687;&#12434;&#12461;&#12515;&#12503;&#12481;&#12515;&#12377;&#12427;&#12424;&#12358;&#12395;&#12375;&#12383;&#12290;
IrfanView&#12395;&#12399;&#12289;&#36215;&#21205;&#12458;&#12503;&#12471;&#12519;&#12531;&#12391;&#12450;&#12463;&#12486;&#12451;&#12502;&#12394;&#12454;&#12451;&#12531;&#12489;&#12454;&#12398;&#20869;&#23481;&#12434;&#12461;&#12515;&#12503;&#12481;&#12515;&#12377;&#12427;&#27231;&#33021;&#12364;&#12354;&#12427;&#12425;&#12375;&#12356;&#12398;&#12391;&#12289;&#12381;&#12428;&#12434;&#20351;&#12358;&#12290;
&#36215;&#21205;&#12458;&#12503;&#12471;&#12519;&#12531;&#12371;&#12435;&#12394;&#24863;&#12376;&#12290;&lt;/p&gt;

&lt;p&gt;&lt;code&gt;i_view32.exe /capture=3 /convert="\\.host\Shared Folders\Public\softbank.png"&lt;/code&gt;&lt;/p&gt;

&lt;h3&gt;&#12454;&#12455;&#12502;&#12469;&#12540;&#12496;&lt;/h3&gt;

&lt;p&gt;&#12373;&#12425;&#12395;&#12289;&#12503;&#12521;&#12464;&#12452;&#12531;&#12434;&#35211;&#12390;&#12415;&#12427;&#12392;&#12289;WebServer&#12392;&#12356;&#12358;&#12398;&#12364;&#12354;&#12427;&#12290;
&#12371;&#12398;&#12503;&#12521;&#12464;&#12452;&#12531;&#12434;&#36861;&#21152;&#12377;&#12427;&#12392;&#12289;&#25351;&#23450;&#12375;&#12383;&#12509;&#12540;&#12488;&#12391;HTTP&#12469;&#12540;&#12496;&#12364;&#36215;&#21205;&#12375;&#12289;&#25351;&#23450;&#12375;&#12383;&#12501;&#12457;&#12523;&#12480;&#12398;&#20869;&#23481;&#12364;&#35211;&#12425;&#12428;&#12427;&#12424;&#12358;&#12395;&#12394;&#12427;&#12290;&lt;/p&gt;

&lt;p&gt;&#12373;&#12425;&#12395;&#12289;&#12463;&#12456;&#12522;&#12540;&#12473;&#12488;&#12522;&#12531;&#12464;&#12395;&#12289;HTTP.reload &#12392;&#12356;&#12358;&#25991;&#23383;&#21015;&#12434;&#12388;&#12369;&#12390;GET&#12394;&#12393;&#12377;&#12427;&#12392;&#12289;&#21516;&#12376;&#21517;&#21069;&#12398;&#12452;&#12505;&#12531;&#12488;&#12364;&#30330;&#29983;&#12375;&#12390;&#12289;&#12450;&#12463;&#12471;&#12519;&#12531;&#12434;&#12488;&#12522;&#12460;&#12540;&#12391;&#12365;&#12427;&#12424;&#12358;&#12395;&#12394;&#12427;&#12425;&#12375;&#12356;&#12290;&lt;/p&gt;

&lt;p&gt;&#12381;&#12435;&#12394;&#12431;&#12369;&#12391;&#12289;&#26368;&#32066;&#30340;&#12395;&#12473;&#12463;&#12522;&#12540;&#12531;&#12471;&#12519;&#12483;&#12488;&#12398;&#12424;&#12358;&#12394;&#27083;&#25104;&#12395;&#12394;&#12426;&#12289;Safari&#12363;&#12425;&#12289;&lt;code&gt;http://192.168.1.1/?HTTP.reload&lt;/code&gt; &#12394;&#12393;&#12392;&#12377;&#12427;&#12392;&#12289;&#12522;&#12525;&#12540;&#12489;&#12375;&#12390;&#12473;&#12463;&#12522;&#12540;&#12531;&#12471;&#12519;&#12483;&#12488;&#12364;&#35211;&#12425;&#12428;&#12427;&#12424;&#12358;&#12395;&#12394;&#12387;&#12383;&#12290;
(&#12473;&#12463;&#12522;&#12540;&#12531;&#12471;&#12519;&#12483;&#12488;&#12364;&#25774;&#12425;&#12428;&#12427;&#12414;&#12391;&#12395;&#12399;&#12479;&#12452;&#12512;&#12521;&#12464;&#12364;&#12354;&#12427;&#12398;&#12391;&#12289;javascript&#12391;&#23450;&#26399;&#30340;&#12395;&#30011;&#20687;&#12434;&#12522;&#12525;&#12540;&#12489;&#12377;&#12427;)&lt;/p&gt;

&lt;p&gt;&#12454;&#12455;&#12502;&#12469;&#12540;&#12496;&#27231;&#33021;&#12399;&#12363;&#12394;&#12426;&#20415;&#21033;&#12290;&lt;/p&gt;

&lt;h3&gt;&#21839;&#38988;&#28857;&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;&#12522;&#12525;&#12540;&#12489;&#12398;&#32066;&#20102;&#12434;&#26908;&#30693;&#12391;&#12365;&#12394;&#12356;&#12398;&#12391;&#12289;2&#31186;&#24453;&#12388;&#12289;&#12415;&#12383;&#12356;&#12394;&#12371;&#12392;&#12434;&#12375;&#12394;&#12356;&#12392;&#12356;&#12369;&#12394;&#12356;&#12290;&lt;/li&gt;
&lt;li&gt;&#12450;&#12463;&#12486;&#12451;&#12502;&#12394;&#12454;&#12451;&#12531;&#12489;&#12454;&#12434;&#12461;&#12515;&#12503;&#12481;&#12515;&#12377;&#12427;&#12398;&#12391;&#12289;&#25490;&#20182;&#30340;&#12395;&#12375;&#12363;&#20966;&#29702;&#12391;&#12365;&#12394;&#12356;&#12290;&lt;/li&gt;
&lt;/ul&gt;

&lt;h5&gt;&#21442;&#32771;:&lt;/h5&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href="http://www.eventghost.org/"&gt;EventGhost&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;</description>
      <pubDate>Wed, 12 Aug 2009 22:40:00 +0900</pubDate>
      <guid isPermaLink="false">urn:uuid:7d7d244f-3b03-457b-8fdd-e437ff45aee8</guid>
      <author>nanki</author>
      <link>http://blog.netswitch.jp/articles/2009/08/12/windows-automation-by-eventghost</link>
      <category>web</category>
      <category>tech</category>
      <category>windows</category>
      <enclosure type="image/png" url="http://blog.netswitch.jp/files/eventghost.png" length="30546"/>
      <trackback:ping>http://blog.netswitch.jp/articles/trackback/8648</trackback:ping>
    </item>
  </channel>
</rss>
