Hey,
I've been translating one of the main Melodie files (still called  
EtoileTunesController for now) to Smalltalk. I can get most of it  
working, except for a few things:

-The outlets bound in Gorm are nil rather than referencing the objects  
they should. (However, actions bound in Gorm work - selecting a menu  
item runs the connected  Smalltalk method.)
I added a small sample app, GormSmalltalkSample in my branches  
directory which shows the problem.

-Calling  ETSerializer serializerWithBackend: nil forURL: nil.  gives  
an error:
Melodie: CodeGenModule.cpp:210: llvm::Value*  
CodeGenModule::Unbox(llvm::IRBuilder*, llvm::Function*, llvm::Value*,  
const char*): Assertion `false && "Unable to transmogriy object to  
compound type"' failed.
Aborted
It looks like the Class type isn't handled in that switch statement in  
CodeGenModule.

There are a few things that would be nice to have, but I can proably  
get Melodie working without:
- access self from within a block. You can work around by assigning  
self to a local variable outside the block, and using that.
- subclassing classes you define in the same smalltalk file
- defining class methods/variables
- calling class methods from inside a block
   e.g. 1 ifTrue: [NSObject new.].   doesn't compile.

Thanks! If any of these would be pretty simple to fix with some tips  
on what to do, I would be happy to try.
Eric

p.s. The NSRange example still doesn't work :( I updated llvm+clang  
and Smalltalk a minute ago, and did make clean's.
  2008-08-10 17:12:58.873 st[3637] Creating range from 0 to 9
2008-08-10 17:12:58.879 st[3637] Created Range: 0, 9
2008-08-10 17:12:58.882 st[3637] Create range:
2008-08-10 17:12:58.902 st[3637] {location=0, length=9}
st: Uncaught exception NSRangeException, reason: in  
substringWithRange:, range { 136633408, 1900770 } extends beyond size  
(26)
Aborted


_______________________________________________
Etoile-dev mailing list
[email protected]
https://mail.gna.org/listinfo/etoile-dev

Reply via email to