cwal

All files named ”s2/shell.c”
Login

All files named ”s2/shell.c”

Many hyperlinks are disabled.
Use anonymous login to enable hyperlinks.

History for s2/shell.c

2021-08-01
10:23
Removed CWAL_FEATURE_SCOPE_STORAGE_HASH and changed the default of CWAL_OBASE_ISA_HASH to 1. file: 4da7702bc0 check-in: [deddd35e15] user: stephan branch: trunk, size: 8061
2021-07-10
20:14
Got CWAL_ENABLE_TRACE compiling again and added --trace-cwal flag to s2sh/s2sh2. file: 99cb251156 check-in: [b73445b7ca] user: stephan branch: trunk, size: 8129
19:56
Now it doesn't work in either mode. Stashing this for later analysis and rolling back to some previous version (possibly the start). file: 0c202a01f3 check-in: [9522bcf73e] user: stephan branch: obase-isa-hash-wha, size: 8133
2020-04-24
09:18
s2sh help text fixes. file: 705a9fb6a7 check-in: [c13e4296b3] user: stephan branch: trunk, size: 8003
2020-02-09
11:13
Mentioned the S2SH_INIT_SCRIPT environment var in the s2sh/s2sh2 help. file: 1bd1006b16 check-in: [dee1e896ac] user: stephan branch: trunk, size: 8064
2020-02-08
17:20
Replaced s2's clampdown mode with a flags-based approach (see s2.h's s2_disabled_flags enum). Added --s2-disable=flag,names,list to s2sh/s2sh2. file: ad85b8bcbd check-in: [7dbb093d4e] user: stephan branch: trunk, size: 7994
2020-02-06
16:11
All s2sh/s2sh2 code except for the CLI switch definitions are now consolidated into shell_common.c. file: f06926eb25 check-in: [123dd9a01a] user: stephan branch: trunk, size: 7755
11:58
Consolidated the remaining s2sh/s2sh2 code except for their --help handling into shell_common.c. shell.c now uses cliapp.c for its input and REPL, just like shell2.c. file: 054ddebee5 check-in: [6f4bb57574] user: stephan branch: trunk, size: 18778
10:46
Consolidated more than half of shell.c and shell2.c into shell_common.c. Still some cleanups to do there. file: 4a410a58ee check-in: [a397d67753] user: stephan branch: trunk, size: 29275
2020-02-02
09:00
s2: introducing "User Keywords" (UKWDs). Clients may now install constant symbols which resolve during the keyword lookup phase, so they're faster than var/const lookups, but they cost some memory and should be used judiciously to avoid a slight performance hit. Also added the define() keyword function to create them from script-space. file: 6cf08f544b check-in: [226dd49cad] user: stephan branch: trunk, size: 72069
2020-02-01
15:02
Initial grunt work on s2sh2, a cleaned-up reimplementation of s2sh. It doesn't do anything useful yet. file: b60fce424e check-in: [ededde8927] user: stephan branch: trunk, size: 72024
11:20
s2sh -? is now brief by default and shows All Of It if -v is passed before -?. file: babe94d9de check-in: [c5ed6e5edb] user: stephan branch: trunk, size: 72068
10:48
Fixed an unused var in certain build configs. file: 20c69de6a4 check-in: [ab888a9cf0] user: stephan branch: trunk, size: 71699
2020-01-31
18:41
Compile fix when building with static "renamed" modules. file: c5766d74e2 check-in: [420702f5ab] user: stephan branch: trunk, size: 71655
09:23
Infrastructure to allow s2sh to install static modules to s2 properties other than their module name. e.g. regex_js and regex_posix can now be installed as s2.regex.js and s2.regex.posix. We also install the historical names to keep certain scripts which may dynamically load modules running. file: dc11ef8a58 check-in: [4e3a6ecf91] user: stephan branch: trunk, size: 71675
2020-01-16
04:47
cwal_printf() %p now uses lower-case hex (was upper case). Efficiency hack in s2out impl: bypassed an unneeded function proxy call in s2.operator<<(). Added s2_engine::stash stats to s2sh metrics output. s2.io.output() and friends now prepend a 0x prefix when outputing a native address via the %p cwal_printf() format option. file: 4ea6d73921 check-in: [38c02a3714] user: stephan branch: trunk, size: 66608
2019-12-30
16:35
Added trace-assert and trace-token-stack pragmas. Related minor refactoring, symbol renaming, and docs. file: b092c50ac7 check-in: [6d39f4ad9f] user: stephan branch: trunk, size: 66397
07:43
Enabled s2 pragma() and added docs for it. The tokenizer now has a flag which tells it to permit '-' as a legal identifier character so that longer pragma (and, eventually, typeinfo) tags can be written like a-b-c instead of abc. (Hmmm... It might be interesting to allow those as keys in object/hash literals.) file: 159be6840f check-in: [439f5c71ce] user: stephan branch: trunk, size: 66392
2019-12-18
04:27
Finally added -e SCRIPT support to s2sh. Fixed reporting of a specific OOM case found while testing (was crashing with a NULL pointer deref). file: 4cd1993d66 check-in: [376e25b48b] user: stephan branch: trunk, size: 66391
2019-12-16
01:42
Changed s2sh's input prompt from 's2>' to 's2sh>' because that makes more sense/gives more context in the new docs. file: 77979686e1 check-in: [1a24239e34] user: stephan branch: trunk, size: 64068
2019-12-07
16:53
s2sh: added -s2.shell flag to force installation of the s2.shell API even in non-interactive mode (needed for some client code). file: ba78b1664e check-in: [83f7dd9c79] user: stephan branch: trunk, size: 64066
09:15
s2sh: minor metrics output tweaks. Typo fix. file: d1f4917644 check-in: [050859dff2] user: stephan branch: trunk, size: 63494
08:43
s2: Added placeholder for the potential future ?. operator. Shaved 2k memory by shrinking the default size of the function script file name hash and added a metric to count how much reuse we get from that hash. file: cecfc404f6 check-in: [8cfe21fd57] user: stephan branch: trunk, size: 62980
2019-07-19
05:47
Added s2_cb_seal_object(). Correct the setting of s2sh's history file name from the S2SH_HISTORY_FILE environment variable. file: e2b90537b4 check-in: [450a903bf4] user: stephan branch: trunk, size: 62666
2019-07-18
19:07
s2sh shell now supports optional S2SH_HISTORY_FILE environment variable to define the location of its interactive editing history file (because i'm tired of having one in every directory i run s2sh in). file: f6e537d67e check-in: [d17613e7f6] user: stephan branch: trunk, size: 62593
2018-11-29
14:43
Minor tweaks caught while porting some of this code into another tree. file: fa234c1644 check-in: [4398c5bec4] user: stephan branch: trunk, size: 62535
2018-11-26
14:39
Tinkering with recursive vacuum. TL;DR: it can work in _very limited_ circumstances, but often not enough to run it periodically (it's expensive). file: 4477f24dec check-in: [7010376835] user: stephan branch: trunk, size: 62498
09:59
Improvements in various compile-time configuration checks. Added a couple s2 functions in prep for some module-related changes. file: f6ce9f83d0 check-in: [bd5c8fc100] user: stephan branch: trunk, size: 61968
2018-11-25
12:23
Completely overhauled the s2sh static/built-in module approach with a non-source-invasive method requiring only that the client define S2SH_MODULE_INITS properly. file: da270d4465 check-in: [570470501b] user: stephan branch: trunk, size: 60930
2018-11-24
10:47
s2sh now only saves the history file if the session added a line to the history. file: 3c1602dd1e check-in: [40cdbd5dd2] user: stephan branch: trunk, size: 59261
2018-11-23
14:43
Snapshot. Lots of cleanup of the new s2_scope mechanism. Removed some now-obsolete s2 scope-handling functions. file: 161e10c7a4 check-in: [b7de2a8e38] user: stephan branch: scope-push-pop-hooks, size: 58915
09:55
Snapshot - seem to have gotten the new s2_scope infrastructure in place and working, but now comes the real work: swapping out the existing bits with this. file: 64338946f1 check-in: [166008b65a] user: stephan branch: scope-push-pop-hooks, size: 58501
07:48
Initial work on scope push/pop hooks. The intent is so that clients (s2) can keep their own scope state in sync with cwal's, but whether that will really be possible is as yet uncertain because of engine init/startup timing vis-a-vis access to the allocator. file: 830ae42edb check-in: [a1472de17e] user: stephan branch: scope-push-pop-hooks, size: 58459
2018-11-22
16:42
Cleaned up the shell_extend.c skeleton a bit and modified the interface slightly to give s2_shell_extend() access to the 's2' object. file: abdc829327 check-in: [64d08eefa3] user: stephan branch: trunk, size: 58392
11:38
Comment tweaks. file: db45eb65f5 check-in: [752d2190db] user: stephan branch: trunk, size: 58278
11:15
Improved the s2hsh statically-linked-in module build process so that we don't need a per-module init block in shell.c, but instead generate the module init calls at build-time. file: 14f700f1ec check-in: [9c6c448902] user: stephan branch: trunk, size: 58118
09:18
s2 static module builds now support C++ modules. file: 109805180c check-in: [0b5e4b2d37] user: stephan branch: trunk, size: 58444
2018-11-21
22:42
auto.def: default --prefix to $HOME, added --cc and --cxx so that auto-reconfigure can propagate CC/CXX properly. Replaced all switch fall through comments with CWAL_SWITCH_FALL_THROUGH so that the amalgamation bundles still compile warning-free when comments are stripped out. file: 23572e8bd2 check-in: [9c48749922] user: stephan branch: trunk, size: 58375
01:15
Expanded auto.def to support readline, lineedit, or neither. Other related tweaks. file: 13f982c55c check-in: [0b2e7ecbc0] user: stephan branch: trunk, size: 58371
2018-11-20
09:05
Squelched dozens of unused parameter warnings (removing their names causes a completely different warning) triggered by work on the build process. Fixed cwal_scope_chain_set_with_flags() to not ignore the flags it was given and to honor various KVP/container flags which its _v() counterpart was honoring. file: be5d09b53a check-in: [211af69f84] user: stephan branch: trunk, size: 58132
2018-11-19
06:49
Blocked out some old test code (which explains behavour which i thought was a weird bug a couple weeks ago). file: 6913363a3b check-in: [b186194c61] user: stephan branch: trunk, size: 57869
2018-11-16
16:38
Added missing --help entry for s2sh's --h flag. file: 2472de2ad9 check-in: [b7d19b59d1] user: stephan branch: trunk, size: 57856
2018-09-19
18:03
Added s2 FILE module, which more or less mimics the C89 FILE API. file: a055bf4a8e check-in: [1fd872a4b9] user: stephan branch: trunk, size: 57800
2018-05-09
14:40
Build tweaks to more easily support modules which simply compile in an s2 script. Added the s2.iterate module. file: 2a8db1cfc7 check-in: [0a93b0e69f] user: stephan branch: trunk, size: 57743
2018-05-08
00:34
more minor internal cleanups and a unit test update for the previous commit. file: a6fc2dd8b3 check-in: [bc12476f02] user: stephan branch: trunk, size: 57680
2018-05-07
23:31
minor internal tinkering. file: f78d765f6a check-in: [9211afe535] user: stephan branch: trunk, size: 57819
2018-01-03
15:05
Removed the v1 s2 plugin init interface. file: 5c560d0b5f check-in: [fa16637e69] user: stephan branch: trunk, size: 57623
2018-01-02
04:02
Added -h FILENAME option to s2sh to set the interactive mode history file. file: c7c8e75a6d check-in: [07649a929a] user: stephan branch: trunk, size: 57742
2018-01-01
16:02
Far too much tweaking in the s2 loadable module bits. file: 828b4492f6 check-in: [d9164fb176] user: stephan branch: trunk, size: 57391
2017-12-31
23:01
Spontaneously invented a 'v2' init interface for s2 loadable modules, to help consolidate how their result values are used. Still need to port most of the plugins to it, though. file: 9c17c6f2d0 check-in: [ebacbcb3d6] user: stephan branch: trunk, size: 58163
2017-12-29
16:41
Minor cleanups in catching of stray break/return/continue, improving the error reporting for those in some cases. file: 951458a2f0 check-in: [c0b9358ec4] user: stephan branch: trunk, size: 56933
2017-12-28
01:26
Minor cleanups in the module bootstrapping code. file: bf5d10a089 check-in: [b7b225f650] user: stephan branch: trunk, size: 56961
01:09
Made the remaining s2 modules statically linkable. file: 86c090bb7e check-in: [dd480f2992] user: stephan branch: trunk, size: 56961
00:55
Added a couple generic utilities in tools/. Added an s2 C module which compiles in a copy of require.s2 for use as a loadable module. make clean is now recursive. file: d6db04ce85 check-in: [76d80dabb1] user: stephan branch: trunk, size: 56581
2017-12-07
01:40
Seem to have gotten s2 property interceptors working, but there is much, much testing and experimentation to be done (opportunities for side-effects abound). file: 477f0254c6 check-in: [8d58c40828] user: stephan branch: s2-interceptors, size: 56429
2017-12-03
21:09
Tiny random cleanups. file: 175daa8313 check-in: [ed33242e31] user: stephan branch: trunk, size: 56336
15:16
Added cwal_build_info() to make various build-time config options available to client code. Stole another bit from the maximum string length to add an is-ascii flag to strings, which we can use to speed up many algorithms for the most common cases (but it slows down string creation for the common case). file: 2797ffa285 check-in: [72236d95aa] user: stephan branch: trunk, size: 55657
2017-12-02
14:47
Removed s2sh's 'g' global-scope object (it's never used). file: 297915c987 check-in: [a4df2f4112] user: stephan branch: trunk, size: 55596
2017-11-29
16:59
Added verbosity level support to the internal VERBOSE command, and some comments now only appear with levels higher than 1. file: cf7aca2aa3 check-in: [e94924cf1a] user: stephan branch: trunk, size: 55851
2017-11-16
10:16
added static build of termbox module. file: 35f017c5a2 check-in: [8d6c64f651] user: stephan branch: trunk, size: 55818
06:52
Got basic infrastructure in place for building s2 the loadable modules as static modules which get linked directly in to s2sh. file: 63f54fd676 check-in: [21be566a6f] user: stephan branch: trunk, size: 55802
2017-11-13
12:54
s2sh now uses cwal_output(), rather than stdout, for its metrics dump. file: dcdd4540e7 check-in: [46bf02a600] user: stephan branch: trunk, size: 52620
2017-11-12
16:42
Re-enabled the "eval value holder" to work around an "interesting" value lifetime conflict until a better (less memory-costly) solution can be found (if one can - it is a tricky situation: see notes around EVAL_USE_HOLDER in s2_eval.c). file: a0c2873af0 check-in: [e5adf161e4] user: stephan branch: trunk, size: 52342
2017-11-11
17:55
Added some verbose-mode warning output when s2sh's clean-room mode is enabled. file: 329f1cb6bb check-in: [4d41b724cc] user: stephan branch: trunk, size: 52339
2017-11-08
16:35
Added s2.shell.tokenizeLine() for potential use in upcoming(?) script code. file: c82f93c755 check-in: [f0051dbf0d] user: stephan branch: trunk, size: 52338
10:40
Added s2_enum_builder API to enable creation of s2 enums from C code. file: b644827fac check-in: [4ea3759581] user: stephan branch: trunk, size: 52666
08:37
Moved filesystem-related APIs from s2.io to s2.fs. file: 7c2e80ecad check-in: [474633d583] user: stephan branch: trunk, size: 51711
2017-11-07
13:57
minor metrics label change. file: 26bce31484 check-in: [08f2715401] user: stephan branch: trunk, size: 51656
13:06
imported GLOB/LIKE pattern matching from sqlite3. Added s2.glob(glob,haystack[,globStyle]). file: 174dda0325 check-in: [4eac2f17a9] user: stephan branch: trunk, size: 51644
2017-11-03
01:39
Tinkering with the module loader to try to bend things such that we can choose to link (or not) certain modules into s2sh statically. That doesn't yet work because the build process for each module can be arbitrarily complex, and hooking those in to s2sh's build would be more difficult than i'm ready/willing to futz with right now. file: 80287471fa check-in: [0ea9d180a5] user: stephan branch: trunk, size: 51598
2017-11-02
22:42
Removed s2.isCallable() and s2.isDerefable() (both long since deprecated via typeinfo()). Removed s2.getResultCodeHash() because it's never used. file: a43b066a0d check-in: [e32ab75603] user: stephan branch: trunk, size: 51554
2017-10-05
17:09
Merged (private) strlen-rewrite branch. This eliminates the 'length of 0 means to use cwal_strlen()' semantics from the major APIs (there may be a couple small outliers). My hands managed to survive, with the left pinky being only ever so slightly sore. file: fc3a844915 check-in: [ef477c5d1e] user: stephan branch: trunk, size: 51542
2016-09-12
16:57
According to valgrind FFI is now free of all memory leaks! Also, bug fixes, unit tests, and more! file: c9460539b1 check-in: [47d64280e3] user: calebg branch: s2_ffi, size: 51594
2016-09-09
19:21
Adding a preliminary CMakeLists.txt for use in CLion.

Also changed the UNUSED_VAR macro to an UNUSED attribute which appears to be more widely adopted by compilers. file: 01a1c35b5a check-in: [d834ba36b3] user: calebg branch: s2-ndebug, size: 51588

2016-09-02
16:16
Using the avcall lib to replicate stack frames. Works like a charm. Most primitive types aralready supported. file: 19593a5195 check-in: [133ca72aeb] user: calebg branch: s2_ffi, size: 51701
2016-09-01
18:15
A (VERY ALPHA) Foreign Function Interface implementation that allows calling system functions (like setenv, mount, fopen, etc) directly from s2sh. file: d73019e138 check-in: [20a4347076] user: calebg branch: s2_ffi, size: 51650
2016-08-30
18:15
Added newly available build information to s2. file: dedb1538d1 check-in: [1dcbbc617f] user: calebg branch: cwal-ndebug, size: 51607
18:07
Forgot to add the new functions in the header. file: 83b415155b check-in: [ac69d2a631] user: calebg branch: cwal-ndebug, size: 51582
16:44
Fixing up the s2 non-debug build: * Switched around the amal build so that s2_amalgamation.* files can be used without including other files. * Replaced all debugging double negatives with just a positive expressions: "#if !defined(NDEBUG)" is now "#ifdef DEBUG" * Added the UNUSED_VAR macro to prevent the 'unused variable' compiler warning. * Removed the "force assert() to always work" sections in the shell.c and test.c files. * Added S2_AMALGAMATION_BUILD to test.c so that it's possible to easily build the test with the amal build. * Littered UNUSED_VAR everywhere it was needed. file: 402bae9512 check-in: [80f0382c88] user: calebg branch: s2-ndebug, size: 51382
2016-08-19
15:41
typo fix file: 8a7e765bf1 check-in: [e82bc3649b] user: stephan branch: trunk, size: 51461
2016-03-03
16:03
Improved interrupt handling in the shell, such that tapping ctrl-c during interactive input will not set the interrupted flag on the s2_engine. It now toggles the engine's interruptability on/off in the input loop and when reading the auto-loaded init script. Unfortunately, linenoise (readline-like clone) treats it like ctrl-d, but that's a small price to pay. file: a57be4653d check-in: [3f2f9253d7] user: stephan branch: trunk, size: 51462
2016-02-28
10:56
merged trunk, resolved a conflict. file: e09a8e62e0 check-in: [08244059ce] user: stephan branch: core-prop-interceptors, size: 52746
10:44
removed a done todo, fixed a variadic misuse (too few args) in an error handling case. file: 696257b89c check-in: [39205fd7e9] user: stephan branch: trunk, size: 51369
2016-02-26
01:25
okay, got carried away: discovered that hashes as scope storage fail to trigger const violations on s2 assignments, at least in one of the unit tests (but not in the interactive shell, for reasons unknown). Too tired to debug it further now. file: b5ee6aecb2 check-in: [42ddd6cf8c] user: stephan branch: cwal_value_pair, size: 51183
2016-02-25
21:42
refactored pairs as tuples (fixed-length arrays). Still need to add foreach() support. file: d1c99c74ad check-in: [5cc361ae64] user: stephan branch: cwal_value_pair, size: 51204
19:25
merged in trunk. file: 2ddc1b87b8 check-in: [ec839ef681] user: stephan branch: cwal_value_pair, size: 51202
2016-02-20
05:27
minor internal tweaking of the s2_engine interrupt flag handling. _Seems_, in unscientific tests, to work better (propagate more often) now. file: 048a138744 check-in: [88345a22d4] user: stephan branch: trunk, size: 51135
2016-02-16
18:09
i had a property setter interceptor working, then broke it, and am now too tired (and this machine has no debugger). Someone's getting cleaned up when they shouldn't, random crashes. To look at later. file: 9628066067 check-in: [ef67b58df2] user: stephan branch: core-prop-interceptors, size: 52487
14:29
merged in trunk file: 93ae14fe60 check-in: [7658116a71] user: stephan branch: cwal_value_pair, size: 51177
2016-02-13
19:22
Minor tweaks to get it compiling (again) with CWAL_SIZE_T_BITS=16. file: c6e8a3a391 check-in: [6509fa8dd3] user: stephan branch: trunk, size: 51110
15:59
Merged in trunk, as it's about to get messy with planned internal refcount refactoring. file: 711bf8ab3d check-in: [da81a83408] user: stephan branch: cwal_value_pair, size: 51102
04:57
String.split('') now mimics JavaScript, splitting into an array of the individual characters. String interning saves scads of allocations here if the string splitted is of any appreciable length. file: f2c5ab4c2c check-in: [7604b3a206] user: stephan branch: trunk, size: 51035
2016-02-12
01:09
Added cwal_value_pair type, but shortcomings elsewhere make it clean up improperly when there's recursion involved (because it's not a full-fledged container, and is not privy to the cleanup treatment involved). Not sure if this is yet worth the hassle (and it asserts() now in s2 in very simple cyclic cases). They also can't be made explicitly vacuum-safe with the current code. file: 1913d33d33 check-in: [f505331bdb] user: stephan branch: cwal_value_pair, size: 50870
2016-02-06
13:25
Restructured how functions manage their source code, now that they have a rescoper. It is no longer stored in the global scope, but scoped along with the containing Function. file: 493fba9854 check-in: [1bee5e925d] user: stephan branch: trunk, size: 50803
2016-02-05
19:38
a number of doc updates, internally restructured how keywords determine whether an EOL is an alias for EOX, and limited it to certain keywords (due to a buggy interpretation found while testing unrelated stuff). Added s2.Buffer.slice() to copy byte ranges. A bit of further s2 internal-vs-public code-moving and minor cleanups. file: fe7adaded1 check-in: [bd2fa6618f] user: stephan branch: trunk, size: 50707
11:14
split up the s2 APIs into internal/public parts. file: 6bb82b251f check-in: [efa2b6c8b8] user: stephan branch: trunk, size: 50680
2016-02-03
19:36
got zlib support into s2, as a drop-in replacement for miniz. file: 136d1b6c06 check-in: [e54e62513e] user: stephan branch: trunk, size: 50708
15:31
minor error reporting fix. file: 584b1ce0a4 check-in: [2fb8af4eec] user: stephan branch: trunk, size: 50629
2016-01-31
17:26
internal restructuring of how s2 manages a few pointers which could become stale seems to have alleviated the string interning conflicts, so string interning is back on. Valgrind is happy. file: 6717c1afc0 check-in: [fc4ced9311] user: stephan branch: trunk, size: 50485
12:58
minor s2-internal cleanups in prep for some internal ref/unref handling experimentation. file: a02e8e29ce check-in: [4a11a6b32e] user: stephan branch: trunk, size: 50485
2016-01-29
18:37
minor internal tweaks to s2sh, initializing less stuff (and no auto-load script) in -cleanroom mode, plus minor build-level conf tweaks to potentially support upcoming work. file: c8575986b9 check-in: [944de2c280] user: stephan branch: cpp-placement-new, size: 50435
16:47
merged in trunk file: 5aedfa34a6 check-in: [d523f1af4a] user: stephan branch: cpp-placement-new, size: 49989
2016-01-26
16:57
disabled string interning entirely in s2sh (for the time being, maybe forever) because those unpredictible corner cases involving temp strings bit us again. file: 4ab2b3dae6 check-in: [978e458f42] user: stephan branch: trunk, size: 49956
2016-01-24
18:27
experimenting with managing C++ binding memory with cwal via placement-new so that (new T()) can use cwal's recycler. file: 02a6dfbc2d check-in: [88858804ea] user: stephan branch: cpp-placement-new, size: 49816
2016-01-23
12:09
renamed s2_new_function2() to s2_new_callback(). file: cb45cde110 check-in: [89a724ee0f] user: stephan branch: trunk, size: 49783
2016-01-22
01:45
added s2_minify_script() and friends. Discovered that ctrl-c interruption is not working, for unknown reasons - possibly a recent regression, but i don't remember touching those bits recently. file: 076673b6b8 check-in: [afdabee3e3] user: stephan branch: trunk, size: 49784
2016-01-11
18:29
Added CWAL_VERSION_STRING config option and populate it from the fossil info if it is available. added --version option to s2sh. file: f18635bbe8 check-in: [035cefe320] user: stephan branch: trunk, size: 49698
2016-01-10
14:37
added cwal_memcap_config.forceAllocSizeTracking and the -fst/--fst flags to s2sh to toggle it. file: b242a916f3 check-in: [d1f8344ad3] user: stephan branch: trunk, size: 49535
2016-01-09
18:08
merged in s2-scope-hashes branches - thought it had already been done :/. file: dd7f50fb7f check-in: [1526166a76] user: stephan branch: trunk, size: 48454
17:14
fixed missing source location info for the 'fatal' keyword. Improved interrupt checking, added source location info (if known) to the interrupt message. Made elvis a separate operator (not alias of |||) so that error messages show the proper operator symbol. file: 1c03b0f62a check-in: [ff5029f230] user: stephan branch: trunk, size: 47870
2016-01-08
17:09
large batch of tweaks, largely related to the hash-vs-objects work, but also an attempt at guaranteeing under/overflow behaviour on integer ops. file: 8ed4414926 check-in: [4d688d1ffc] user: stephan branch: s2-scope-hashes, size: 48426
14:55
large batch of tweaks, largely related to the hash-vs-objects work, but also an attempt at guaranteeing under/overflow behaviour on integer ops. file: 2fbef48c0f check-in: [b79462d915] user: stephan branch: s2-scope-hashes, size: 48426
01:59
scopes seems to work with both hash and property storage. still doc cleanups to make and valgrind output to compare. bed time. file: e2f8548d9c check-in: [97b6c34301] user: stephan branch: s2-scope-hashes, size: 48068
2016-01-07
15:24
added s2.compare(value1,value2). file: dce8b774b7 check-in: [5772449a00] user: stephan branch: trunk, size: 47842
2016-01-05
23:30
minor internal tweaking/cleanups. file: 00d6a1671a check-in: [a5d85d398a] user: stephan branch: enum-with-value, size: 47794
2014-12-17
04:32
core: internal refactoring to make Buffer Values containers, so they may now hold properties and be prototypes. It was much easier than expected to implement and the cost increase is negligible (48 bytes) in the amalgamated s2 unit tests. file: 521084cefb check-in: [73df044fc1] user: stephan branch: trunk, size: 47750
2014-12-16
19:03
s2sh: Merry Christmas, Caleb: added cli options for adjusting the memory caps. file: af9774a6e1 check-in: [262f9b7957] user: stephan branch: trunk, size: 47362
2014-12-15
19:41
s2: fixed a logic bug which kept some temp values in (X+Y) ops alive longer than needed. file: 0a19931a74 check-in: [bf2ae745e5] user: stephan branch: trunk, size: 43990
2014-12-14
15:32
s2sh: minor cli flag handling touchups. file: 7ca53682ea check-in: [aeb48c9484] user: stephan branch: trunk, size: 44018
15:12
core: added optional allocation count/amount capping, in support of Caleb's site. Refactored the Unique type to act like a wrapper for a single value. My hand has had it - enough hacking for a good while :(. file: 68d4a52181 check-in: [8cb797fc88] user: stephan branch: trunk, size: 43712
2014-12-09
19:00
s2sh: renamed +safemode to +clampdown to avoid giving any delusions of "safety" and because that it what it is internally called. file: 938a786508 check-in: [ff1576c404] user: stephan branch: trunk, size: 41416
2014-12-06
01:40
s2: API renaming, more work on the 'new' keyword. file: 9b5942de17 check-in: [874963ab8e] user: stephan branch: trunk, size: 41414
2014-12-05
22:44
more work on the container flags, added a couple missing cwal_value_is_XXX() variants, minor API renamings. file: 26acb01c15 check-in: [38060dc5e9] user: stephan branch: trunk, size: 41402
17:33
Changes in semantics how cwal_prop_set() and friends report various cases, so that we can move some constraint checks into cwal, so that s2 does not have to do duplicate lookups to get the same feature. file: 779d5a9114 check-in: [6dbf89b73c] user: stephan branch: trunk, size: 41204
11:37
s2: more work on integrating the 'unique' type, added s2sh -safemode flag to s2sh to disable file i/o APIs (for use in Caleb's demo page). file: cd1e6701a4 check-in: [29f4657ea7] user: stephan branch: trunk, size: 41101
11:25
s2: more work on integrating the 'unique' type, added s2sh -safemode flag to s2sh to disable file i/o APIs (for use in Caleb's demo page). file: d52302d275 check-in: [1977b92f84] user: stephan branch: trunk, size: 41059
01:32
s2: moved installation of __typename handler to the engine init, out of the prototype setup (where it is not called when in -cleanroom mode). Added recycling config for the new CWAL_TYPE_UNIQUE. file: 5cd3a5bf33 check-in: [b0d124695a] user: stephan branch: trunk, size: 40595
2014-11-29
21:48
s2sh: Added -C/--C flags to enable/disable chunk recycler. file: e750e979ef check-in: [881ab17cf7] user: stephan branch: trunk, size: 40480
20:31
Moved cwal_engine::eWeak into cwal_engine::recycler, fixed consolidation of Value- with non-Value types in a single recycler: each recycler must be specific to a certain base type so that we can use the list-linking members to build the lists. file: f441a45adb check-in: [8ba45681a0] user: stephan branch: trunk, size: 40079
16:33
more metrics-related tinkering. file: cd32ac5979 check-in: [624ffc5926] user: stephan branch: trunk, size: 39482
15:11
more work on the metrics, now recording value recycling hits/misses. file: 16a326fc00 check-in: [61ab49b29e] user: stephan branch: trunk, size: 39279
14:13
core: Value recycling bins are now allotted by the size of the Value, so like-sized Value types get grouped. i.e. more effective use of the recycler. However, this does not jive with the per-type-based configuration of bin sizes, but is an overall improvement with no losers, so we'll find a different configuration mechanism. file: 2f975cbfbd check-in: [97b8ce3372] user: stephan branch: trunk, size: 39279
2014-11-28
19:19
s2sh: added -cleanroom mode, which elides all prototype/global infrastructure, leaving just raw s2. Massif says it needs 6kb (on 64-bit) to get going and run an empty script. file: 6d47eff201 check-in: [0c8be96778] user: stephan branch: trunk, size: 38563
15:28
core: improvements in the chunk recycler, and more memory gets recycled. file: 6a3a1d9d23 check-in: [a9a7aa2637] user: stephan branch: trunk, size: 37977
2014-11-26
20:50
s2: minor cleanups, renamed new==>constructor to new==>__new for symmetry with the typename==>__typename. file: 534faa7552 check-in: [d9bea6b0b4] user: stephan branch: trunk, size: 37448
2014-11-25
16:29
Minor but subtle semantics changes in cwal_function_call() and friends ("self" is now made vacuum-safe) and cwal_exception/propagating_set() (now uses unref instead of unhand when reseting/clearing the value). Accommodated that in s2/th1ish. Added cwal_utf8_char_next() utility function. In s2: started experimentation with the "new" keyword, but it is disabled and incomplete. Yeah, that is more than i wanted in this commit. file: 2f2a77d5d8 check-in: [bd8ecee444] user: stephan branch: trunk, size: 37468
2014-11-20
18:06
core: refactored cwal_hash so that we can resize hashtables (APIs for that still pending). Negatively affects alloc counts (currently +1 per table) but the Value part of the hash is now recyclable and the hash table memory is currently reusable as array list memory. file: b3d1c4f31f check-in: [310ba44db8] user: stephan branch: trunk, size: 37411
16:13
s2sh: added s2.shell.exit() to exit interactive mode. file: 96f10a61c5 check-in: [2a13a4876f] user: stephan branch: trunk, size: 37392
15:35
s2sh: __GLOBAL now derives from the base Object prototype. file: 44f57745c9 check-in: [82ae406400] user: stephan branch: trunk, size: 37040
2014-11-19
19:20
minor assertion improvement. file: eb4010762d check-in: [de65f26c68] user: stephan branch: trunk, size: 36880
19:04
s2: s2sh EXPERIMENTALLY exposes the top-most scope's variable storage via the __GLOBAL symbol (an Object). If we like it, it will move to a keyword to make it much faster. file: 1acee186d4 check-in: [2111f2269e] user: stephan branch: trunk, size: 36653
2014-11-16
13:48
s2: added s2.getResultCodeHash(), a map of CWAL_RC_xxx and S2_RC_xxx for script space. Other minor tinkering. file: 36d0c8dc0c check-in: [e40a358147] user: stephan branch: trunk, size: 35831
2014-11-14
18:36
s2: minor tinkering, extended Exception.codeString() a bit. s/isDereffable/isDerefable/g. file: 4134b3c6a2 check-in: [12afba3491] user: stephan branch: trunk, size: 35787
13:29
Added s2.isDereffable(). file: 514e4898cf check-in: [48a15eb8ea] user: stephan branch: trunk, size: 35788
10:32
s2: minor refactoring, moved fork() binding out of the shell, into the public binding API. file: 46893568dc check-in: [4f17506ec4] user: stephan branch: trunk, size: 35742
2014-11-13
17:43
s2: merged in s2-dotdot-op, but am not documenting it yet because i am still uncertain about whether it will stay or not. file: 1e9fb7e159 check-in: [71df0812b2] user: stephan branch: trunk, size: 36078
17:32
s2sh: minor help text addition. file: ced2e7f20d check-in: [38a4ac1926] user: stephan branch: s2-dotdot-op, size: 36078
15:34
s2sh: increased integer recycling bin size, as data-heavy apps (e.g. libfossil reports) run through lots of integers. file: 7455f12e15 check-in: [bd2685898e] user: stephan branch: trunk, size: 36051
2014-10-31
08:44
s2: fixed Function.call() to accept a non-object "this", other minor cleanups. file: c37b6e4972 check-in: [0519af4688] user: stephan branch: trunk, size: 36051
2014-10-13
17:14
Added a missing newline in an error message. file: 30ccd1136d check-in: [22258b807a] user: stephan branch: trunk, size: 36056
14:59
s2sh: minor error reporting tweaks. file: 748e26874d check-in: [5fa7e758a8] user: stephan branch: trunk, size: 36054
2014-10-12
09:04
minor cleanups in s2sh. file: 71cebf1903 check-in: [6646ba2cee] user: stephan branch: trunk, size: 35646
2014-10-11
08:47
added cwal_engine_adjust_client_mem() so that clients can account (in some minimal way) for memory via cwal metrics. s2 now uses this to report stack token and script function memory. file: a4ebf78e29 check-in: [8a484ca98c] user: stephan branch: trunk, size: 35378
2014-09-15
12:30
s2.dumpMetrics() now only dumps string interning tables on verbosity level 3 and higher or if passed a boolean true as its first parameter. file: a4682e22d8 check-in: [3fd18e0f10] user: stephan branch: trunk, size: 35408
2014-09-03
19:03
minor internal tinkering. file: 69774e4aa8 check-in: [bf4237278c] user: stephan branch: trunk, size: 35345
2014-08-31
15:26
doc additions for new users. file: b675e9b561 check-in: [c8996c8c3f] user: stephan branch: trunk, size: 35193
2014-08-30
04:22
more work on the s2 interruption. file: c3675f2bb4 check-in: [0d4158e5f6] user: stephan branch: trunk, size: 35102
2014-08-29
12:12
s2: experimenting with the ability to interrupt a running script, e.g. via Ctrl-C handler. Results look fairly promising but not perfect. Added Buffer|String.evalContents() and minor API changes to accommodate them. file: 2dfce06ca0 check-in: [cdf401e000] user: stephan branch: trunk, size: 35070
2014-08-28
16:56
minor exception message tweak. file: 8c959dc4e9 check-in: [6b283a0f71] user: stephan branch: trunk, size: 35036
16:45
s2: merged in fork() impl. It seems the array_set bug was the culprite for it not working before. file: 7ee569503c check-in: [cf9b7afa1b] user: stephan branch: trunk, size: 35033
2014-08-27
21:21
a round of commenting/docs. file: ae19e9e173 check-in: [90dc687e12] user: stephan branch: trunk, size: 32381
2014-08-26
20:18
s2sh: enabled string interning by default. It seems time. file: 60438f62a1 check-in: [587e2aa2c3] user: stephan branch: trunk, size: 29560
2014-08-25
17:43
s2: added s2_cb_is_callable() and s2.isCallable() to simplify some script code. file: 31074fac32 check-in: [91bc0544fa] user: stephan branch: trunk, size: 29560
2014-08-23
20:25
s2: fork() impl ported from th1ish, but the child process is returning with a very weird non-0 result i cannot trace. file: 3131544ec1 check-in: [87498ec295] user: stephan branch: s2-fork-impl, size: 32145
15:51
core: consolidate integers and doubles into one recycling bin where there sizeofs are the same. Have to check it in to try it out on the 32-bit box (where they differ). file: 368c86c660 check-in: [06a8a0df82] user: stephan branch: trunk, size: 29518
2014-08-19
18:24
s2sh: build fixes for when neither linenoise nor readline are used. file: af5e9daea7 check-in: [324bd49089] user: stephan branch: trunk, size: 28969
2014-08-17
17:09
s2sh: only install s2.shell API when in interactive mode. file: 7f9610ed20 check-in: [2c251c7b7f] user: stephan branch: trunk, size: 28723
11:26
s2sh: minor API renaming, added s2.shell family of functions for basic read-line access from scripts. file: f75aa4b06c check-in: [930d2f744e] user: stephan branch: trunk, size: 28609
2014-08-16
17:25
s2: minor restructuring to allow some of the currently core functionality to be loaded via DLLs instead (or in addition to). file: 93e3be52da check-in: [a77fb28977] user: stephan branch: trunk, size: 25041
2014-08-15
13:16
added cwal_buffer_fill_from_filename2(), patched s2_eval_filename() to use it (to avoid hypothetical corner cases involving non-NUL-terminated X-/Z-strings). file: 35acc76ae0 check-in: [4c8879eff0] user: stephan branch: trunk, size: 25033
2014-08-10
13:40
help text improvements. file: e9c6a96666 check-in: [d96422266d] user: stephan branch: trunk, size: 25025
12:21
fixed display of sweep/vacuum intervals in --help output. file: 48d296d74e check-in: [d850a9024d] user: stephan branch: trunk, size: 24824
2014-08-09
08:47
added s2.io.realpath(), patched require.s2 to use it. file: 595c4e9576 check-in: [f54dba503e] user: stephan branch: trunk, size: 24777
2014-08-07
21:12
s2: objects inheriting a function are now call()able, more keywords now treat {} as an object instead of a script. file: 74b5085d90 check-in: [a1c6680274] user: stephan branch: trunk, size: 24994
2014-07-31
19:47
Added optional GNU Readline support to s2sh. file: cd3c0ed5d6 check-in: [53d5b5ce92] user: stephan branch: trunk, size: 24935
2014-07-28
15:53
s2sh now prefers getenv("S2SH_INIT_SCRIPT") over $0.s2, but will use the latter if the former is not set. file: 33fa525e81 check-in: [df7edd3432] user: stephan branch: trunk, size: 23442
2014-07-26
18:52
s2: added script file name to s2_error class, and got it working in more contexts. file: 098a1efd7a check-in: [2285eb16ea] user: stephan branch: trunk, size: 23242
2014-07-20
13:41
s2: added s2.io.flush(). file: 8c59673917 check-in: [2315509a76] user: stephan branch: trunk, size: 23177
2014-07-18
17:42
s2sh now autoloads after extending, so that 3rd-party features can be used in the autoload script. file: 825cb49e00 check-in: [ea23993ade] user: stephan branch: trunk, size: 23144
14:40
s2: ported in strftime() impl from th1ish. file: 175ff87bde check-in: [066ab7f7a2] user: stephan branch: trunk, size: 23144
2014-07-17
17:52
s2sh: tinkering with recycling bin sizes. file: 0d3e51d064 check-in: [86a5705d13] user: stephan branch: trunk, size: 23025
2014-07-16
22:55
s2 now takes over cwal's top-most scope. file: e4fabfbe6f check-in: [640daaf522] user: stephan branch: trunk, size: 22586
2014-07-14
20:16
s2: ported in tmplish (s2.tmpl()), with minor mods, added s2.io.output/print(). file: 31c92fe78e check-in: [e66a6f2525] user: stephan branch: trunk, size: 22474
2014-07-11
20:08
s2: and this time set up the proper value. file: da68e17385 check-in: [ab8a9ffaf2] user: stephan branch: trunk, size: 22166
20:03
s2: mostly build-related stuff, getting s2sh client-extensible. file: 8d3a1ae21d check-in: [cc53da0c53] user: stephan branch: trunk, size: 22166
15:32
s2: ported in sleep() and mssleep(), installed as s2.time.ms/sleep(). Other minor cleanups along the way. file: 1eb3237b86 check-in: [03c1247d01] user: stephan branch: trunk, size: 21551
2014-07-10
19:07
s2: overhauled the scope subsystem, adding the s2_scope abstraction layer. Moved the sweep/vacuum guard levels, which are always scope-specific anyway, into that. Ooops - and i now see that the overloadable -> operator (which i thought was checked in last night) is also here. Wanted that done separately :/. file: 0ab1714d37 check-in: [f18c8ff4ed] user: stephan branch: trunk, size: 21507
2014-07-09
20:12
s2: Strings and numbers no longer inherit from Object. Added -a/--a option to s2sh, added more ob test code and a demonstration of how to implement 'switch' in script. Edit: doh, that means their prototypes no longer have access to the various Object methods unless we add them directly to these prototypes. file: 7ac22e1ea2 check-in: [21fbc0dc13] user: stephan branch: trunk, size: 21502
2014-07-08
20:58
s2: ported the "ob" API. file: 0b465924d2 check-in: [f7f7e7dff7] user: stephan branch: trunk, size: 21268
18:07
s2: added init script autoloading to the shell, but that reveals a shortcoming with the error-vs-exception dichotomy, in that we lose the script name (but keep line/column) when we trigger non-exception errors which are not handled until after the evaluator has returned. Hmmm. i really do not want to allocate that string :/. file: ac316c1e71 check-in: [b2c2222019] user: stephan branch: trunk, size: 20352
2014-07-07
20:29
s2: added a getenv(3) script binding. file: bb0ca9783e check-in: [2f4e931872] user: stephan branch: trunk, size: 20165
19:01
s2: ported in module loader and sample module. file: c819e4478b check-in: [460a4cf3ef] user: stephan branch: trunk, size: 20132
17:56
s2: ported in PathFinder class from th1ish, plus some related infrastructure. file: aed1fdc16b check-in: [a609daa8f4] user: stephan branch: trunk, size: 20090
16:30
s2: minor internal cleanups, ported in the JSON parsing API from th1ish. file: d5d6bdbafb check-in: [683900d70d] user: stephan branch: trunk, size: 20046
2014-07-06
16:01
s2: minor tinkering. break time. file: 1d9c1f895d check-in: [11bb54fc2c] user: stephan branch: trunk, size: 19994
13:23
s2: syntax errors triggered in script functions now report their position properly :-D. Fixed a mis-propagation of a result code when exiting the interactive shell right after an exception is thrown. file: 92917476bf check-in: [2671d11be4] user: stephan branch: trunk, size: 19630
10:17
s2: alternative impl of script func storage which uses a central hashtable to hold the body bytes. Not yet sure about mem costs. file: f4f4efd236 check-in: [6ce7937b3a] user: stephan branch: s2-funcs, size: 19618
2014-07-05
16:01
s2: minor internal cleanups, added interactive-by-default if isatty(stdin) to the shell. file: a0663a8501 check-in: [21addb0266] user: stephan branch: trunk, size: 19529
14:33
s2: added some missing overloadable ops, added --help to the shell app. file: 88a4b29c1f check-in: [e93101f988] user: stephan branch: trunk, size: 19307
2014-07-04
18:22
s2: added ++/-- for obj.property. Added s2_engine::metrics::nextTokenCalls. file: fa11047630 check-in: [e5558631f0] user: stephan branch: trunk, size: 15733
09:43
s2 shell: do not try to read from stdin by default in interactive mode. file: 028d94125c check-in: [f7a194388d] user: stephan branch: trunk, size: 15639
2014-07-03
22:26
s2: minor shell tinkering. file: 709b23197a check-in: [27e2e16195] user: stephan branch: trunk, size: 15619
21:52
s2: started work on an interactive shell mode using linenoise for input. file: 0a286909ad check-in: [04c0d82c9d] user: stephan branch: trunk, size: 14769
2014-07-02
22:30
s2sh: added -w and +w to adjust the sweep/vacuum intervals. file: eb530245af check-in: [3c53ce906a] user: stephan branch: trunk, size: 14141
22:07
s2: minor tinkering, mostly with how to adjust error location info for script function bodies. file: fba00f9e6b check-in: [25aebe67d6] user: stephan branch: trunk, size: 13858
18:18
s2: ported in the Hash class, other minor cleanups. file: ef10b06029 check-in: [62a274945f] user: stephan branch: trunk, size: 13235
2014-07-01
21:26
s2: ported in the Buffer class, a number of other tweaks. TODO: finish buffer unit tests. file: 68aeece0a5 check-in: [5f6b5a8f85] user: stephan branch: trunk, size: 13127
2014-06-30
22:47
s2: moved the dumpVal() to s2.dumpVal() file: d0a639b62a check-in: [9641050b03] user: stephan branch: trunk, size: 13055
19:52
s2: added Function.apply/call(). MUCH more efficient than in th1ish, too :). file: 9320e5708a check-in: [2a04e6480b] user: stephan branch: trunk, size: 12970
18:21
s2: ported more prototype-level bits. Got const object properties working at the C level, bt no script-side way of doing it yet. Removed one member from s2_func_state, trading an alloc the cost of a (non-propagating) member lookup. file: 27ea09195b check-in: [52e45abad7] user: stephan branch: trunk, size: 12981
2014-06-29
20:56
s2: minor recycling bin size tweaks, a typo fix. file: 776730f596 check-in: [70e2152a4c] user: stephan branch: trunk, size: 13050
13:57
s2: improved func call support (lifetimes invalidated prematurely), fixed a stale pointer usage, added function NAME(){...} option, recycle s2_func_state, added some metrics for func state. file: d1417bd1fe check-in: [479f623b39] user: stephan branch: trunk, size: 13048
2014-06-28
18:24
s2: calling script-created funcs seems to be working working. Error location info is wrong (it's relative to the function), but we'll eventually find a way around that. file: ca4f6ebc37 check-in: [ef7556dbf5] user: stephan branch: trunk, size: 12894
02:44
side effects of tonight's gc debugging session. Fixed return/refcount keyword ordering. file: 294f08ee3e check-in: [5800e99ab7] user: stephan branch: s2-semicolons, size: 12551
2014-06-26
20:04
removed an invalid unref. file: 9b0b6e6c9f check-in: [b12318df5c] user: stephan branch: trunk, size: 12167
19:07
s2: added while() loop. file: 4705e1d7ce check-in: [0146917516] user: stephan branch: trunk, size: 11777
2014-06-25
21:44
s2: added if/else. Turned off string interning by default in the shell. file: 3dcdcdaee4 check-in: [5c27b8123d] user: stephan branch: trunk, size: 11777
19:20
s2: added break keyword, fixed sweepup in eval-file subscopes, added global s2 object and s2.import(), several minor cleanups and fixes. file: ba605d9924 check-in: [cb6ce80c0b] user: stephan branch: trunk, size: 11777
2014-06-24
22:32
Moved auto-propagation of return/break/etc values (back) into the cwal core. s2: added refcount keyword. Fixed EOL handling for keyword RHS parsing (most require that the RHS start on the same line, or optionally treat EOL as an empty/undefined result, e.g. return/exit). file: a06700b1cc check-in: [7cc1a0c00c] user: stephan branch: trunk, size: 9922
19:55
s2: added return/throw/fatal/exit keywords, all specializations of eval/scope. file: 3f9777519c check-in: [e33a2d68a3] user: stephan branch: trunk, size: 9874
2014-06-21
14:50
s2: added PHP-style array-append operator, imported a bit more prototypes infrastructure, improved valgrind testing a bit. Added inherits operator. Keep forgetting to check in. file: 47faca2b21 check-in: [6e0c316928] user: stephan branch: trunk, size: 9140
2014-06-20
22:32
cleanups in s2 error reporting/handling. file: 1672b4015e check-in: [336caed0e0] user: stephan branch: trunk, size: 8941
18:48
s2: fixed a newline-slurping bug which caused expressions to bleed together. Added infrastructure for propagating return/exit/break values. file: 3f981d0350 check-in: [edd8c19dfc] user: stephan branch: trunk, size: 9569
2014-06-19
15:45
More exception-vs-fatal error distinctions. Lots of tinkering with sweep-up, fixing some cleanup timings. file: e500210f63 check-in: [f3e77e10f9] user: stephan branch: trunk, size: 9217
2014-06-16
21:47
minor cleanups before bed. file: bae16fc34f check-in: [d8ff1745bb] user: stephan branch: trunk, size: 8456
20:17
More work on operator overloading, +/- ops, got unary +/- on strings doing the right thing. file: 036a513798 check-in: [8bee802f30] user: stephan branch: trunk, size: 7814
2014-06-15
19:41
Seem to have gotten sweep-up working how i want it in s2. file: fdcf24715f check-in: [2239164d8f] user: stephan branch: trunk, size: 7673
15:52
extended s2 eval with a modifier to change eval behaviour. Started adding external unit test file infrastructure. file: 995232bcf9 check-in: [05af410235] user: stephan branch: trunk, size: 7480
14:11
Found a workaround wrt the newline handling in some cases. Don't like it much, but the tests are happy. file: 73af804c3c check-in: [052b1bcbba] user: stephan branch: trunk, size: 7449
12:50
Added: added very basic s2 shell (stdin only). Discovered some EOL-related problems along the way. file: 1c1c7a255b check-in: [948fb7e49e] user: stephan branch: trunk, size: 7216