2012-01-20 1 views

답변

3

아니, 그건 작은 이야기 일 뿐이야. 그러나 maglev ruby을 사용하면 smalltalk VM을 다시 얻을 수 있습니다. pry 및 해당 edit 명령을 사용하여 디스크의 코드를 편집 할 수 있으며 쉘이 다시로드를 담당합니다. 하지만 세션을 저장할 수는 없으며 디스크에 쓴 코드 만 저장할 수 있습니다.

+1

"MagLev 1.0.0은 2011 년 10 월 31 일에 출시되었습니다." - http://maglev.github.com/ –

+0

Gemstone의 서버 라이센스없이 Maglev를 사용할 수 있습니까? – Eonil

+0

GemStone/S가 MagLev를 사용하려면 서버 라이센스가 필요하지 않습니다. 지금까지 GemStone 서버에 대한 제한 사항은 GLASS와 동일합니다 (http://seaside.gemstone.com/docs/GLASS-Announcement.htm – martineg

3

@Tass는 약간 잘못되었습니다. Pry을 사용하면 콘솔에 작성한 메소드를 실제로 편집 할 수 있지만 메소드 만 편집 할 수 있습니다. 예 :

pry(main)> def foo 
pry(main)* "bar" 
pry(main)* end 
=> nil 
pry(main)> edit-method foo 
=> nil 
## launches editor 

pry(main)> class Foo 
pry(main)* def bar 
pry(main)*  "qux" 
pry(main)* end 
pry(main)* end 
=> nil 
pry(main)> edit-method Foo#bar 
=> nil 
## launches editor 

두 경우 모두 작동하므로 편집기에서 메서드를 저장하고 수정할 수 있습니다. 그러나 당신은 할 수 없어. edit-class Foo.

그것은 비록 적어도 하나 개의 제한이 있습니까 :

pry(main)> class Foo; def bar; "baz" end end 
=> nil 
pry(main)> edit-method Foo#bar 
Error: Pry can only patch methods created with the `def` keyword. 

이상한입니다.

+1

). '평범한'파일 기반 방식으로 지불하는 가격입니다. 개발 모델 :) –

+0

실은 어쩌면 스몰 토크로 전환해야 할 때가 있습니다. 루비는 그다지 쓸모가 없습니다. –