• Home
  • Script library
  • AltME Archive
  • Mailing list
  • Articles Index
  • Site search
 

AltME groups: search

Help · search scripts · search articles · search mailing list

results summary

worldhits
r4wp55
r3wp797
total:852

results window for this page: [start: 301 end: 400]

world-name: r3wp

Group: All ... except covered in other channels [web-public]
Terry:
9-Feb-2005
Sunanda, i need to replace escaped charaters in strings.. "Carl Sassenrath"
Sunanda:
9-Feb-2005
You'll probably need a parse pass then.
Or a replace loop.
Terry:
9-Feb-2005
I have a block of value pairs, and can do a foreach [ascii chara][replace/all 
..] but that seems rather crude
Micha:
27-Feb-2005
parse s [some [start:   3 [number "."]   number opt #":" 1 5 digit 
 end: (append ips load  replace  copy/part start end ":"
 " " ) | skip]]
RobertDumond:
1-Dec-2005
hallo, alls... I am not sure where to post this, so I figured I'd 
do it here...  I am trying to replace the default icon's for an encapped 
app using Resource Hacker... but if I replace the icons, the app 
crashes with an Out of Memory error... here's the actual output:** 
Script Error: Not enough memory
** Near: script: decapsulate
if none? script
** Press enter to quit...
Allen:
1-Dec-2005
Make sure you only replace the existing icons, don't add any other 
sizes/formats that aren't already there.
Volker:
1-Dec-2005
related? http://www.rebol.net/cgi-bin/rambo.r?id=3911&Response:

 Please note, that for it to work, you must replace the builtin icon 
 with one that is *exactly* the same. Otherwise, you get errors like 
 the above. -Gabriele
Gabriele:
2-Dec-2005
If the icon you replace is even one byte longer or smaller, it gives 
that error.
BrianH:
2-May-2006
Parse uses a lot of temporaries for doing common tricks with code 
blocks that should really be built into parse as keywords, like REMOVE, 
REPLACE, UNLESS, USE, etc.
BrianH:
4-May-2006
Here are some minimum additonal parse operations, and some workarounds 
that could be used to replace them until they are implemented.

fail ==> [end skip]
check (code) ==> (tmp1: unless (code) [fail]) tmp1
remove rule ==> tmp1: rule tmp2: :tmp1 (remove/part :tmp1 :tmp2)

replace rule (code) ==> tmp1: rule tmp2: :tmp1 (tmp1: change/part 
:tmp1 (code) :tmp2) :tmp1

replace-only rule (code) ==> tmp1: rule tmp2: :tmp1 (tmp1: change/part/only 
:tmp1 (code) :tmp2) :tmp1

into-string rule ==> set tmp1 string! (tmp1: unless parse tmp1 rule 
[fail]) tmp1


Note that if parse operations are changed to take refinements or 
if these are being done as rewrite rules, replace-only and into-string 
could be expressed as remove/only and into/string. This would be 
slower in a native implementation, but about the same in rewrite 
rules. It would look more REBOL-like if that matters to you.


A rewrite engine for these workarounds will need temporaries for 
their implementation. The caller would need to provide a block of 
their own temporaries, and would not be able to reuse them in their 
code. The rewriter will need to count temporaries and complain if 
the caller doesn't provide enough. As with all parse rules, these 
temporaries will not be recursion-safe. Directly nested rules should 
be fine as long as there are enough temporaries provided.
Group: !AltME ... Discussion about AltME [web-public]
Volker:
26-Jan-2007
Complete sentence?  czech would  be impossible. German woudl be hard 
;)

but  writing in english mixed with native words and replace them 
before posting is nice.
Edgar:
21-Dec-2007
If my work is not in computer developments, I would replace it with 
XP already.
Geomol:
16-Apr-2009
How long will Facebook last? What will replace it?
Group: RAMBO ... The REBOL bug and enhancement database [web-public]
Henrik:
11-Feb-2007
ah, so it would replace the character at the position and then insert 
the string from there?
Anton:
23-Apr-2007
eh?
>> replace "aa-aa" "aa" "P"
== "P-aa"
Graham:
23-Apr-2007
replace/all ???
Anton:
29-May-2007
You meant, center and *right* aligned text can not be edited.

But yes, this is a long-standing bug, and it's annoyed me a few times.
Actually, this is something that *could* be worked around.

