Skip to content

Conversation

@wiredwiz
Copy link
Contributor

This adds the functionality for adding two maps together and for subtracting one map from another. In the case of addition, the key/value pairs from the right map are added to the map on the left. Thus, if there is a key collision, the key/value pair on the right side of the addition operation will be in the resulting map, rather than the left hand side. In the case of subtraction, the keys from the map on the right hand side, are removed from the map on the left hand side. A copy of the left hand side map is returned, minus the removed keys. Any keys that do not exist will simply be ignored. Using the subtraction operation, you could easily find key intersections between two maps. The error messages are also updated to reflect that maps can be used in +/- operations.

wiredwiz and others added 30 commits July 21, 2022 17:26
Fixed typo in comments
…ecrement operators. They will be pursued later. Initial functionality of raw drecrement and increment finished (does not save the value back to source).
…s, but causes a panic on core dump currently.
Adding documentation for the new supported operators to be merged in soon from the NewOps branch.
…code to handle all those over the original 256 limit.
wiredwiz and others added 19 commits July 31, 2022 02:39
…istdude-master

# Conflicts:
#	src/curl.cc
Merging in my docker check to remain commit current
MAX_BASE_FUNC overflow causes function 256 (counting from 0) to overflow, creating a call to function 0 (run_gc)

Checking out from master, the function is `char_list()`. Checking `;function_info()[257][1]` should tell you the affected builtin if you're running a modified build.

Before:
```
;char_list("bob")
#-1:Input to EVAL (this == #-1), line 3:  Incorrect number of arguments (expected 0; got 1)
... called from built-in function eval()
... called from lisdude#58:eval_cmd_string, line 19
... called from lisdude#58:eval*-d, line 13
(End of traceback)
```

After:
```
;char_list("bob")
=> {"b", "o", "b"}
```
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants