Author Topic: AngelScript still used for C::B?  (Read 9315 times)

WitchLord

  • Guest
AngelScript still used for C::B?
« on: June 28, 2006, 06:01:32 pm »
What's the status on the script library used for C::B? Have you already replaced AngelScript with another library? I'm asking because I know you decided to go with another library because AngelScript didn't support 64bit processors yet.

When Mandrav asked me if I was going to add support for 64bit processors I said that I couldn't do it, since I don't have a 64bit machine to develop the support on. But I have since investigated into SourceForge's compile farm and I'm pleased to say that I will indeed be able to add support for 64bit processors. In fact, I'm almost finished, only a few tests are failing now, and hopefully I shall have those fixed by next week.

So, now I'm curious if this news is comes too late and you've already switched to another library, or if there is still a chance you'll stay with AngelScript if I get the 64bit support working?

Another question, are you (or were you) using the AS_MAX_PORTABILITY mode with AngelScript? In this mode all the assembly code is disabled which should make the library completely portable (except for 64bit that I'm currently working on).

Regards,
Andreas Jonsson
Author of AngelScript
www.AngelCode.com

Offline MortenMacFly

  • Administrator
  • Lives here!
  • *****
  • Posts: 9694
Re: AngelScript still used for C::B?
« Reply #1 on: June 28, 2006, 06:29:19 pm »
What's the status on the script library used for C::B?
Because mandrav seems to be absent currently, please allow me to answer:
We are currently testing the switch from AngleScript to Squirrel in a branch. mandrav has already ported C::B accordingly and so far it seems to work well (but we are still testing). The C::B trunk still uses AngleScript but only until mandrav merges the branch (if he does).
The final decision is up to mandrav, I'm pretty sure he'll comment your post later...
With regards, Morten.
Ps.: I'm curious what he'll say to your post...
Compiler logging: Settings->Compiler & Debugger->tab "Other"->Compiler logging="Full command line"
C::B Manual: https://www.codeblocks.org/docs/main_codeblocks_en.html
C::B FAQ: https://wiki.codeblocks.org/index.php?title=FAQ

sethjackson

  • Guest
Re: AngelScript still used for C::B?
« Reply #2 on: June 28, 2006, 06:30:57 pm »
....
Ps.: I'm curious what he'll say to your post...

Me too. :)

WitchLord

  • Guest
Re: AngelScript still used for C::B?
« Reply #3 on: June 28, 2006, 07:19:47 pm »
As am I. :)

Mandrav seems to be very busy, I'm still waiting for him to pass me the changes he made for AngelScript.

Until he answers, I'm pleased to hear there's still a chance for AngelScript. :)

Offline thomas

  • Administrator
  • Lives here!
  • *****
  • Posts: 3979