We just need to figure out how caret-to-offset and offset-to-caret 
work, then write mezzanines to replace them. I've been meaning to 
do this for a while.
Oldes:
13-Jun-2007
never mind, you can delete it, I already have a solution... anyway... 
it would be nice to replace the clean-path function with the Anton's 
simple-clean-path
Group: Core ... Discuss core issues [web-public]
Terry:
12-Nov-2005
rebol []

theTOC: ask "Table of contents (seperate with <p></p> tags): "
theHeader: ask "Header: "
theNumOfBars: ask "Number of chart bars: "
outputPath: ask "Save path (with trailing / ie: c:/): " 


getTemplate: read http://o7o.org/files/aflax/examples/barchart/barchart.html

getSWF: read/binary http://o7o.org/files/aflax/examples/barchart/aflax.swf

replace/all getTemplate "$TOC" theTOC
replace/all getTemplate "$theHeader" theHeader
replace/all getTemplate "$numOfBars" theNumofBars

write to-rebol-file join outputPath "barExample.html" getTemplate
write/binary to-rebol-file join outputPath "aflax.swf" getSWF
browse to-rebol-file join outputpath "barExample.html"
JaimeVargas:
16-Nov-2005
Nice. Replace on place. ;-)
JaimeVargas:
29-Dec-2005
Rebol []

comment [
	; example usage:
	kernel: load/library %kernel32.dll

 routine-call kernel "MulDiv" [int] [3 [integer!] 2 [integer!] 1 [integer!]] 
 ; == 6
]

routine-call: func [
	library [library!]
	routine-name [string!]
	return-spec [block!]
	arguments [block!] 

 /typed {Arguments is block structure is: [argument-value [datatype] 
 ...]}
	/local routine spec call argument type typed-rule
] [
	spec: make block! length? arguments
	call: make block! (length? arguments) / 2 + 1
	insert call [return routine]
	typed-rule: copy []
	if typed [typed-rule: [set type skip]]
	parse reduce arguments [
		any [
			set argument skip
			typed-rule
			(
				insert/only tail spec 'argument
				insert/only tail spec either typed [
					type
				][
					reduce [type?/word get/any 'argument]
				]
				insert/only tail call get/any 'argument
			)
		]
	]
	insert tail spec [return:]
	insert/only tail spec return-spec
	routine: make routine! spec library routine-name
	do call
]

use [libc zero-char as-rebol-string malloc][
	libc: load/library %/usr/lib/libc.dylib ; osx variable

	zero-char: #"^@"

	as-rebol-string: func [
		[catch]
		s [string!] 
		/local pos
	][

  unless pos: find s zero-char [throw make error! "s is not a c-string"]
		s: head remove/part pos tail s
		replace/all s "\n" newline
		replace/all s "\t" tab
	]
	
	malloc: func [
        size [integer!] "size in bytes"
    ][
        head insert/dup copy {} zero-char size
    ]

	sprintf: func [
		spec {block structure is: [format values ...]}
		/local s
	][
		s: malloc 4096
		insert/only head spec 's
		routine-call libc "sprintf" [int] spec
		as-rebol-string s
	]
	
	printf: func [
		spec {block structure is: [format values ...]}
	][
		print sprintf spec
	]
]
Anton:
11-Feb-2006
Yep, Anamonitor 2.0, next to the help button, there's a field that 
says "Name or command". Replace that string with "ctx-edit" for instance.
DideC:
9-Mar-2006
Is there a "Rebolish" way to change this string! :
	"A text with%27some%25encoded chars"
to this string! :
	"A text with%some'encoded chars"
Without using replace/all in a loop?
Jarod:
27-Mar-2006
that is my primary need or want to use rebol for, is to manipulate 
text. I like perl, but  love rebol's small footprint, if it can give 
me the same power of perl in a much smaller package, with a gui, 
that is all the better. I could potentially replace access and a 
lot of proprietary tools with a small rebol view application.
Allen:
29-Mar-2006
As a general rule, try to use native! looping functions, they are 
faster. In the above the native! "repeat" could replace the use of 
"for"
eFishAnt:
28-Apr-2006
to try to patch ubuntu REBOL/Core today for serial ports, I did:
reb-orig: read/binary %rebol
replace/case reb-orig "ttyC0" "ttyc0"
write/binary %rebol-patched reb-orig


...but when I try to run the patched binary it gives some crazy line 
errors.   I differenced the two executibles in REBOL and got some 
crazy differences more than just what I thought I was changing.
eFishAnt:
28-Apr-2006
(2 of my computers died, so I don't have the hex-edit.r of Ryans...so 
was seeing if I could just patch the binary with REBOL itself.   
Perhaps the replace by strings did some inherent conversion of the 
REBOL executible...not sure.
BrianW:
14-Jun-2006
and again I answer my own bloody question:

replace/all (mold real-text) "^/" "^^/")


Guess I don't actually start thinking for myself until I ask the 
question somewhere that I can look dumb ;)
JaimeVargas:
22-Aug-2006
Just a small typo, replace b with series for the examples of FOR 
usage.
Group: View ... discuss view related issues [web-public]
Henrik:
12-Jun-2005
christianE: what it does is I create simply a fixed grid of textboxes 
and replace the text in them on the fly. that's much faster than 
setting offset for a very big pane. this way it doesn't matter how 
big the list is, it'll stay fast
Pekr:
24-Jun-2005
as Cyphre suggested to me privately - first instance of lay2 looses 
reference to the window, as it is regenerated during second button 
press. But that "face" remember its parent face. Try to replace unview/only 
lay2 with unview/only face/parent-face .... the question is, if that 
is a bug or not - should we be able to create such wrong code using 
VID?
Volker:
1-Jul-2005
desktop: none in user.r could work. would replace 'desktop-func with 
a nop. not tried.
Group: Parse ... Discussion of PARSE dialect [web-public]
Robert:
1-Sep-2007
Paul, do a search & replace upfront. Much simpler than to create 
complex parse rules.
[unknown: 5]:
1-Sep-2007
Thanks Robert, I'll look into that further as I did place with replace 
but because they were quotes it seemed that parse/all still wanted 
to break apart at a quote even though I told it only tabs.
BrianH:
23-Feb-2008
replace/all form [a b c d e f] " " "-"
Chris:
5-Nov-2008
So that would replace 'true?
BrianH:
8-Nov-2008
Interesting! It sounds like it is related to OF, Carl's idea to replace 
DELECT. That would be useful for making DELECT-style dialects without 
the parameters being optional. How important is it that the parameters 
be mandatory?
Steeve:
10-Nov-2008
it could be very interesting and replace USE in many cases
BrianH:
14-Nov-2008
CHANGE basically needs the same information that the CHANGE REBOL 
function needs:
- A start series/position
- An end position or length
- A value to replace with
- Some options, if you need them

