!kiyoka.blog.2006_04 RSSPLAIN

Related pages: !kiyoka.blog.list
3543555555555555505555555555555555555555555555555555555555555555555555555555555555555552055555555550555555555550555555555555550555555555555555550555555555555555105
3

kiyoka日記。NendoSekkaの開発や、最近思うことなど

5

最新10件!kiyoka.blog   過去記事一覧!kiyoka.blog.list

4

kiyoka.blog_header 

3

このブログを書いている人: 西山 清香(kiyoka) - twitter: @kiyokaEXT

5

5

 

5

 

5

kiyoka.2006_04_30[Sumibi] SumibiWebAPIを使ったサイトが登場

5

Sumibi.orgEXTではSumibiWebAPIというSOAP APIを公開しています。

5

このAPIを使えば世界中のサイトからSOAPを使って漢字変換ができます。いわゆるMash-upです。

5

そして遂にそのMash-upサイトが登場しました。日ル-ル日辞書EXTです。(画面はこんな感じです。)

5

Sumibiで日本語を入力し、ルーマニア語を辞書引きできます。

5

作者の方のブログはこちらEXTです。(ルーマニアの美しい写真が沢山...)

5

Sumibiも社会の役に立っているようですね。モチベーションが上がります。^_^

5
 日ル-ル日辞書
5
 2923535381_f50b307c27
5

 

0

comment (disabled)

5

 

5

5

 

5

 

5

kiyoka.2006_04_22[プログラミング] 何でもGauche

5

Gaucheという処理系は使えます。

5

僕のプライベートなプログラミングは全てGaucheになってきました。まさに、なんでもGaucheです。

5

何がそんなに良いのか。

5

今日はその辺りを書いてみたいと思います。

5

それでは、箇条書きで。

5

 

5
Lisp系言語なので生産性が高い
5

いままで、Emacs LispやGaucheなどのLisp系言語をやってきて思うのは、他の手続き型言語に比べて生産性が高いということです。

5

関数型言語一般に言える事だと思いますが、手続的なプログラミングではなく宣言的にプログラミングすることで一行で表現できる意味濃度が高くなります。

5

関数型言語でプログラミングしたことのない人には想像しにくいと思いますので、About HaskellEXTの関数型言語とは?の部分を引用しておきます。非常に分かりやすい説明がされています。(Scheme言語の説明ではないですが同じ関数型言語であるScheme言語の説明としてもそのまま通ります。)

5
 About HaskellEXT
5
 関数型言語とは?
5
 
5
 C, Java, Pascal, Adaといった言語は命令型(imperative)言語です。これらは
5
 逐次実行されるコマンドの列により構成されているという意味で'命令型'と呼
5
 んでいます。
5
 Haskellは関数型言語です。関数型プログラムはただ一つの式からなり、それが
5
 評価されることによりプログラムは実行されます。
5
 表計算ソフトを使ったことがある人は関数型プログラミングを経験済みだと言
5
 えるでしょう。表計算ソフトでは各セルの値を、他のセルの値を基に決定しま
5
 す。ここで注目されるのは何を計算するのかであり、どう計算されるかではあ
5
 りません。例えば
5
 
5
 - セルが計算される順序は指定されません。- その代わりに表計算ソフトがそ
5
   れぞれのセルの依存性に応じてセルの計算をしてくれるであろうという考え
5
   が根底にあります。
5
 
5
 - 表計算ソフトがメモリをどのように配置するかを指定することはありません。
5
   - むしろ、表計算ソフトが表面的には無限のセルの列があるように見せてく
5
   れて、実際に使用される時に初めてメモリを配置してくれることを期待しま
5
   す。
5
 
5
 - ほとんどの場合、各セルの値は、その値を計算するためのコマンドの列では
5
   なく、ただ一つの式により指定されます。 (式の中の部分式の評価順は問わ
5
   れません)。
5
 
5
 この表計算ソフトにおける計算の順序が指定されないということから、代入と