Re: AngelScript still used for C::B?
« Reply #4 on: June 28, 2006, 07:43:08 pm »
I am afraid to say that the chance is not big, though :(

Yiannis and me talked about it on Monday when he got your latest email. We had talked about the scripting issue in general another two weeks earlier and had decided that we either needed a solution for AngelScript, or we would have to switch to another script language. The best fitting candidate was Squirrel.
The problem is that Yiannis went on holiday right after your reply stating that you could not port AS any time soon due to lack of hardware, and he had done all the script bindings for Squirrel during his absence.

So well... it was kind of an awkward situation that Monday, as we weren't sure about what to do now. On the one hand side, we did not in the first place choose AngelScript by random, but because it is really cool. Also, it somehow seems wrong telling you off now that you're investing the time to port AS to 64 bits (mostly because we've been nagging so much, I suppose).
But on the other hand side, the conversion work has all been done now already, and Squirrel works like a charm and reliably supports 64 bit out of the box :(

Thus we agreed that we could not agree, and settled to test the Squirrel branch for a week or two, and make a final decision then.

So well... there is a chance for AngelScript (for example if Squirrel should turn out to be a horrible backbiter), but please don't expect too much, you might possibly be disappointed.
"We should forget about small efficiencies, say about 97% of the time: Premature quotation is the root of public humiliation."

WitchLord

  • Guest
Re: AngelScript still used for C::B?
« Reply #5 on: June 28, 2006, 08:12:47 pm »
I understand. Thanks for explaining the situation.

It's too bad that I didn't know how SourceForge's compile farm worked when Mandrav first asked me about the 64bit support. I was extremely pleased that you once decided to use AngelScript for Code::Blocks. I'm sorry that I was not able to meet your expectations on time.

AngelScript is still very young and still evolving heavily, for your kind of project perhaps it is indeed better to go with a more mature and stable library such as Squirrel.

Well, should you change your mind in the future you know where to look. :)

Regards,
Andreas

Offline Pecan

  • Plugin developer
  • Lives here!
  • ****
  • Posts: 2777
Re: AngelScript still used for C::B?
« Reply #6 on: June 28, 2006, 08:23:09 pm »

Another question, are you (or were you) using the AS_MAX_PORTABILITY mode with AngelScript? In this mode all the assembly code is disabled which should make the library completely portable (except for 64bit that I'm currently working on).

Just my 2cents worth. AS_MAX_PORTABILITY does *not* work for the MAC. Neither afb nor pecan (:-( ) have been able to make it work without it returning errs about architecture errors.
« Last Edit: June 28, 2006, 08:38:36 pm by Pecan »

WitchLord

  • Guest
Re: AngelScript still used for C::B?
« Reply #7 on: June 28, 2006, 08:34:26 pm »
That seems strange. The developer of Cheetah 3D (a 3D modeller for Mac) is able to use AngelScript just fine.

But I'll try to get verify what you're saying and fix any problems.

However, it proves again that Yiannis and company made the right decision to switch to Squirrel. AngelScript may just not be stable enough for this project yet.

Offline mandrav

  • Project Leader
  • Administrator
  • Lives here!
  • *****
  • Posts: 4315
    • Code::Blocks IDE
Re: AngelScript still used for C::B?
« Reply #8 on: June 28, 2006, 08:37:54 pm »
Andreas,

first of all sorry I didn't reply to your email yesterday but I have a problem with my SMTP server's SSL certificate and I can't send *any* mail. I hope I 'll resolve this soon so that I can send you my changes too.

As for your questions in this topic:

Thomas has given you a good overview (and history) of the situation. I 'll just add a few more things.

This is the third time that I rewrite the script bindings.
The first time I bound everything using normal AngelScript code (i.e. *not* in AS_MAX_PORTABILITY mode).
Second time was about a month ago when I rewrote all bindings in AS_MAX_PORTABILITY mode, i.e. writing proxy functions for *every* single SDK function, with the hope that AngelScript would work in this mode. The conversion was futile and I never published (i.e. commited in SVN) this change. I still have it on my disk though (or so I believe :P).
Now it's the third time, this time using a different scripting library. This finally went well and I can access the scripted functionality of C::B in my Ubuntu64. What a joy :)

What you, and everyone else interested, must understand firmly is that scripting is part of the core SDK. This SDK is a very sensitive part of C::B in the sense that it must not change often and if it does it shouldn't break compatibility with earlier versions. This is especially true once we put 1.0 final out. We won't be able to do any more drastic changes like this, not until 2.0 anyway.
For this reason it's a really tough decision.

On one hand, we (at least me and Thomas ;)) really like AS. That's why we "forced" using it in the first place. It's worth noting that it's the only library used in C::B which didn't meet our multi-platform requirements and still it made it into our code.
On the other hand, we now have a fully working solution (and with easy binding too, thanks to SqPlus). And the language has very nice features too.

I think I 've explained most aspects of the issue at hand.

A final decision hasn't been made yet, so I can't rule anything out. We 're currently testing Squirrel in a different branch and everything goes smooth for the time being.
In the end, we 'll reach a final decision. All devs that have knowledge about scripting.
In the meantime, I 'd be happy to test AS in AS_MAX_PORTABILITY mode this weekend, if you manage to get it working (and assuming I really still have the binding files I had written - I 'm not doing it again if I 've lost them :)).
Be patient!
This bug will be fixed soon...

WitchLord

  • Guest
Re: AngelScript still used for C::B?
« Reply #9 on: June 28, 2006, 09:07:00 pm »
I believe you're making the right decision. AngelScript just isn't ready yet. :)

I'll let you know when I have the 64bit version working anyway, so that you can give it a try. It would be really great to know if it works in a real-world project.

Even if you will not use AS in C::B you've already done a lot for my project by spreading the word of it, and also the contributions you've made. Thanks for giving it a chance. :D

Regards,
Andreas

takeshimiya

  • Guest
Re: AngelScript still used for C::B?
« Reply #10 on: June 29, 2006, 02:50:40 am »
Andreas, I'm sorry you couldn't get the time to get working the compiler farm when we talked back in march. :(

But on the good side: we could set up a svn repository :), AngelScript gained more user base, and now that you got it working the compiler farm you'll probably can add support for native bindings of other (more rare) platforms.

After all, the best advantage of AS over other scripting libraries is the runtime speed and easyness of native bindings. :D

WitchLord

  • Guest
Re: AngelScript still used for C::B?
« Reply #11 on: June 29, 2006, 05:30:36 pm »
Indeed, I should have looked into it already way back then, but there is no use crying now. ;)

Even though my library didn't make it in the end, both I and AngelScript did profit alot from the C::B community and I'm very thankful for that. :D

A special thanks to those what had direct contact with me, Yiannis, Takeshi, and Pecan. (I hope I didn't miss anyone, it's difficult to know the origin of everyone that I talk with ;))