Standard Library?


#1

This might be a stupid question, but I can’t for the life of me find out what’s actually IN the standard library. The docs seem to point to:

https://codedocs.xyz/ChaiScript/ChaiScript/LangStandardLibraryRef.html

But that doesn’t seem at all informative, or I’m being very dense and not seeing it. Browsing the site in general seems to be the documentation of chiascript in general.

I’m trying to determine if its a safe thing to offer to use or if I should think about writing my own, but can’t seem to make sense of where it is. I tried digging into the source on github but what I found looked like a stub file.

I’m thinking I’m just missing something :slight_smile:


#2

This is the better link for the stdlib: https://codedocs.xyz/ChaiScript/ChaiScript/namespaceChaiScript__Language.html the source for it is here: https://github.com/ChaiScript/ChaiScript/blob/develop/include/chaiscript/language/chaiscript_prelude.hpp

You’re right - there is no great exhaustive list of built in functions.

I can give a brief overview:

  • List processing functions (which are in the links above)
  • Standard C++ std::string methods
  • Standard C++ std::vector<> methods
  • Standard C++ std::map<> methods
  • async to create a std::future that runs chaiscript in a second thread

There are no exec style functions or file IO functions. I want to, in my current refactoring, break up the standard lib to give the user more choice for what gets compiled in. I have not done it yet though.

If anyone is interested, I would greatly welcome an addition to the cheatsheet to enumerate the rest of the built-ins.