ラベル Ruby の投稿を表示しています。 すべての投稿を表示
ラベル Ruby の投稿を表示しています。 すべての投稿を表示

2008年11月20日木曜日

Rubyのスコープ・制御構造

while や for がスコープを作らないのに対し、loop や each などのイテレータはスコープを作ります


loopやeachはスコープあるんですね・・・.


(1..5).each do |i|
var = true
end
p var

$ ruby test.rb
test.rb:4: undefined local variable or method `var' for main:Object (NameError)



Squeakでいうブロック変数になると考えれば良さそう.

同じような結果にするには・・・.

(1 to: 5) do:[:v |
| var |
var = true.].
var " popupが表示され,var appears to be undefined at this point. Proceed anyway"





trap::スコープ、制御構造 - Rubyリファレンスマニュアル

Ruby on Rails

昨日,Railsを使ってWeb APを作ろうと思って最新版にしてみたのですが・・・.

$ sudo gem update --system
$ sudo gem install rails
$ sudo gem update rake
$ sudo gem update sqlite3-ruby



これで僕もRails2.0だ!って喜んでいたのですが,仕様が結構変わっている?

一番の問題はscaffoldでモデル名のあとにフィールド名とデータ形式を入力しないといけない.かなり扱いづらい.

そのため,古いのに戻すことに(他にも色々変わっていると困るので).

バージョン確認は以下のコマンド

$ rails --version
Rails 1.2.6



さて,久しぶりRubyの勉強をしないといけませんw


2008年6月21日土曜日

LeopardでRails

Railsでちょっと試してみたいことがあったので,Railsを導入しようとMacportで入れようとしたら,失敗.

いろいろと調べていたら,LeopardにはRailsはそもそも入っているので思い出しました.
標準のRailsを使用する場合はMacportのRubyの環境は削除しておいた方がよさそうということ.

というのは,WeBrickを立ち上げようとしたら/opt/の方を読み込んでいたので,起動しないという問題がありました.
とりあえず,動かせるので安心です.

2007年11月15日木曜日

パッケージをネットワークから取得する言語

VisualWorksのPublic Repository,Squeak SmalltalkのSqueakMapを見ていると,本当に僕みたいな人にはありがたいと思います.

RubyもGemsがあって便利ですが,僕にはこちらの方がいいですね.
なんだかんだ言って,僕もやはりGUI世代なんでしょうね・・・.


それにしてもRubyは春以来勉強していないので,ほとんど忘れてしまいました.
やっぱりSqueak Smalltalkを見ているとこちらの方が落ち着くので,結局卒研もそちらなのですが,やはり他の言語も書けないと世の中に通じないのかなって思ってしまいます.

もっとSmalltalkを理解するためにLisp,Haskellかな.
それともやはりJavaかC++をやるべきだろうか.

Pythonというのもいいのですが,やはり僕の今の能力だとたくさんの言語を学べる力がないのでどれかに絞りたいと思っています.

それにしてもプログラミング言語というのは本当に面白いですね.可能であれば全部知りたい.