Skip to content

Fix 2138 parse tag in block#2

Open
giuliolunati wants to merge 119 commits intojohnk-:masterfrom
giuliolunati:fix-2138-parse-tag-in-block
Open

Fix 2138 parse tag in block#2
giuliolunati wants to merge 119 commits intojohnk-:masterfrom
giuliolunati:fix-2138-parse-tag-in-block

Conversation

@giuliolunati
Copy link

No description provided.

0branch and others added 30 commits March 10, 2013 21:21
Following discussion on AltMe, modify BROWSE to return R_UNSET rather
than R_NONE.

In addition, handle the NONE case correctly (return early).
Requested changes (requester):
* Binary support, and working tag support (BrianH)
* /case for case-sensitive comparison (BrianH)
* Specifying leading and trailing delimiters with /escape (i.e. for
HTML/XML entities) (BrianH)
* Being able to specify none as an /escape, equivalent to "" now
(HostileFork)
* Evaluating value expressions directly in a block spec, rather than
requiring the spec to be reduced, and /only to turn that off
(rgchris, BrianH, prompted by GrahamChiu's RebolBot code)
* Evaluating block values as code like functions, to cut down on
function
creation overhead, and /only to turn that off (rgchris)
* Special-case treatment of set-word keys as if they were regular words,
so block and object specs can be compatible (BrianH)
* Special-case treatment of lit-word keys as if they were regular words,
to be compatible with fully reduced specs (BrianH)
* Directly using values specs that already match what we need
internally,
to save overhead (BrianH)
* Better-phrased doc strings that are short enough to not wrap on the
Windows console (BrianH)
When performing tuple division, the floating point representation of
decimal divisors may yield surprising results.  For example, the
following expression

  >> 1.1.1 / 0.1

can return 9.9.9 or 10.10.10 depending on the host platform.

To address such discrepancies, `round(3)` before casting the result of
tuple element division to a `REBINT`; this should improve cross-platform
consistency.
This should ensure greater portability as `round(3)` was standardised as
part of C99.
For module Needs imports, give private module exports a
higher priority than runtime library (lib) imports. Doesn't
affect scripts, which use strict in-order precedence already.

See http://issue.cc/r3/1998 for details.
… function body.

Function body was unsuitable (unsafe) for the purpose since in R3 it is possible to define distinct functions sharing the same body.
Corrects bug#2025
handling correctly args = 0
…l frame when the closure is called.

Corrects #2048
Tested in Linux X86
Fixes CC#2045
Adjust Rebind_Block to be more compatible with Bind_Block
Define rebind modes
Adjust Clone_Function to use rebinding
A console mode Rebol binary has the following advantages:

- Reuses an existing command prompt
- Works with alternative command prompts (such as Console 2)
- Slightly improves the handling of redirected standard IO

Until we reintegrate /View capabilities and/or a custom graphical
(R2-style) console, building console mode binaries is the better default
for Windows.
Since there was no strong opinions on this
in the http://issue.cc/r3/1545 ticket
I would keep it in Rebol 3 to converge towards
the level of usefulness Rebol 2 provided.
Fixes CC#2050
No need to save the block in COPY_DEEP_VALUES since the function does not call Recycle
Deep clone child values
Rebind child values
Optimize Merge_Frames to use rebinding table
Add a new REBIND_TABLE mode to Rebind_Block
Add boilerplate to reb-dtoa.h
This is a major change improving accuracy and compatibility of LOAD DECIMAL! across platforms.
Also, improves accuracy and compatibility of MONEY! to DECIMAL! conversions across platforms.
The print statement was the only reason LOAD had a /next option.
With no print statement, there should be no option.
…tion.

Modify INTEGER! addition and subtraction to not use undefined arithmetic.
Modify integer comparison to not use undefined arithmetic.
Fix bug#2054
Do not use MAX_NEG_INT in t_integer.c (problematic name).
Amend a comment referring to reb-config.h
Replace undefined arithmetic
Detect overflow of arithmetic shift
Process_Key doesn't query termcap or terminfo for the correct
control sequences. Accepting both ESC-[ and ESC-O mimics xterm.
BrianHawley and others added 30 commits February 17, 2014 10:52
LOAD and IMPORT treat binary data as UTF-8 source. So should DO.

Also, fixes an outdated comment.
Delete REBDCL type definition (no longer used in code).
Based on mul64 since it updates reb-c.h
Get rid of INT_64_MODE (the code is not consistent with its opposite anyway)
Use C99 integer definitions where available
Use typedef long i32 for non-C99 and non LP64 compilers
Make DO binary treat the binary as source
Correct multiple inheritance, CC#1863  (please verify the result as it relates to rebol#143 - thanks.)
Fix unwind passing (CureCode issues 1509, 1515, 1519, 1760)
Suppress compiler warnings. Accepted, but with the comment posted to this change, that should anyone have a problem compiling Rebol core for some odd platform, that we find a fix.
…eing GCed

-added Host_Lib->devices reference to be able access host Devices array from core dll
Android don't have S_IREAD and S_IWRITE
The glibc documentation describes S_IREAD/S_IWRITE as "obsolete
synonym[s] provided for BSD compatibility." Bionic (the libc used on
Android) does not define S_IREAD/S_IWRITE at all.
- Fixes the word comparison problem from http://issue.cc/r3/2113
- Clean up REBINT vs REBCNT type mismatches in UTF decoding.
Get rid of if/else refinement and related warnings.
Fix word hash collision and function parameter type mismatches
Build CLI binaries for Android. (BrianH: I agree that non-GUI apps will want some of the common libs eventually.)
reserved version number for Android/ARM (official NDK+SDK) R3 port
…-not-at-end

Fixes FUNCTION and CLOSURE when /local not last refinement
PARSE string using tag! doesn't consider the < and > when used with to block!
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.

8 participants