Jason Turner
a8ea5f151d
Extreme error reporting capabilities update and bug fixes
2012-06-25 06:31:34 -06:00
Jason Turner
5a76d98692
Enhance and correct error messages
...
Backported from C++11 branch.
Conflicts:
include/chaiscript/dispatchkit/proxy_functions.hpp
include/chaiscript/language/chaiscript_common.hpp
include/chaiscript/language/chaiscript_eval.hpp
include/chaiscript/language/chaiscript_parser.hpp
2012-06-22 18:00:10 -06:00
Jason Turner
832df7f9e8
Remove offending boost code which causes warnings in some cases #39
2012-06-02 17:45:10 -06:00
Jason Turner
433905b33c
Merge branch 'master' of https://github.com/ChaiScript/ChaiScript
2012-05-21 10:17:33 -06:00
Jason Turner
3a7eff1478
Move to a bit smarter stack based object management
...
- we store all function parameters until the f
outer function call exits
- this results in more values being stored longer than
they need to be, but the results are predictable
and no leaks
2012-05-21 10:16:16 -06:00
Jonathan Turner
a818e7b185
Merge branch 'master' of github.com:ChaiScript/ChaiScript
2012-05-20 10:17:43 -07:00
Jonathan Turner
5aed00dd0b
Add ternary condition (?:) operator
2012-05-20 10:17:21 -07:00
Jason Turner
897ad7007f
Get system introspection functions fully working
2012-05-18 16:25:13 -06:00
Jonathan Turner
4e14a57016
Add support for switch/case/default statements.
2012-05-17 12:43:25 -07:00
Jason Turner
af1e02b0bb
Update copyrights to 2012 #23
2012-05-16 11:55:51 -06:00
Jason Turner
b064bb61e9
Finish renaming and cleaning up of Boxed_Number type for dump_system() output
2011-06-10 10:12:09 -06:00
Jonathan Turner
6131a9c4c1
Moved common operators into their own AST nodes and removed the operator child.
2011-06-04 11:01:35 -07:00
Jason Turner
36faba8ed3
Bypass dispatch during numeric operations. 2x speedup
2011-06-04 04:25:54 +08:00
Jason Turner
b933bb6c50
Begin move of Operators code out a level so that it can be used before dispatch
2011-06-04 04:25:42 +08:00
Jason Turner
f1918f147d
More documentation updates.
2011-04-04 07:08:28 -06:00
Jason Turner
0d238b1617
Documentation updates and namespace reorg for docs.
2011-04-02 20:52:49 -06:00
Jason Turner
d22a77503c
Fix build errors and warnings for VS2010
2011-04-02 11:21:11 -06:00
Jason Turner
79e8af4f6e
Enhance eval error stack reporting
...
Use OOP to avoid code duplication for eval error tracking. This results
in much more robust stack error reporting and 400 LOC less.
2011-03-27 21:03:24 -06:00
Jason Turner
de5822873b
Use RAII for scope management
...
Possibly fixes a few bugs where scope pops where missed.
2011-03-27 10:03:37 -06:00
Jason Turner
d6b8e32373
Allow for parse time evaluation of const values.
...
The goal is to allow for more evaluation at parse time, in general, to
increase eval time performance.
- Make AST_Node non-constructable except by derived classes.
- Make data in AST_Node const (as much as possible).
- Replace reflection "text = " with replace_child() (where the
replacement must be with a new parse tree).
- Evaluate floats, strings, ints, chars at parse time to avoid repeat
evaluations (~10% speed up in loops in -O3)
2011-03-27 08:17:04 -06:00
Jason Turner
58e5df0a9a
Even more reorganization of namespaces to help with documentation and
...
clarity.
2011-03-25 15:42:18 -06:00
Jason Turner
cd8bead54a
Further namespace reorganization and cleanup to limit to the user the
...
most important aspect of the API and make documenation easier.
2011-03-24 09:23:05 -06:00
Jason Turner
9dd9ffec46
Update copyright information for 2011
2011-03-15 09:42:33 -06:00
Jason Turner
f6b6936348
Normalize on include guard style, removing __ reserved words
2011-03-08 14:06:09 -07:00
Jason Turner
e75a354a04
Apply some module and parameter variable naming standards. Remove ChaiScript template where it was no longer necessary.
2010-11-06 05:20:41 +00:00
Jason Turner
36173d277d
Closing issue #99 : shared const char * memory issues. Also, clean up some file loading overhead (did not seem to have an performance impact).
2010-11-05 22:01:39 +00:00
Jason Turner
67bad374a9
Get mutlifile compilation working again and add a test for it
2010-10-22 21:30:58 +00:00
Jason Turner
8b35434e6f
rip out a couple hundred lines of code with inheritance
2010-09-30 18:17:32 +00:00
Jason Turner
670eb0692b
Visual studio warning reduction and compile fixes for vs2010. Warning suppression on vs2005. Fixes to get cmake working with boost autolinking. Update to support boost 1.44
2010-09-30 14:33:12 +00:00
Jonathan Turner
cfa42158af
Clean up reflection a bit, and how we do pretty printing of ast nodes. Registered new internal_to_string in reflection module so that we
...
can have automatic pretty printing of ast nodes during repl eval.
2010-08-30 13:37:50 +00:00
Jonathan Turner
054179ead3
Commenting out of previous node value caching scheme. This allows us to profile later, without having these smaller optimizations
...
clutter up the flow. This also allows us to pass the reflection test.
2010-08-29 21:33:11 +00:00
Jason Turner
7ef12f634d
Register AST_Node and Parser, overloaded eval for AST_Node and some const correctness fixes
2010-08-28 21:48:30 +00:00
Jonathan Turner
c6452c4bd6
Rename of Token to AST_Node to be more correct
2010-08-28 18:38:01 +00:00
Jonathan Turner
58c62f6333
More refactoring of parser to use the token children types directly instead of using a giant switch statement during build_match.
2010-08-15 02:04:35 +00:00
Jonathan Turner
7f037b26d4
Updated email addresses in copyright information.
2010-08-10 05:24:07 +00:00
Jonathan Turner
b1e357423f
Move structure to being inheritance-based in preparation for reflection infrastructure. This technique relies on the vtable's dynamic dispatch for correct evaluation, and removes the giant switch eval style of previous revisions.
2010-08-08 17:18:32 +00:00
Jonathan Turner
556e7ad916
Cleaned up the formatting a bit. Switched parser over to using charBetween, which significantly improves
...
readability of the early parsing rules.
2010-08-06 11:17:53 +00:00
Jason Turner
b971ee44ad
Make warnings stricter on windows and clean up all legit warnings in our code.
2010-07-30 18:06:17 +00:00
Jason Turner
799b3ef388
Update copyright for 2010
2010-05-15 22:48:54 +00:00
Jason Turner
7ac9ea7249
Add the ability to specify "load_module" and "use" search paths. The capability is primitive and it is currently used by chaiscript_eval to set a single path from environment variables
2010-03-18 22:53:52 +00:00
Jonathan Turner
e14931f389
Move completely over to new operators
2009-11-10 14:07:51 +00:00
Jonathan Turner
1bc968e788
Add initial unaries
2009-11-08 16:27:39 +00:00
Jonathan Turner
18bfead387
Move to a better operator parser, add support for most of the C++ binary operators
2009-11-07 14:43:12 +00:00
Jonathan Turner
12e909d9aa
Add bit shifting operators
2009-10-13 03:35:01 +00:00
Jonathan Turner
a5b2ec3006
Start code cleanups by moving chaiscript common structures into their own file.
2009-09-23 05:00:14 +00:00