簡體   English   中英

如何將Ruby1.9與Shoes一起使用?

[英]How do I use Ruby1.9 with Shoes?

鞋包是它自己的Ruby安裝,對嗎?

我不能使用Fiber1.9,它是Ruby1.9的功能。 而且,我想使用光纖來創建發電機。

這是我的代碼(因此,可以確保問題不出於我的代碼):

class BrownianGenerator
  def initialize
    @x = 0
    @fiber = Fiber.new do
      loop do 
        @x = @x+rand; 
        Fiber.yield @x
      end
    end
  end
  def next; @fiber.resume end
  def rewind; @x=0 end
end

如果我制作了這樣的鞋子應用:

Shoes.app do
  @b = BrownianGenerator.new
end

如果我拉起鞋子控制台,就會看到錯誤:

uninitialized constant #<class:0xblah>::BrownianGenerator::Fiber

因為,這是說Fiber是一個未初始化的常量,所以我的代碼出了點問題,或者此Ruby版本不知道Fiber類-后者應該是這種情況。

我在確定Ruby的版本時看到了這個問題(在我的Mac安裝中為1.8),但是我不知道如何更改版本。

看看綠色的鞋子

它的功能基於_why的原始實現,但它打包為Gem,專門針對1.9構建。

因此,我跳入freenode #shoes,發現每晚建造的鞋子都使用Ruby1.9。 我還沒有時間嘗試構建它,但這應該可以解決我的問題。

或者您可以使用aman gupta的“窮人的纖維”,或嘗試進行:: Fiber或其他操作。 GL! -r

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM