World: r3wp
[!REBOL3-OLD1]
older newer | first last |
BrianH 11-Jan-2010 [20723] | Oh wait, that happened to me too. The http scheme doesn't handle server errors well, and the internet has been getting increasingly crappy lately. That's why I've been looking over the scheme lately. |
Graham 11-Jan-2010 [20724] | and what have you discovered? |
Fork 11-Jan-2010 [20725] | ^-- Actually, it need not keep you from writing (to-word type? foo) if it knew that datatypes should have the last ! chopped if turned into a word |
BrianH 11-Jan-2010 [20726] | Not much yet - I'm still reviewing the lower levels. There are two levels below the http scheme: TCP and the port model. |
Graham 11-Jan-2010 [20727] | Where's UDP? |
BrianH 11-Jan-2010 [20728x2] | It's been hard to get enough spare time with a working brain. Too many emergencies lately that take up my time, mostly my sleep time. |
UDP would be defined in the host code - if it's not there, it's not in R3 yet. | |
Graham 11-Jan-2010 [20730] | Needed to do reverse dns lookups |
BrianH 11-Jan-2010 [20731] | And other fine schemes. |
Graham 11-Jan-2010 [20732] | Host code .. that's the one some guys have now? |
BrianH 11-Jan-2010 [20733] | Ask and you'll have it too. The source for tcp:// is in it as well. |
Graham 11-Jan-2010 [20734] | Heh .... and what would I do with it? lol |
BrianH 11-Jan-2010 [20735] | Learn :) |
Pekr 11-Jan-2010 [20736] | we need Holger back, to finish networking :-) |
Graham 11-Jan-2010 [20737x2] | Geez, if you gave me the host code, I'll probably end up in the science channel .... |
Has any decision been made to use Gab's rlp format for documentation and code generation yet ? | |
BrianH 11-Jan-2010 [20739] | No decision yet. It certainly will do for now. |
Graham 11-Jan-2010 [20740x2] | If I have a: :print or a: %file.txt how can I check for what it is ? switch type? a [ function! [ print "function" ] file! [ print "file" ] |
switch type? a reduce [ function! [ print "function" ] file! [ print "file" ] | |
Henrik 11-Jan-2010 [20742] | switch to-word type? a [... |
BrianH 11-Jan-2010 [20743] | TYPE?/word is best for now - less overhead than the REDUCE method. |
Henrik 11-Jan-2010 [20744] | ah yes, couldn't remember what the specific method was. |
Graham 11-Jan-2010 [20745] | that evaluates the function |
BrianH 11-Jan-2010 [20746x2] | Less overhead than TO-WORD too. |
switch type?/word :a [... | |
Graham 11-Jan-2010 [20748x2] | Nope .. then I have to check for native! |
I guess I could use function! native! [ .... ] | |
BrianH 11-Jan-2010 [20750] | case [any-function? :a [...] file? :a [...]] |
Graham 11-Jan-2010 [20751] | ahh.. ok |
BrianH 11-Jan-2010 [20752] | CASE is used for that stuff a lot in the mezz code. |
Graham 12-Jan-2010 [20753x4] | there's this example on http://www.rebol.net/wiki/Port_Examples copy-file: func [ "Copy a large file" from-file to-file /local file1 file2 data ] [ file1: open from-file file2: open/new to-file while [not empty? data: read/part file1 32000] [ write file2 data ] close file1 close file2 ] |
where is the skip occuring to advance thru the from-file? | |
Does the skip occur automatically on a file port? | |
If so, this seems to be the only documentation! | |
BrianH 12-Jan-2010 [20757x2] | All ports in R3 are like /direct ports in R2, autoadvancing with an internal position. |
There are no series-like ports in R3. | |
Graham 12-Jan-2010 [20759x2] | Good to know |
If I write a 100Mb file to a tcp port ... does R3 automatically write it in chunks for me? | |
BrianH 12-Jan-2010 [20761x2] | It is documented, as I recall, as part of the basic port model. |
I would expect so, but you'd block your task! until it was done if you do it in one WRITE. And that means blocking quite a bit until tasks are properly working. | |
Henrik 12-Jan-2010 [20763] | BrianH, silly question, but where does the async nature of R3 ports then go, if writing blocks? |
BrianH 12-Jan-2010 [20764x2] | You can use async by providing a handler, or use one of the sync wrapper functions. If you use the sync wrappers it is still internally async, but not as far as you know. |
And other tasks can still do their stuff, once we have those. | |
Graham 12-Jan-2010 [20766] | that being the case, I can just write 32,000 bytes each time there is a wrote event |
BrianH 12-Jan-2010 [20767] | Check first, and remember to manage your buffers well. |
Graham 12-Jan-2010 [20768] | Seems to have worked .. managed to upload 32Mb using ftp |
Gabriele 12-Jan-2010 [20769] | Brian: pipe was not posted publicly, though, nothing that i know of is using it (i did it for Maarten but he didn't use it :), so at this point is a lone function in a lone file... given that it will need adaptation to work in R3, feel free to make a R3 version out of it. it would be hard to claim copyright on that even if I wanted to. ;) |
Graham 12-Jan-2010 [20770x2] | I've added a REBOL forum to my new vbulletin forum .. since reboltalk seems to be done http://synapse-ehr.com/forums/forumdisplay.php?3-Rebol |
done => down. | |
Maxim 13-Jan-2010 [20772] | the disarmed state of error objects in R3 is REALLY cool... simplifies code and switches them to usefull data, which is an alien concept to most other languages. success?: all [ done: try [parse data rules] not error? done not string? done ] here strings are the return type for parse block created (syntax?) errors in the source data |
older newer | first last |