5
 いう概念はそれほど役にたたないという面白いことが言えます。
5
 とりわけ、もし代入がいつ起こるか正確にわからないのであれば、それを有効
5
 利用することはできません!
5
 このことは、基本的に代入文を慎重に並べていくことにより計算を構成してい
5
 く C言語や、メソッドの呼び出し順が重要となるJavaといったような慣習的な
5
 言語とはかなり対称的です。
5
 このレベルの低い'どう' ではなくレベルの高い'何' に焦点を当てているのが、
5
 関数型言語が他と最も異なる特徴と言えます。
5
 他のよくしられた関数型言語に近い言語として、標準的なデータベースクエリー
5
 言語である SQLがあります。
5
 SQLのクエリーは投射、選択、結合などを含めた式になります。クエリーには
5
 どの関係が計算されるかが記述され、どのように計算するかは記述されません。
5
 もちろんクエリーはどのような順序で評価されても構いません。
5
 SQLの実装の多くは、(考え得る中で)最も最適な式の評価順序を見つけること
5
 でクエリーの最適化を行ないます。
5

 

5
ライブラリが充実している
5

充実している上にバランスが良いのが特徴です。

5

作者のShiroさんのバランス感覚は外の言語処理系の作者をしのぐ素晴らしさです。

5

 

5
日本語がネイティブサポートされている(UTF-8)
5

UTF-8を自然に扱え日本語の正規表現なども問題なくいけます。ソースコードもUTF-8で書けるのでUTF-8 onlyの世界が実現します。

5

というような理由でオススメです。

5

Lisp系言語では実用的なアプリが作れないというイメージをお持ちの方は一度試してみてはいかがでしょうか。

5

僕は今のところ、利用するばっかりでGaucheのライブラリ開発などにはうまくフィードバックできていないのですが、

5

もっとスキルを高めてフィードバックしていきたいと思っています。

5

 

2

COMMENTMario

What a joy to find soemnoe else who thinks this way.

0

comment (disabled)

5

5

 

5

 

5

kiyoka.2006_04_20[Sumibi] サーバー負荷軽減のためSSLの使用を縮小へ

5

Sumibi.orgのCPU負荷が高くなってきたためSSL暗号化への誘導をやめました。

5

縮小はAjax版のみで、Emacsからの接続は今後もSSLのみとなります。

5

おそらく、Sumibi.orgのWebページ上で入力される文章はメールやブログがほとんどだと思います。

5

Sumibi.orgで作られた文章をメールやブログへコピー・ペーストすれば、暗号化なしの場所に出ていくはずなので問題は無いと思っています。

5

もし、この変更に関係する問題点などありましたら教えて頂けると幸いです。

5

 

0

comment (disabled)

5

5

 

5

 

5

kiyoka.2006_04_18[Webリーダー] R@eply.orgのその後

5

メール配信型WebリーダーR@eply.orgEXTを公開してから約1ヶ月がたちましたが、少しづつユーザーが増えていっている感じです。

5

平均すると二日に1人程度の割合でユーザー登録頂いています。

5

メール配信形WebリーダーR@eply.orgEXTのサイトでは本当に最低限の説明しかできていないにもかかわらず、天気情報サイトや株価情報サイトなど、上手に使っていらっしゃるユーザーも出てきており、『ほー、なるほど、そんな使い方があるのかー』と関心させられます。

5

特に、nikkeibp.jp - 新着記事一覧EXTは、R@eply.orgで読みやすいサイトですね。メールに一つの記事がピッタリ入ります。

5

今後ユーザーが増えてきたら、登録サイトランキング等のページを作って、ユーザーみんなでもっと便利な使い方を発見できるようにしたいと思います。

5

どんどん使ってご意見頂ければと思います。

5

 

0

comment (disabled)

5

5

 

5

 

5

kiyoka.2006_04_10[Sumibi] 僕の財布もチープ革命?

