Poll: What's Next For ChaiScript?


#1

These are the currently active issues for ChaiScript. I’d like some feedback on the priority order. What is most important to you?

I don’t seem to be able to enable the polling plugin on my instance of discourse, so please comment on the order of priority you like for these features.

  1. Exposing arrays Exposing members that are arrays
  2. Co-routines Co-routines in ChaiScript
  3. Making finding the stdlib easier Building dynamic libs
  4. Some form of serialization Engine state de/serialization? And some other questions
  5. Regex support
  6. Cleaner for-each loops https://github.com/ChaiScript/ChaiScript/issues/145
  7. Post-increment operators https://github.com/ChaiScript/ChaiScript/issues/143
  8. Namespaces https://github.com/ChaiScript/ChaiScript/issues/113
  9. Const support https://github.com/ChaiScript/ChaiScript/issues/17
  10. Cleaner global support https://github.com/ChaiScript/ChaiScript/issues/122
  11. More examples / tutorials on usage

#2

I would like to suggest a revision to the parsing of if/else blocks.

In most part writing Chaiscript code is much like writing C/C++. But when you write an if/else statement you have to remember to use curly braces for each code block. In my first attempts to experiment with Chaiscript I was getting unhandled exceptions because of this and couldn’t understand why.

Here are some examples of code that throws:

if(x>0)
  a=2;
else
  a=1;


if(x>0)
{
  var val=5;
  a=val;
}
else
  a=0;


if(x<0)
  a=0;
else
{
  var val=5;
  a=val;
}

About the suggested features, my priorities would be: Exposing arrays, Cleaner for-each loops and Post-increment operators.

Thank you for this great library!


#3

That’s a tough one, it means fundamentally changing the way blocks are handled in ChaiScript. If you haven’t noticed, it’s the same for for, while, etc.


#4

Actually I hadn’t noticed that in for and while loops. I was hoping it would be easy to implement that feature…
This is rather counter intuitive for a language that intends to have a very similar syntax to C/C++.
Please consider that in the future if you can. Thanks.


#5

I don’t have enough experience with ChaiScript yet to be of good input I think, so take my advice with caution:

  1. Help with serialization of the script vm state: it seems it would be a big win for users.
  2. Coroutines: to help integration in games.

For other subjects I don’t have any opinion yet.