The CHANGE proposal has all those, and there isn't much more we can 
simplify it :)
Sunanda:
22-Nov-2008
Replace "{" with to-char 0 then put it back afterwards? (Assuming 
to-char 0 does not occur in your string)?

I've done that sort of thing before to get around parse limitations 
(whether the limitation is in 'parse or my understanding of it)
Maxim:
16-May-2009
ok, so we replace the spaces in the headers by "-"  and create an 
object out of all the code...
Graham:
16-May-2009
I guess I can do it without using parse .. just replace all the headers 
with a mark, that allows me to split off all the sections, and then 
i can match the sections with all the section headers.
Maxim:
16-May-2009
here you go  :-)


data: {CC:
Patient complains of sore throat.

HPI:
ONSET: Sudden, TIMING: Constant, DURATION: 3 days

INTENSITY: Moderate, QUALITY: Burning, MODIFYING FACTORS: head position

CURRENT MEDICATIONS:
TYLENOL W/ CODEINE NO. 3 300MG;30MG 1-2 po q 4-6 hrs prn "pain"
cyclobenzaprine Oral Tablet 10 MG 1 tab po TID prn "muscle spasm"

MEDICAL HISTORY:
Rheumatic heart disease, unspec. 391.9
Eczema, atopic dermatitis 691.8
dyslipidemia

ALLERGIES:
Penicillin - allergy: Allergy
Penicillin - allergy: Allergy
Penicillin - anaphylactic reaction
lovastatin - allergy: allergic
macrodantin - 1 po BID

SURGERIES:
}

data: parse/all data "^/"


header-lbl: ["CC" | "HPI" | "ONSET" | "INTENSITY" |"CURRENT MEDICATIONS" 
| "MEDICAL HISTORY" | "ALLERGIES" | "SURGERIES"]