5

Sumibi.orgEXTは僕のポケットマネーで運用されています。

5

マシンの費用は10万円弱で、何とかサイトの立ちあげには十分でした。まさに『チープ革命』です。

5

しかし、最近のアクセスの増加にともなって徐々に反応が重くなってきています。

5

最初のころは、すいすい漢字変換できていたのですが、もうすぐ限界が見えてきています・

5

もし、これ以上のアクセスが来た場合は、マシンの増強が必要になってきます。増強したら僕の財布の方が先に『チープ革命』になってしまいます。

5

Adsenseの収入で丁度バランスするかなと思っていたのですが、プロバイダに収める固定IPアドレスの追加費用を賄うのがやっとです。

5

というわけで、Sumibi.orgが重いなと感じた場合でも、そういう事情があるんだなぁということで大目に見てやってくださいね。

5

※これが、アクセスの増加グラフです。9月末にアンテナの様に一本伸びているのがITProで紹介されたEXT日の前後です。そう考えると、3月から4月は、まるでそれが毎日続いているような状況です。凄くなったもんです。

5

2923535377_ea0c7ea0b2_o

5

 

0

comment (disabled)

5

5

 

5

 

5

kiyoka.2006_04_07[創作心理] やさしい機能仕様 - なぜわざわざ書く必要があるのか?

5

有名なJoel on Softwareの中の やさしい機能仕様 - なぜわざわざ書く必要があるのか?EXTを読みました。

5

これには同意します。

5

Sumibi.orgEXTMail配信型WebリーダーR@eply.orgEXTも機能仕様書をじっくり書いてからプログラムを実装しはじめました。

5

機能仕様を書くことは重要だと思います。

5

Mail配信型WebリーダーR@eply.orgEXTの場合は、機能仕様を書き始める前は漠然と、iアプリとしてテキストブラウザを作る予定でした。

5

まず機能仕様を書いてみて、僕のほしい機能はiアプリではできそうもないということが早い段階でわかりました。

5

特に、RSSリーダーとして使うためコンテンツをPUSH型にしたかったのと大量のタブ(しかも未読機能付き)をサポートしたかったのでiアプリで作るのは大変そうだということが明らかになりました。

5

その結果思いついた実装手段がHTMLメールです。(iモードメールの世界では『デコメール』と呼ばれています。)

5

もし、iアプリとして実装していたら途中で疲れ果ててしまってサービス開始できなかったかも知れません。

5

やっぱり実装方法は抜きにして一度サービスを文章化してみるべきです。

5

これは個人で余暇を費やしてプログラムを作る場合、なおさらです。

5

皆さんも、趣味とはいえど、むしろ趣味だからこそ貴重な時間を有効に活用するために、作る前に機能仕様を書いてみてはいかがでしょうか。

5

 

0

comment (disabled)

5

5

 

5

 

5

kiyoka.2006_04_04[プログラミング] S式暗号

5

もし、貴方の書いたソフトウェアをオープンソースにしたいが、ソースコードを暗号化したいという複雑な要求があったとします。

5

僕はその解決方法を知っています。それはS式で書くことです。

5

そうしておけば、JavaやPHPしか分からない人にとっては、強力な暗号となります。

5

その人たちはあまりの小括弧の多さに『うへぇーダメだー』となります。

5

...というのは冗談で、S式は本当に開発効率が高い記述言語です。

5

最近、僕はS式でプログラミングすることが多くなってきました。

5

SumibiもR@eply.orgもS式で書かれています。

5

でも、S式でオープンソースソフトウェアを公開すると、読める人が少ないせいか協力者を得ることが難しくなります。

5

近年少しづつ、Lisp系言語への回帰傾向がいたるところで始まっているようなので、それも改善されてくるのかも知れません。

5

というか、そうなればいいなぁー。^_^;

5

 

1

COMMENTRajinder

That takes us up to the next level. Great potisng.

0

comment (disabled)

5