Example on how to use swap! with multi-arg fns.#1
Merged
burinc merged 3 commits intoburinc:mainfrom Nov 9, 2025
Merged
Conversation
- push swap! towards the edges
25e43d9 to
f3220a0
Compare
Owner
|
This is awesome @slipset. I will update the article later with your changes. 💯 |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This lets you avoid anonymous fns (which are really where the meat of the program is done, and it lets you push the
swap!s to the edges of your system, and as you see from just this example, you now (again) have multiple swaps following each others.I can imagine that you can end up with very few
swap!s, composing changing the game state more or less purely.