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
; proof of concept (but usable!) implementation of immutable persistent 'blocks' in Red | |
; author: Jay G. Porcasi (@numberjay) | |
; the exported API is at the bottom, starting with: set '<function name> ... | |
; free to use without any warranty of any kind: use at your own leisure and risk | |
; for bugs, suggestions, questions... comment here below or reach me on Gitter (@numberjay) | |
; copyright Jay G. Porcasi 2017 | |
context [ | |
; all functions ending with ' are helper functions working on 'immutable' blocks only |
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
Red [ | |
author: ["Gregg Irwin"] | |
notes: { | |
Experimental requesters, for design discussion. Not just about the | |
implementation, but about modal vs modeless dialogs. I think there's | |
value in the simple, modal approach, but we probably want to provide | |
more advanced options. e.g. document/sheet modal, and mobile standard | |
approaches. | |
TBD: Determine if we want to build everything on inner funcs that are |
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
Red [] | |
e.g.: :comment | |
delta-time: function [ | |
"Return the time it takes to evaluate a block" | |
code [block! word! function!] "Code to evaluate" | |
/count ct "Eval the code this many times, rather than once" | |
][ | |
ct: any [ct 1] |
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
Red [ | |
Title: "Parse Info" | |
Purpose: { | |
Provides some stats about internal parse states usage for a given parsing job. | |
Could be used as a way to compare efficiency of different parsing strategies. | |
} | |
Date: 06-Oct-2017 | |
] | |
context [ |
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
Red [ | |
Purpose: {Implementation of a "capture-by-value" closure generator} | |
Date: 4-Oct-2017 | |
] | |
collect-words: function [ | |
spec [any-list!] | |
/deep | |
/set | |
/to-set |
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
; Stats added by @toomasv | |
compare-times: func [ | |
blocks "Block of code blocks to performance compare" | |
/count ct | |
/local t n baseline res blk stats1 memory time code template | |
][ | |
ct: any [ct 1] | |
t: now/time/precise | |
loop ct [do []] | |
baseline: now/time/precise - t |
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
Red [ | |
title: "Red Object Browser" | |
author: "Gregg Irwin" | |
needs: 'View | |
] | |
e.g.: :comment | |
map-ex: func [ | |
"Evaluates a function for all values in a series and returns the results." |
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
Red [ | |
Title: "Nsource - native source" | |
Purpose: "Print source for native functions" | |
Author: "Boleslav Březovský" | |
Date: "8-6-2017" | |
] | |
indent: func [ | |
"(Un)indent text by tab" | |
string [string!] "Text to (un)indent" |
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
Red [] | |
inc-value: func [ | |
face | |
color-id | |
dest-face | |
/local value rate | |
] [ | |
unless face/extra [face/font/color: 255.255.255] | |
overflow?: false |
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
Red [ | |
Author: "Toomas Vooglaid" | |
file: "%regex.red" | |
Purpose: {Regex to parse converter} | |
History: {Started: 2017-05-09 | |
v.0.1: 2017-05-12 -- first working version with: | |
start `^^` and end `$` anchors, | |
non-capturing groups (one level) with alterns, | |
quantifiers (possessive), | |
some character-classes. |