2011-01-01から1年間の記事一覧
九州大学医学部のほうから来たKさん*1が開発した「ゴーストfor文」がものすごい。 普通の大人なら、1分で指定回数繰り返すfor文が書けるようになる。 やりかたは下の図を見てね。 変数iを使って5回繰り返す場合 ・iを①、②、④に入れる ・5を③に入れる ・答え…
数字も表示されてないのは、やっぱFizzBuzzとして失格だと思うので、ちゃんと数字が表示されるようにがんばりました。 実行したらこうなります。ちゃんと数字が出てます!(追記:でも間違ってる!) Exception in thread "main" java.lang.reflect.InvocationT…
コピペプログラミングでごめんなさい・・・ 数値も出力できてないし・・・ FizzBuzzもエレガントに書けないなんて・・・ package javaapplication1; public class FizzBuzzEx { public static void main(String[] args) { new FizzBuzzEx().n(1); } public v…
このところScalaで言語を実装してみたりしてたんですが、何をしてたかというと、「プログラミング言語の基礎概念」という本に書いてあることを実装してみてたのです。 この「プログラミング言語の基礎概念」、博多駅のところの紀伊國屋に行ったときにたまた…
よくアルゴリズムの話とかすると「アルゴリズムとか業務で使わないから。ライブラリあるから」みたいな話が出ますね。今日もTwitterでkumagiさんが「競技プログラミングが業務で役に立たないって言ってる人は・・・」って話してたわけです。 でもまあ、アル…
Scalaの勉強をはじめたので、とりあえず簡単なパーサーを作ってみてます。 http://d.hatena.ne.jp/nowokay/20111109#1320815540 前回でFizzBuzzを動かしてみました。 http://d.hatena.ne.jp/nowokay/20111118#1321590289 これで、言語としては最低限の機能が…
Scalaの勉強をはじめたので、とりあえず簡単なパーサーを作ってみてます。 http://d.hatena.ne.jp/nowokay/20111109#1320815540 前回、関数呼出しのチェーンができるようにしました。 http://d.hatena.ne.jp/nowokay/20111117#1321499255 ここらで、ちょっと…
Scalaの勉強をはじめたので、とりあえず簡単なパーサーを作ってみてます。 http://d.hatena.ne.jp/nowokay/20111109#1320815540 前回で関数リテラルまでできました。 http://d.hatena.ne.jp/nowokay/20111116#1321432559 ただ、 def high(x) ={y => x * y}; …
Scalaの勉強をはじめたので、とりあえず簡単なパーサーを作ってみてます。 http://d.hatena.ne.jp/nowokay/20111109#1320815540 前回でレキシカルスコープとクロージャを導入しました。 http://d.hatena.ne.jp/nowokay/20111115#1321333375 ときたら、関数リ…
Scalaの勉強をはじめたので、とりあえず簡単なパーサーを作ってみてます。 http://d.hatena.ne.jp/nowokay/20111109#1320815540前回は関数が導入されて、とうとう汎用処理がかけるプログラム言語になりました。 http://d.hatena.ne.jp/nowokay/20111114#1321…
Scalaの勉強をはじめたので、とりあえず簡単なパーサーを作ってみてます。 http://d.hatena.ne.jp/nowokay/20111109#1320815540 前回、変数のスコープを導入しました。 http://d.hatena.ne.jp/nowokay/20111111#1320987235 そうすると、やっぱり関数定義した…
このところフォローされたアカウントの中に、どっかで拾ったかわいい女の子アイコンで、つまりスパム臭いアイコンで、発言0でフォロー数も200くらい、フォロー返し50くらいという感じのアカウントがいくつかあった。 とくに宣伝ツイートしてるわけでもないし…
これすごくおもしろいなーと思って。 TPPについての首相の会見のあとから「#野田の殺し方考えようぜ」というハッシュタグが流行り出したということで、見てみたら「こんなタグが流行るなんてどうにかしてる」という内容ばかりで、「こんなタグで発言してるや…
Scalaの勉強をはじめたので、とりあえず簡単なパーサーを作ってみてます。 http://d.hatena.ne.jp/nowokay/20111109#1320815540 前回で変数導入しました。 http://d.hatena.ne.jp/nowokay/20111110#1320899264 けど、 val aa = 23; println("pre block:" + a…
Scalaの勉強をはじめたので、とりあえず簡単なパーサーを作ってみてます。 http://d.hatena.ne.jp/nowokay/20111109#1320815540 前回で、コードブロックを導入して複数の式が評価できるようになりました。 http://d.hatena.ne.jp/nowokay/20111108#132074507…
Scalaの勉強をはじめたので、とりあえず簡単なパーサーを作ってみてます。 一段落ついたらまとめを作ろうと思ってたのですけど、先も長そうなので、ここいらで目次をつくっておきます。 Scalaでパーサーを作る基本 Scalaでパーサーを作ってみる〜1:構文定義 …
Scalaの勉強をはじめたので、とりあえず簡単なパーサーを作ってみてます。 http://d.hatena.ne.jp/nowokay/20111101#1320102262 前回は、文字列とprintlnを導入しました。 http://d.hatena.ne.jp/nowokay/20111107#1320637899 そうすると、複数の式を実行し…
Scalaの勉強をはじめたので、とりあえず簡単なパーサーを作ってみてます。 http://d.hatena.ne.jp/nowokay/20111101#1320102262 前回はif式で条件分岐してみました。 http://d.hatena.ne.jp/nowokay/20111106#1320542912 ここいらで計算過程を表示できるよう…
Scalaの勉強をはじめたので、とりあえず簡単なパーサーを作ってみてます。 http://d.hatena.ne.jp/nowokay/20111101#1320102262 前回で、簡単な計算ができるようになりました。 http://d.hatena.ne.jp/nowokay/20111105#1320463263 ということで、今回は、ブ…
Scalaの勉強をはじめたので、とりあえず簡単な数式パーサーを作ってみてます。 http://d.hatena.ne.jp/nowokay/20111101#1320102262 前回は、構文木のオブジェクトを生成しました。 http://d.hatena.ne.jp/nowokay/20111104#1320365981 これで、構文木が扱え…
Scalaの勉強をはじめたので、とりあえず簡単な数式パーサーを作ってみてます。 前回は、とりあえず構文規則を定義しました。 Scalaでパーサーを作ってみる〜1:構文定義 - きしだのはてな 今回は、その構文規則からASTオブジェクトを生成しようと思います。 …
書籍での演習を著者に無断でUstすることが問題になるかどうか。 まず、あらかじめ、これは法的な正しさは保証しないことをお断りしておきます。 書籍のサンプルは著作物か まず、書籍のサンプルが著作物になるかどうか。 これは、単体では著作物にならない可…
Scalaの勉強をはじめました。 で、なんかパーサーコンビネータというのがあるらしく、パーサーが簡単に作れるらしく、じゃあパーサー作ってみるのがScalaの勉強にいいんじゃないかということで、簡単なパーサーを作ってみることにします。 とりあえず構文定…
PHP製のECサイトパッケージに、EC-CUBEとLive Commerceってのがあります。 http://www.ec-cube.net/ http://www.live-commerce.com/ 機能はLive-Commerceのほうが断然豊富です。 でも、がっつりいじくることを前提にすると、EC-CUBEのほうがいいです。 いじ…
先日Twitterにこんなことを書いた。 なにやってるかはコード見ればわかる。なにやろうとしてるかはコードみてもわからんからコメント書け。 そうしたところ、変数・関数(メソッド)に適切な名前をつければ改めてコメントの必要はないんじゃないかという指摘を…
ジョン・サールの「中国語の部屋」という話がある。 http://www.h5.dion.ne.jp/~terun/doc/chugokugo.html 部屋に閉じ込められたイギリス人が、中国語の手紙をうけとる。イギリス人は、手元にある「中国語で返信」手順書にしたがって、手紙にかかれた記号か…
Firefox7のロケーションバーでは、http:// が表示されないようになっています。 これはこれでいいし、URLを選択してコピーしたときはhttp:// が入るのでいいのですが、URLを編集したときはコピーしてもhttp:// が入りません。 utm_sourceなどの無駄パラメー…
そのまま挫折しましょう。
さて、アルゴリズムの勉強のしかたと、ラムダ計算の勉強のしかたの目星をつけました。 アルゴリズムの勉強のしかた - きしだのはてな ラムダ計算の勉強のしかた、プログラム意味論 - きしだのはてな これでここで書いたプログラムの理論の基礎は勉強できたこ…
先日のエントリで手続きを記述するという側面と、式を記述するという2つの側面があるということを書きました。 プログラムの理論とはなにか そして、手続きの性質として代表的な、アルゴリズムについての勉強のしかたについてまとめてみました。 アルゴリズ…