Le 25 nov. 06 à 19:06, Yen-Ju Chen a écrit :
On 11/25/06, Quentin Mathé <[EMAIL PROTECTED]> wrote:
Le 24 nov. 06 à 22:15, Yen-Ju Chen a écrit :
> It looks interesting.
> Unfortunately, the latest io break the use of ':' in method name.
I think this will be fixed, Baptiste Heyman who takes care of
ObjcBridge usually handles bug report quickly.
Here is the replay I got and it looks good:
"We're scheming about supporting obj-c style method calls. [object
deleteFrom:start to:end]. Hopefully the : handling won't be broken for
long."
ok. Good news. This would be a really neat feature. I thought about
implementing such feature few months ago, but someone (Jeremy
Tregunna iirc) told me he has already written an experimental patch
for this feature.
> 2. The options we have are:
> a. build Io as what we have now (static binary), which does take
> time to maintain.
> b. build Io as what we have now, but split into library and
tool.
> It will be more useful for other application to use Io.
> c. build Io, Vector and ObjcBridge as separate libraries
> This has the minimal maintain since it is what Io does.
I'm in favor of b. May be c too if we can ensure ObjcBridge and
Vector are linked by default with Io tool and library. Also I would
like to keep the possibility to produce a Io StepTalk bundle very
easily.
If we split into the library and tool,
a StepTalk can simply link to the library.
ok, so I'm fine with this choice.
With ObjcBridge in the Io repository, there is a Io directory that
contains extra Io code related to the bridge. Do you have an idea on
how to run this code with our own build setup? I don't know how it's
done by Io itself.
I used to do it manually.
You can look at the IoVectorInit.c,
which contains the Vector.io.
There is a tool under iovm/tools/io2c.
It can convert io into c.
But it is part of the maintaince I prefer to reduce.
Another issue is how we handle the constant.
In official release, some are put in the io directory as you refer.
I have a IoFoundation and IoAppKit to do the same thing in C.
The advantage in C is that you don't really need to know the real
value of some constant.
For example, in ObjcBridge.io, you have to define
NSToolbarSizeModeDefault := 0.
in C, you can do it by "NSToolbarSizeModeDefault" :=
NSToolbarSizeModeDefault;
You can take a look fo IoFoundation and IoAppKit to know how to do
it.
I think your approach is easier to maintain especially for supporting
both GNUstep and Cocoa (in case their constant values don't match).
Did you should submit it to Baptiste or Io mailing list?
The best would be to have a parser that is able to extract such
constants from Cocoa/GNUstep headers, but perhaps it's overkill.
I will wait until the ':' issue is fixed then see.
ok.
Quentin.
--
Quentin Mathé
[EMAIL PROTECTED]
_______________________________________________
Etoile-dev mailing list
[email protected]
https://mail.gna.org/listinfo/etoile-dev