spec: []
foreach line data [
	unless parse/all line [
		copy hdr [header-lbl ":"]
		here:
		(

   append spec to-set-word head remove back tail replace/all hdr " " 
   "-"
			append spec copy/part here tail line
		)
	][
	
		if string? item: last spec [
			append item line
		]
	]

]

probe context spec
BrianH:
28-Sep-2009
That's how REPLACE works...
BrianH:
28-Sep-2009
See, your method would allow REPLACE/part to be called directly.
Pekr:
2-Oct-2009
simply put - you replace original string, right? You put new one 
into the string being replaced. If the new one is of the less length, 
then only such length is being replaced. If the new one is longer, 
then the string is shifted/extended.
Pekr:
2-Oct-2009
But change/part just tells you, how many chars you replace, no? mmnt
Steeve:
2-Oct-2009
change must replace the complete matched rule, it has nothing to 
do with the quality (length) of the replacement data.
I'm sure it's a bug
Pekr:
4-Oct-2009
those should replace read/lines iirc
jack-ort:
11-Dec-2009
Help!  Still struggling to understand parse.  How could I replace 
any and all SINGLE occurrences of  the single-quote character anywhere 
in a string (beginning, middle or end) with TWO single-quotes?  But 
if there are already TWO single-quotes together, I want to leave 
them alone.

