forked from rebolsource/r3
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Split REJOIN into JOIN-ALL and UNSPACED cases
REJOIN in R3-Alpha was a construct which took a BLOCK! and was supposed to "reduce and join" its values. Its return type was cued by the first series type that the reduced block contents contained, e.g.: `rejoin ["abc" "def"]` => STRING! `rejoin [#{} "abc" "def"]` => BINARY! `rejoin [() () http://hostilefork ".com"] => URL! REJOIN was used in many applications where the expected result would be a STRING!. AJOIN was a more efficient function to call for the same purpose, because it was a native and always assumed a STRING! result. Yet the generality of REJOIN led people to be more familiar with it, and additionally `REJOIN []` had a base case result of `[]`. This commit substitutes calls to SPACED and UNSPACED as appropriate for those REJOIN calls which have string intent. It also introduces JOIN-ALL as a nicer-named version which has a base case of returning nothing (e.g. `join-all [() () ()]` is void), and which requires the first reduced element to be a SERIES! to work. (This is a requirement of JOIN which is now like REPEND, and JOIN-OF which is like R3-Alpha's JOIN.) Includes some formatting of the extension bootstrap script in order to make it more readable and fit in 80 columns.
- Loading branch information
1 parent
5fda0a7
commit 8494e7a
Showing
35 changed files
with
391 additions
and
221 deletions.
There are no files selected for viewing
This file contains 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
This file contains 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
This file contains 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
This file contains 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
This file contains 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
This file contains 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
This file contains 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
This file contains 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
This file contains 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
This file contains 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
Oops, something went wrong.