Pharo5 :: 튜토리얼이 추가되었습니다.

 

아무리 책을 본다고 해도..  Smalltalk 은 그 자체로 문법이 매우 익숙하지 않습니다. 그 자체가 VM 이며, 일종의 운영체제처럼 동작하며, 스스로 runtime 상태에서 디버깅을 할 수 있는건 그리 흔한일이 아니죠. 더군다나 한국어로 된 책은 그 존재도 거의 없기에 Smalltalk 을 익힌다는 건 인터넷 상에 있는 약간의 강좌 외에는 찾아보기가 힘들었습니다. 이에 Pharo 라는 Smalltalk 환경을 간단하게 경험해볼 수 있는 튜토리얼이 아예 들어갔네요. 물론 코드에 따라 익숙하지 않겠지만.. 그래도 이정도면 관심을 가지고 지켜볼 수 있는 수준은 충분히 되는듯 합니다.

pharo 에서 64bit 지원을 고민하면서… 고질적인 문제가 해결됐나 봅니다.

Breaking the 4GB barrier with Pharo 6 64-bit

 

이전에 linux 의 kernel 부분에서도 비슷한 문제가 있었는데 내부에서 사용하는 데이터타입에 대한 길이 제한때문에 벌어진 문제였었죠.

다만 가비지컬렉터의 성능이 조금 문제될 수는 있다고 하니.. 그 부분은 참고하고 있는것도 좋겠지만…. 어차피 통짜 이미지 파일인 이상 크게 뭔가 바뀔 여지는 없겠죠

 

저만 놀고있지 다른 smalltalker 들은 열심히 일하는듯 합니다..T.T

opensmalltalkvm

예전에는 분명 다른 방법으로 소스가 제공되었던 기억이 납니다만…. 이제 Pharo 와 CogVM 진영도 트렌드에 발 맞추어 github 을 이용하기 시작했습니다.

https://github.com/OpenSmalltalk/opensmalltalk-vm

우리가 익히 알고 있는 방식으로 git clone 을 사용해서 소스를 내려 받으면 됩니다만.. 사실 얼마전부터 노리고 있던 이유는 따로 있습니다. 소스트리 내에 제가 주목할만한 부분이 새로 생겼기 때문이죠.

build.linux64x64

 

….마………..만쉐????

어차피 pharo 를 사용하려면 VM 만 있으면 안되죠. 그래서 http://pharo.org 사이트에서 이미지를 받으러 갔더니.. 어머??

 

완.전.좋.은.데.이.거?

 

일단 Pharo 5.0 에서는 해당되는 이미지를 받아놓고 소스도 받아서 vm을 빌드하려 하는데..

build.linux64x64 디렉토리 안쪽에 makeall 이라는 스크립트가 보이네요?……… 어머? 뭔가 날로 먹을 수 있을거같은 느낌적인 느낌?

 

일단 컴파일은 잘 되는 중입니다. 사실 64bit vm 이 중요한 이유는 여러가지 이유가 있을 수 있겠습니다만.. 직관적으로만 본다면야.. lib32 시리즈를 필요로 하지 않는 부분이 가장 크지 않나 싶습니다. 그리고 sdl 부터 시작해서 각종 primitive 객체들이 보다 원활하게 동작한다는 의미겠죠. 일단 pharo 사이트의 내용으로만 본다면야.. 조금 experimental 한 부분이 있을수도 있겠습니다만… 폴더 자체에서 3개 플랫폼의 x64 를 지원하는걸 보면 나름대로 안정적이지 않겠나 생각합니다.

 

아마도 build.linux32ARMv7 정도만 있는걸 보면 아직 라즈베리상의 64bit linux 까지는 개발을 못하고 있는듯 합니다만…. linux64x64 개발이 어느정도 마무리되면 의외로 쉽게 빌드할 수 있지 않을까.. 라는 생각도 드는군요.

 

사실 사용하는것만이 아니라 제대로 공부를 해보고 싶기는 한데.. 그래야 ImmX11Plugin 도 다시 손보고 할텐데.. 아직은 시간이 요원하니.. 일단 64bit VM 을 즐겨보는걸로 만족해야 겠습니다 😀