TIA for any and all help for a newbie!
Steeve:
11-Dec-2009
i think i misunderstood something, replace {"} by {'} maybe
WuJian:
11-Dec-2009
newbie's solution,without  PARSE:
>> s2: {1 ''2 '3 4 ' '5 ''6 '7 8 9 '0'}

>> replace/all s2 {''} {'}     replace/all s2 {'} {''}      print 
str
1 ''2 ''3 4 '' ''5 ''6 ''7 8 9 ''0''
>> str == s2
== true
Graham:
12-Dec-2009
Chuck Moore uses color extensively in his color forth .. to replace 
other types of syntactic markup.
Steeve:
29-Jan-2010
you can, just replace <tag> by a real string "<tag>"
Henrik:
13-Apr-2010
I can understand why you would want to, though, as an advanced search/replace 
tool.
Tomc:
15-Apr-2010
try this way, with one replace  change may be more efficent , with 
2 replaces bith would need to be in the sccond half of the file , 
with three in the last third ,with 4 the last quarter ...so although 
there may exist pathological cases where it is more efficent it is 
best not to cater to them.  there  may also be an argument  for not 
allocating twice as much memory but iby the time your file is that 
large you are already running into problems (in r2 at least)
Terry:
24-May-2010
>> spam: "[15/May/2010 17:59:56] IP address 190.101.1.10 found in 
DNS blacklist SpamHaus SBL-XBL..."

== {[15/May/2010 17:59:56] IP address 190.101.1.10 found in DNS blacklist 
SpamHaus SBL-XBL...}
>> replace/all spam "]" "" replace/all spam "[" ""

== {15/May/2010 17:59:56 IP address 190.101.1.10 found in DNS blacklist 
SpamHaus SBL-XBL...}
>> blk: parse/all spam " "

== ["15/May/2010" "17:59:56" "IP" "address" "190.101.1.10" "found" 
"in" "DNS" "blacklist" "SpamHaus" "SBL-XBL..."]
>> date: blk/1
== "15/May/2010"
>> time: blk/2
== "17:59:56"
>> ip: blk/5
== "190.101.1.10"
Maxim:
21-Sep-2010
you can replace the ":" rule with this:

		; end of token
		[
			
			[":" spaces newline]
			|
			":"
				
		]
Group: Syllable ... The free desktop and server operating system family [web-public]
Kaj:
17-Jun-2007
I do want to replace the entire site piece meal with our own REBOL 
system in the future, though
Kaj:
15-Sep-2008
Could replace the whole RebelBB/Dovecot thing with a REBOL script 
in an evening :-)
Graham:
6-May-2010
Graphical desktop server version?  To replace the desktop desktop 
version??
Kaj:
24-Sep-2010
So that's one of the next targets to replace
Kaj:
13-Jan-2012
Some modules have dependencies, but I think you can build the PS/2 
driver on its own. After that you need to replace the one in the 
system with it, and then you may have to restart
Kaj:
15-Jan-2012
# The plugin comes from the "ppp" package
# there's no need to install rp-pppoe
plugin rp-pppoe.so
# Replace "eth0" with your network interface name
eth0
Group: !RebGUI ... A lightweight alternative to VID [web-public]
Ashley:
6-Nov-2005
What if the table widget had a "flatten" type option that did a replace/all 
CR on your data?
Ashley:
6-Nov-2005
Let me rephrase: if it did a replace/all on the *displayed* data.
Pekr:
18-Nov-2005
I am not against being innovative, but .... not sure that actually 
replace classical menu by circular one, removes reasons we try to 
abandon menu for :-)
Volker:
5-Dec-2005
Would enable better editors. saving caret in face itself, for later 
find, replace etc.
Anton:
7-Dec-2005
Anyway, I might advise to replace FIRST with PICK.
shadwolf:
28-Dec-2005
i know that the purpose of rebGui is in fact to be a replacement 
system for vid ( but keeping based on VID..) so maybe it would be 
easier to replace vid faces by rebGUI faces once RebGUI ill be as 
good as we expect ( it's pretty good this is not a critic ..)
Volker:
3-Feb-2006
means i have to patch nearly everywhere a little bit, although close 
to find/replace. Can do that.
Ashley:
28-Feb-2006
And more. In VID you can quite easily add a face to another face's 
pane, whereas in RebGUI you sometimes want to add (or replace) a 
particular widget in a display with another (there is little need 
in RebGUI to add faces to a pane as these low-level details are taken 
care of by the widgets themselves).
Claude:
9-Mar-2006
db: open odbc://user:[pass-:-server]
stm: first db

insert stm {select numutl, nom,station from dbo.users order by numutl}
res: copy[]
foreach row (copy stm) [
append res row/1
append res row/2
append res row/3
]
close stm
close db

unit-size: 4
font-size: 12
tab-size: 120x55

languages: copy []

foreach language sort read %./rebgui/language/ [
	insert tail languages form replace language %.dat ""
]


do show-tour: does [

	display "Widget Tour" compose/deep/only[

  ex-table: table  (tab-size - 48x18) #HW options ["ID" left .3 "Nom 
  Utilisateur" left .10 "Station de connexion" left .40] data (res)
Ashley:
30-Mar-2006
line-list is the culprit. Replace the 'show-text and 'clear-text 
functions in %rebgui.r with the following:

show-text: make function! [
	"Sets a widget's text attribute."
	face [object!] "Widget"
	text [any-type!] "Text"
	/focus
][
	face/line-list: none
	insert clear face/text form text

 all [face/type = 'area face/para face/para/scroll: 0x0 face/pane/data: 
 0]
	either focus [ctx-rebgui/edit/focus face] [show face]
]

clear-text: make function! [
	"Clears a widget's text attribute."
	face [object!]
	/no-show "Don't show"
	/focus
][
	face/line-list: none
	clear face/text

 all [face/type = 'area face/para face/para/scroll: 0x0 face/pane/data: 
 0]
	unless no-show [
		either focus [ctx-rebgui/edit/focus face] [show face]
	]
]
Ashley:
31-Mar-2006
You can even take it a step further and replace (a) with the database 
call itself; e.g. (sql [select * from t]) ... just make sure you 
either use compose/only to keep the result set as a block or compose/deep 
with embedded block; e.g. [(sql [select * from t)]
Ashley:
30-Apr-2006
Do you have published the build-script that creates rebgui.r?

REBOL []

;	combine source scripts
do/args %prerebol.r [%rebgui-ctx.r %tmp.r]
;	remove header
save/header %tmp.r load %tmp.r []
;	remove indentation
do/args %prerebol.r [%tmp.r %rebgui.r]
delete %tmp.r
;	remove newlines and surplus spaces
gui: trim/lines read %rebgui.r
;	compact block delimiters
replace/all gui "[ " "["
replace/all gui " ]" "]"
replace/all gui " [" "["
replace/all gui "] " "]"
;	compact expression delimiters
replace/all gui "( " "("
replace/all gui " )" ")"
;	final write
write %rebgui.r gui
Volker:
21-May-2006
Is there  interest in an editor-field which supports find/replace 
etc?
Ashley:
31-May-2006
First cut attempt at set- functions to replace various show- functions:

set-attribute: make function! [
	face [object!] "Window dialog face"
	attribute [word!] "Attribute to set"
	value [any-type!]
	/no-show "Don't show"
	/focus
] [
	face/:attribute: case [
		string? value		[
			face/line-list: none

   all [face/type = 'area face/para face/para/scroll: 0x0 face/pane/data: 
   0]
			form value
		]
		series? value		[copy value]
		attribute = 'color	[either word? value [get value] [value]]
		true				[value]
	]
	unless no-show [
		either focus [ctx-rebgui/edit/focus face] [show face]
	]
]

set-attributes: make function! [
	face [object!] "Window dialog face"
	attributes [block!] "Block of attribute/value pairs to set"
	/no-show "Don't show"
] [
	foreach [attribute value] attributes [
		set-attribute/no-show face attribute value
	]
	any [no-show show face]
]

Used like this:

	display "" [
		b: box
		button "A" [set-attribute b 'color red]
		button "B" [set-attributes b [color blue effect arrow]]
		button "Clear" [set-attributes b [color none effect none]]
	]
Ashley:
25-Jun-2006
Always a problem when working with string representations of a dialect. 
Try:

go: func [ template [string!]][
	width: 30
	display "testing ..." load template
]


Although this depends on width being global. But since you're working 
with strings anyway, why not forget binding and go with simple variable 
substitution as in:

	...
	replace/all template "%width%" 30
	...


with appropriate markers to prevent accidental partial replacements.
Normand:
30-Jun-2006
When there is text in a field and we do the focus on it, then the 
text is shaded black.  Is there a command where, instead of shaded 
region, the focus is simply the insertion point placed before the 
string in the field.  The shaded region presumes that we will replace 
it all with a new value.  An insertion point suggest that we will 
correct the entry.  The difference is that we do not have to systematically 
hit a left arrow key first, to correct the field.
Ashley:
22-Oct-2006
Hmm, I'm running build#36 and get the following when running the 
test case from ticket# 53:

click on "A" to hilight, then "Probe":

["A"]
[1]

then click "Remove" followed by "Probe":

none
[]

Replace the display title with:

	display join "Build " ctx-rebgui/build ...

It should display "Build 36".
Group: Rebol School ... Rebol School [web-public]
PatrickP61:
25-Feb-2009
I tried to replace the browse url-site with
browse to-url ajoin [k-prefix txt-site k-suffix]   to no avail.

Is there a way to "predefine" the code above the VIEW so that when 
the button is pressed, it will perform the desired task like

button "Open"    format-and-browse-site    <-- where this has been 
set to do the url-site assignment and browse funtions?
PatrickP61:
25-Feb-2009
So, I need to replace button "Open" browse url-site with something 
that will evaluate the url-site AT THAT TIME, rather than what I 
have it defaulted to
Graham:
27-Mar-2009
What I have found working with asynchronous functions that return 
data from database calls ... one should create some type of gui at 
the start of the call, and then replace that in the callback.
BrianH:
8-Mar-2010
>> to-date map-each x reverse parse head insert copy/part at "*[YY-MM-DD=03-06-30]*" 
12 8 "20" "-" [to-integer x]
== 30-Jun-2003

>> to-date replace/all form reverse parse copy/part at "*[YY-MM-DD=03-06-30]*" 
12 8 "-" " " "-"
== 30-Jun-2003
BrianH:
8-Mar-2010
And profile them to see which is better:


>> dp [to-date map-each x reverse parse head insert copy/part at 
"*[YY-MM-DD=03-06-30]*" 12 8 "20" "-" [to-integer x]]
== make object! [
    timer: 0:00:00.000023
    evals: 43
    eval-natives: 14
    eval-functions: 5
    series-made: 11
    series-freed: 0
    series-expanded: 0
    series-bytes: 731
    series-recycled: 0
    made-blocks: 6
    made-objects: 0
    recycles: 0
]


>> dp [to-date replace/all form reverse parse copy/part at "*[YY-MM-DD=03-06-30]*" 
12 8 "-" " " "-"]
== make object! [
    timer: 0:00:00.00004
    evals: 103
    eval-natives: 30
    eval-functions: 5
    series-made: 8
    series-freed: 0
    series-expanded: 0
    series-bytes: 530
    series-recycled: 0
    made-blocks: 2
    made-objects: 0
    recycles: 0
]
Group: !REBOL3-OLD1 ... [web-public]
BrianH:
4-May-2006
As for the hash (or assoc) index and list data combo, it has some 
advantages. When you are inserting and removing data a lot lists 
have a known speed benefit but the real advantage as far as indexes 
are concerned is in how lists handle series offsets (I'm using the 
word offset here because I'm using the word index to refer to the 
external hash/assoc index).


Blocks encode their offsets as a number offset from the beginning 
of the series:

>> a: [a b c]
== [a b c]
>> b: skip a 2
== [c]
>> index? b
== 3
>> insert next a 'd
== [b c]
>> b
== [b c]
>> index? b
== 3

List offsets are pointers to the associated list element.

>> a: make list! [a b c]
== make list! [a b c]
>> b: skip a 2
== make list! [c]
>> index? b
== 3
>> insert next a 'd
== make list! [b c]
>> b
== make list! [c]
>> index? b
== 4


If you are indexing your data and your data in in a block, you need 
to update your index with almost every insertion and removal because 
the references to latter positions of the block in the index will 
be invalid. With list insertion and removal, external references 
are likely to still be valid unless the referenced elements themselves 
are deleted. If you are sure to delete the reference from the index 
(or replace it with nones) the rest of the index should be OK. New 
index references can just be tacked on the end, or put into the first 
empty entry. This makes live indexes a lot more practical.


On the down side, if you are using lists and they are long enough 
to make linear searches impractical, you really do need an external 
index for them to be useful. Also you need to balance the overhead 
and complexity of keeping the indexes updated against their benefit. 
This technique is not for the faint of heart unless you can get some 
guru to do algorithms for you.
JaimeVargas:
31-Aug-2006
Why not simply get rid of rejoin and replace for the more useful 
DELIMIT?
BrianH:
5-Sep-2006
I was just using the same refinement /copy that bind uses, but I 
agree that its reuse as a local variable isn't very readable. I should 
use /local like my conjoin does. Speaking of conjoin, what do you 
think of the one above? The only speedup I can see to do is to replace 
the insert reduce with four inserts, but otherwise it seems useful.
Volker:
7-Sep-2006
BTW i would rething the name for 'decimal! . To me its base-10. float 
or such are better for floats IMHO. If that does not break to much, 
but should be a global replace.
Anton:
13-Sep-2006
.. and as far as I can tell, we are now not thinking to replace REJOIN 
with either of those, they would be complementary.
JaimeVargas:
20-Dec-2006
It could be replace if for example SPACE was use as delimiter.
BrianH:
13-Feb-2007
Number and character types are not modifiable. When you change a 
number, you actually replace it with a new number.
Group: !Cheyenne ... Discussions about the Cheyenne Web Server [web-public]
Pekr:
18-Feb-2009
If Cheyenne as a whole could work this way, I might consider using 
it. Other than that, I can't easily replace Apache at hosting location 
....
Graham:
5-Mar-2009
Robert, xfdf is a deprecated format once used by Adobe to specify 
the contents of fields in a PDF.  So, the above xfdf file will populate 
the fields TextField1, TextField2, syupdfid with $fname, $surname, 
and $syupdfid ... ( well,  I will replace those before I send the 
pdf. )
Dockimbel:
8-Mar-2009
Just replace the patched file in your current Cheyenne v0.9.19 sources 
folder.
Maxim:
13-May-2009
this being said, I will be using a cheyenne server for my brand new 
web setup, using remark to replace rsp completely.  So I will build 
a remark-mod shortly.
Dockimbel:
21-May-2009
Having the TCP/IP part open-sourced in R3 will be great. It will 
allow to use much faster OS hooks for file transfers, extend the 
port! API to bind only on selected interfaces, etc...I wonder if 
the main event loop will be there also, so we can replace the not-scalable 
Select( ) call by other faster ones or even integrate libevent. That 
would definitely make Cheyenne able to handle a much higher number 
of connections.
ChristianE:
19-Jul-2009
Heaving learned all that, I'm now able to replace the former error 
message with that one:
Graham:
6-Aug-2009
I did a search and replace to change the database handle in all my 
source rsp and r files, and altered the definition in the webapp. 
 that also does not work
301 / 852123[4] 56789