r3wp [groups: 83 posts: 189283]
  • Home
  • Script library
  • AltME Archive
  • Mailing list
  • Articles Index
  • Site search
 

World: r3wp

[!REBOL3]

Graham
21-Apr-2010
[2308]
R3 question?  http://synapse-ehr.com/forums/showthread.php?53-Error-Illegal-entry-in-bfchar-block-in-ToUnicode-CMap
BrianH
21-Apr-2010
[2309]
No, it's not an R3 question, those functions don't exist in R3.
Graham
21-Apr-2010
[2310]
Must be some library he is using
Steeve
21-Apr-2010
[2311x2]
trying to do scheme above tcp to aid with async protos
but each time i stick my nose in R3's network stuffs, I encounter 
limits which annoys me
Pekr
21-Apr-2010
[2313]
what limits, for e.g.?
Steeve
21-Apr-2010
[2314x7]
First, we can't add our own parameters to actors or change their 
type
e.g

I wanted to user the refinement read/part to allow custom breaking 
rules
>> read/part port 100  ; to read only 100 bytes
Fine it wors
*works
but then i wanted to allow any type of breaking rule, like
>> read/part port crlf ; to break into lines
And event more powerfull:
>> read/part  port [thru #"^@]
To allow any parsing rule as breaking point
but then i wanted to allow any type of breaking rule, like
>> read/part port crlf ; to break into lines
And event more powerfull:
>> read/part  port [thru #"^@]
To allow any parsing rule as breaking point
but then i wanted to allow any type of breaking rule, like
>> read/part port crlf ; to break into lines
And event more powerfull:
>> read/part  port [thru #"^@]
To allow any parsing rule as breaking point
Pekr
21-Apr-2010
[2321]
'read would have to be extended, to allow that, no?
Steeve
21-Apr-2010
[2322]
It's the purpose of scheme's actors
BrianH
21-Apr-2010
[2323]
READ/custom perhaps.
Pekr
21-Apr-2010
[2324x2]
well, read/write became low-level, and Carl still did not decide, 
how to replace missing R2's functionality ....
read/lines is missing most ...
Steeve
21-Apr-2010
[2326x2]
read/write, read/custom don't exist in R3
That's the point you can rewrite the functions as actors of your 
scheme but your not allowed to add/change the parameters
Maxim
21-Apr-2010
[2328]
IMHO: after the host, I think the whole device model will be last 
thing to get itself fixed, finalized and done.  when that occurs, 
we'll have a beta.
Pekr
21-Apr-2010
[2329]
http://www.rebol.net/r3blogs/0294.html
http://www.rebol.net/r3blogs/0127.html
BrianH
21-Apr-2010
[2330x2]
Thank, I was about to look for those.
I've been waiting for READ/as and WRITE/as for a while now, to apply 
to the clipboard:// scheme.
Steeve
21-Apr-2010
[2332]
what i got currently, is this:

p: open etcp://my-ip:my-port   ;immediate, does not connect

write p [verbose debug timeout 20]   ; pass a block of commands to 
change the config of the port

write p "echo toto"     ; the connection is established then data 
are sent
read p 		; one packet is waited and a binary is returned.
read/string p  ; one packet is waited and a string is returned

read/part p crlf    ; one or more packets are waited until the breaking 
rule is matched
Pekr
21-Apr-2010
[2333]
read/write/as solve just encoding, no? Still not abstracted encoder/decoder 
solution anyway .... old discussion :-)
BrianH
21-Apr-2010
[2334]
READ or WRITE /as just solves the encoding problem. Which for the 
clipboard:// scheme means chosing which one of several encodings 
is already strored in the clipboard, at least for most modern OSes.
Pekr
21-Apr-2010
[2335x3]
ah, what? /string and /lines were added? Well, we can't keep to original 
ideas, probably ...
IIRC originally we had following specs: read file /part size /skip 
len
In such case, maybe it was better to still have read-io, write-io, 
and make read and write more higher level. What is the reason to 
first "prune down" function, and later on give-up, and add other 
refinements, because the practical merits push us to do so?
BrianH
21-Apr-2010
[2338]
I like READ and WRITE being lower-level - it makes the semantic model 
of ports simpler. R2 tripped over that all the time.
Steeve
21-Apr-2010
[2339]
That would not be a problem, if we were allowed to add our own parameters 
and refinement.

Because the meaninfulness of a refinement in write or read is depending 
of the scheme where it's used.
We can change the code but not the interface.
Pekr
21-Apr-2010
[2340x2]
but why /lines and /string were added?
it does not make them low level anymore. those functions were about 
reading stream of bytes, not strings ...
Steeve
21-Apr-2010
[2342]
because of some complaints with file operations
BrianH
21-Apr-2010
[2343]
Because they were needed for the main uses of READ and WRITE: Text 
processing.
Pekr
21-Apr-2010
[2344x2]
hahaha :-)
so you talk x hours to me, trying to explain, that R3 broke with 
R2 almost-everything-is-string attitude, to later on admit, that 
we gave up on strictly deviding, what 'read/write are supposed to 
do
BrianH
21-Apr-2010
[2346]
Hey, we added support for Unicode text processing right into the 
language, even including two datatypes specificly for that purpose: 
string! and char!.
Pekr
21-Apr-2010
[2347x2]
when was /lines added? I even did not notice it ... even the blog 
which was supposed to resolve it did not mention anything like that 
...
I thought we got 'split to simulate read/lines?
Steeve
21-Apr-2010
[2349]
It's not an exception Pekr, there were changes made in the past without 
any commercials
BrianH
21-Apr-2010
[2350]
Alpha 78.
Pekr
21-Apr-2010
[2351x2]
I think this is all under-engineered - not finished in design. There 
was never any resolution posted to the topic. And the topic is deep. 
It reaches even continuous reading and parsing (streaming) and codecs 
...
Current codecs are totally unusable
BrianH
21-Apr-2010
[2353]
Agreed.
Pekr
21-Apr-2010
[2354x2]
I think that Carl will have to think about this single topic for 
quite some time, to get the design right ...
The truth is, that while I prefer things being conceptually correct/consistent, 
I also miss, if we miss on easiness of use of R2 (read/lines, simple 
tcp open/insert/copy/close sync mode)
Steeve
21-Apr-2010
[2356]
probably we need a new FSM dialect, parse is not suited to do that 
job. We have to do too much hack to simulate a fast and clean state 
machine.
BrianH
21-Apr-2010
[2357]
Sounds like a good community project.