• 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
r4wp5907
r3wp58701
total:64608

results window for this page: [start: 13801 end: 13900]

world-name: r3wp

Group: Rebol School ... Rebol School [web-public]
PatrickP61:
5-Jul-2007
Tomc  -- This version means that I need to have the entire file read 
in as a string -- Not with Read/Lines -- Because the newline will 
the the "delimiter" within the string while the Read/Lines will delimit 
each newline to a separate string inside a block.  Do I have that 
right?
PatrickP61:
5-Jul-2007
My Page, Name, & Member is always in the same order on separate pages 
within a file.  like so:
Line 1     Page 1
Line 2     Name
Line 3     Member
Line n...  Member
Line 50  Member
Line 51  Page   2
Line 52  Name
Line 53  Member
Line 54  Member
...
Sunanda:
6-Jul-2007
Not sure this is a case for parse......You seem to have four types 
of line:
-- those with "page" in a specific location on the line
-- those with "name" in a specific location on the line
-- those with "member" in a specific location on the line

-- others which are to be ignored .... eg your orginal line 6 "Line 
6       600    Desc 1 text         12/23/03"

What I would do is:
* use read/lines to get a block

* for each line in the block, identify what record type it is by 
the fixed literal .... something like: if "page" = copy/part skip 
line 25 4 [....]

* perhaps use parse to extract the items I need, once I know the 
line type
***

If you just use parse in the way you propose, you run the risk of 
mis-identifying lines when there is a member called "page" or "name"
PatrickP61:
6-Jul-2007
Thank you Sunanda -- I will give that a try.


Just to let you know -- My goal is to convert a printable report 
that is in a file into a spreadsheet.
Some fields will only appear once per page like PAGE.

Some fields could appear in a new section of the page multiple times 
like NAME in my example.
And some fields could appear many times per section like MEMBER:
_______________________
Page header          PAGE     1
Section header     NAME1.1
Detail lines            MEMBER1.1.1
Detail lines            MEMBER1.1.2
Section header     NAME1.2
Detail lines            MEMBER1.2.1
Detail lines            MEMBER1.2.2
Page header         PAGE    2
(repeat of above)____________


I want to create a spreadsheet that takes different capturable fields 
and place them on the same line as the detail lines like so...
______________________
Page   Name       Member
1          NAME1.1  MEMBER1.1.1
1          NAME1.1  MEMBER1.1.2
1          NAME1.2  MEMBER1.2.1
1          NAME1.2  MEMBER1.2.2

2          NAME2.1  MEMBER2.1.1  ...    (the version numbers are 
simply a way to relay which captured field I am referring to (Page, 
Name, Member)


Anyway -- that is my goal.  I have figured out how to do the looping, 
and can identify the record types, but you are right about the possiblity 
of mis-identifying lines.
PatrickP61:
6-Jul-2007
This is my pseudocode approach:


New page is identified by a page header text that is the same on 
each page and the word PAGE at the end of the line

New section is identified by a section header text that is the same 
within the page and the text "NAME . . . . :"

Members lines do not have an identifying mark on the line but are 
always preceeded by the NAME line.

Member line continue until a new page is found, or the words "END 
OF NAME" is found (which I didnt show in my example above).


Initialize capture fields to -null-     like PAGE, NAME
Initialize OUTPUT-FLAG to OFF.

Loop through each line of the input file until end of file EOF.
/|\	If at a New-page line
 |	or at end of Name section
 |		Set OUTPUT-FLAG  OFF
 |	If OUTPUT-FLAG  ON

 |		Format output record from captured fields and current line (MEMBER)
 |		Write output record
 |	IF at New Name line
 |		Set OUTPUT-FLAG ON
 |	IF OUTPUT-FLAG OFF
 |		Get capture fields like PAGE-NUMBER when at a PAGE line
 |		Get NAME when at a NAME line.
 |____	Next line in the file.
PatrickP61:
6-Jul-2007
Note to all -- Please realize this is a simplified version of the 
real report -- There are many more fields and other things to code 
for, but they are all similar items to the example PAGE, NAME, and 
MEMBER fields.
Tomc:
7-Jul-2007
Yes Patrick you have it right. The rules I gave would fail 
since you have multiple names/members

I would try to get away from the line by line mentality 
and try to break it into your conceptual record groupings
file, pages, sections, and details...

One trick I use is to replace a string delimiter for a record 
with a single char so parse returns a block of that record type. 

this is good because then when you work on each item in the block 
in turn
you know any fields you find do belong to this record and that 

you have not accidently skipped to a similar field in a later record.

something like this 


pages: read %file
replace/all/case pages "PAGE" "^L"
pages: parse/all pages "^L"

foreach page pages[
	p: first page
	page: find page newline
	replace/all/case page "NAME" "^L"
	sections: parse page "^L"
	foreach sec section [
		s: first section
		sec: find sec newline
		parse sec [
			any [thru "Member" copy detail to newline 
				newline (print [p tab s tab detail])
			]
		]
	]
]
PatrickP61:
18-Jul-2007
I am a little confused about PORTS.  I want to control how much information 
is loaded into a block but I am not sure how to determine if data 
remains in a port.  Example:
PatrickP61:
18-Jul-2007
This is not doing what I want.  

I want it to continue to run through all  lines of a file and print 
it
PatrickP61:
18-Jul-2007
My goal is to be able to control how much of a file is loaded into 
a block then process the block and then go after the next set of 
data.  That is why I am using PORT to do this function instead of 
reading everything into memory etc.
PatrickP61:
19-Jul-2007
Yes, It does dump a lot of stuff that I don't kow about!!!
btiffin:
19-Jul-2007
Ports are nifty little objects.  :)  And if you just type
>> In-port
 you get back nothing, just another prompt.
>>

The interpreter does not display the internals of objects, but print 
does, so what you are seeing is the object! that is In-port.  Well, 
I'm lying...In-port is a port!  not an object!  Close but not the 
same.  ports emulate a series! wrapped in object! wrapped in enigma. 
 Or is it an object! wrapped in a series! disguised as a sphynx? 
 :)


first In-port is a REBOL reflective property feature that when you 
get it, you'll go "Ahhhh" as you step closer to the Zen of REBOL.

For fun with a really big object!  try >> print system
PatrickP61:
20-Jul-2007
Another question -- I know to use escape to insert things like a 
tab as in ^(tab) into a string.
What can I use to insert a newline?  ^(newline) doesn't work.
Geomol:
20-Jul-2007
If you just write NEWLINE in the prompt, you'll see how it's defined. 
You can specify a newline in a string as
str: "a string with a newline: ^/"
Geomol:
20-Jul-2007
A tab can also be specified as: "^-"
Geomol:
20-Jul-2007
It's a bit strange, that ^(newline) doesn't work, now that ^(tab) 
does. Maybe it was just forgotten.
PatrickP61:
20-Jul-2007
As a newbie, it seemed natural to try ^(newline), but the shortcut 
^/ works for me too.
Geomol:
20-Jul-2007
Ah, there's the explanation, a newline can be specified as ^(line)
(for some reason)
PatrickP61:
26-Jul-2007
My teachers,  I have an array ( block (of "lines") within a block 
(of values) ) that I would like to convert to a block (of "lines") 
with all values joined with an embedded tab.  What is the best way 
to achieve this?  See example: 


In-array:      [   [   {Col A1}     {Col B1}   ]        <-- I have 
this
                          [   {2}              {3}             ]
                          [   {line "3"}    {col "b"}    ]   ]


Out-block:   [   {Col A1^(tab)Col B1}             <-- I want this 
                         {2^(tab)3}
                         {line "3"^(tab)col "b"}         ]
Volker:
26-Jul-2007
there is a hidden markerin values, for newline
PatrickP61:
26-Jul-2007
So if i read you right, then if I didn't do new-line/all, and tried 
to probe Out-block, it would show the entire contents as one large 
string, whereas new-line/all will allow probe to show each value 
as a spearate line.  Right?
PatrickP61:
26-Jul-2007
My teachers, Anton and Rebolek have submitted two answers.  The difference 
between them is that Anton's answer will insert a tab between varying 
numbers of  values per line, where Rebolek will insert a tab in-between 
col 1 and col2 (assuming only 2 columns in the array).  Is that a 
correct interpretation?
Gregg:
27-Jul-2007
...insert a tab between varying numbers of  values per line <versus> 
... insert a tab in-between col 1 and col2
 -- Correct.


On new-line, it's kind of advanced because it doesn't insert a newline 
(CR/LF), but rather a hidden marker between values that REBOL uses 
when molding blocks.
Gregg:
27-Jul-2007
You shouldn't have to worry about new-line at all. It's actually 
relatively new, so we all lived without it for a long time.
Gregg:
27-Jul-2007
It can be confusing at times, and even once you know what you're 
doing, you sometimes have to think about it a bit. The up-side is 
that you have a great deal of control once you know how to use it.
Gregg:
27-Jul-2007
I should point out that NEW-LINE, as Anton used it, is a handy shortcut 
that takes the place of foreach+print for simple console display.
Geomol:
27-Jul-2007
Patrick, before I started with REBOL, I had many years of experience 
with many different languages, both as a hobby and professional. 
It wasn't hard for me to grasp new languages, because every new one 
always reminded me of some other language, I already knew. Then I 
came to REBOL, and I could make small scripts after a few days. But 
it took me more than a year to really "get it". And it's just the 
best language, I've ever programmed in. It keeps amaze me after all 
these years, and I constantly find new things, new ways of doing 
things. From your posts here, you're having a very good start, as 
I see it. Just keep hacking on that keyboard, and don't forget to 
have fun!
Vladimir:
3-Oct-2007
Well first of all ....Im new here... :) joined yesterday... and I 
have a problem on my hands.....
Vladimir:
3-Oct-2007
Here is a piece of code from graphic editor.... I have problems with 
"insert-event-func"
Oldes:
3-Oct-2007
Here is simplified your problem:
ke: func[f e][ if e/type = 'time [print now/time/precise] e]
insert-event-func :ke
view layout [box with [rate: 10]]


But I cannot help you. I'm not a view guru. It looks you should not 
use insert-event-func if you don't want to get all time events.
Vladimir:
3-Oct-2007
yeah... I guess its a mix between insert-event-func and iterated 
pane..... pane is generated every time and my adding rate element 
to it doesn't effect global rate..... thanks for answer!
Oldes:
3-Oct-2007
Use somethink like:

view layout [
	box with [
		rate: 10
		feel: make feel [
			engage: func [f a e] [
				if a = 'time [print now/time/precise]
			]
		]
	]
]
Vladimir:
3-Oct-2007
pane is not a problem...... your code works (as it should) :)
Vladimir:
3-Oct-2007
I know it works, but I remember puting insert-event-func there for 
a reason.... If I remember I couldnt get keyboard response from my 
iterated pane somehow.... I'll try it again ....
Oldes:
3-Oct-2007
If you want just blinking cursor, don't use insert-event-func, but 
just something like that:
cursorMover: func[f e][
	if e/type = 'key [
		switch e/key [
            up    [cursor/offset/y: cursor/offset/y - 10]
	        down  [cursor/offset/y: cursor/offset/y + 10]
            left  [cursor/offset/x: cursor/offset/x - 10]
            right [cursor/offset/x: cursor/offset/x + 10]
		]
		show cursor
	]
	e
]
insert-event-func :cursorMover

view layout/size [
	cursor: box 10x10 with [
		rate: 10
		colors: [0.0.0 255.255.255]
		feel: make feel [
			engage: func [f a e] [
				if a = 'time [
					f/color: first head reverse f/colors
					show f
				]
			]
		]
	]
] 400x400
Izkata:
3-Oct-2007
It looks like the event function isn't being triggered for the box, 
but rather for system/view/screen-face or something -

>> ke: func [f e][if e/type = 'time [print f/text]]
>> insert-event-func :ke
>> view layout [box "Testing" with [rate: 1]]
none
none

None of them print "Testing", as a call from the box should
Oldes:
4-Oct-2007
insert-event-func is simply used for global events, you can use it 
to detect 'close, 'resize, 'active and 'inactive as well. Why you 
should have such a event handlers in feels?
Vladimir:
4-Oct-2007
I'm actually interested only in keypress events...

But I have to limit the rate of events... I know there is the rate 
element in every face, and I did make it work for time event and 
that is ok.
But I couldn't make keypress event occur in timed intervals.

I'm not saying I have to have it. Maybe it just isnt supossed to 
be. But it says in docs:


The focal-face must be set to a valid face object (one that is part 
of a pane in the face hierarchy) and the system/view/caret (explained 
in next section) must also be set in order to:
   1. Receive keyboard 
events ....

So I put this inside engage func:

system/view/focal-face: face
system/view/caret: tail ""


And now it works... I dont even use caret but you have to set it 
to some bogus value!


So in my opinion rate element has no influence on key events (if 
I type like crazy I get 19 key events for 1 second...).

But I can make some sort of counter and simply do keypress response 
only when I want to...
Anton:
7-Oct-2007
So,  I advise to trap events in subface/feel/engage, not in window/feel 
or screen-face/feel.

(insert-event-func adds a handler which is processed in screen-face/feel)
Vladimir:
26-Oct-2007
What could be problem with this script?

set-net [[user-:-mail-:-com] smtp.mail.com pop3.mail.com] 
today: now/date
view center-face layout [
		size 340x120
 		button "Send mail" font [size: 26] 300x80	[

    send/attach/subject [user-:-mail-:-com] "" %"/c/file.xls" reduce [join 
    "Today  " :danas]
 			quit
 		]
	]

I get this error:


** User Error: Server error: tcp 554 5.7.1 <[user-:-mail-:-com]>: Relay 
access denied
** Near: insert smtp-port reduce [from reduce [addr] message]

Could it be some security issue?

It worked with previous internet provider... A week ago we changed 
it and now this happens...

Should I contact my provider to change some security settings or 
should I change something in the script?
Vladimir:
26-Oct-2007
I just set up outlookexpress and "my server requires authentication" 
is a problem....
Vladimir:
26-Oct-2007
is there a way to give this user authentication data to it? Ill check 
rebol.org for that...
Vladimir:
26-Oct-2007
I would think  someone else already came with a solution for such 
acommon problem..........
Pekr:
26-Oct-2007
try to look for esmtp. Usually there is a requirement for sending 
your user account name and pass. Hopefully you can find something 
...
Brock:
26-Oct-2007
I thought the problem may have been that the first character following 
set-net is a "|" characther rather than theh "[", that must just 
be a typo.
Vladimir:
29-Oct-2007
How complicated is it to make simple file transfer between two computers 
(one client and one server) in rebol?
What protocol should I use?
Any ideas?

Currently I'm sending e-mails from clients with file-atachments because 
its the simplest way of collecting data from clients. (so far they 
were doing it by hand -  so this is a big improvement :)
Gregg:
29-Oct-2007
There are a lot of ways you could do it, FTP, LNS, AltMe file sharing, 
custom protocol on TCP. It shouldn't be hard, but I would try to 
use something existing. The devil is in the details.
Gregg:
29-Oct-2007
You could also write a custom app that sends via email, and a reader 
on the other end that grabs them.
btiffin:
30-Oct-2007
Vladimir;  Check out http://rebol.net/cookbook/recipes/0058.html
for one way.  It's a good exercise in getting a client server app 
running as well.  And of course, follow the advice of the others 
here; there are many options.
Vladimir:
30-Oct-2007
Files are 1-2 Mb. Ziped archives of dbf files.

As I said now I'm using small rebol script to send file as attachment, 
human on the other side is downloading them and unpacking them, and 
its working.

I planed to make a "server" side script that would download newly 
arrived attachments and unpack them in designated folders, but then 
I thought about trying some real client-server approch...

Then again, server would have to be started at the time of transfer. 
I have to know ip adresses and to make them public (hamachi jumps 
in as help)...

E-mail used as buffer for data is not bad... And it works... But 
I have to check max mailbox size .... What if workers execute sending 
script more then ones?

There is one strange thing with sending big (>1 Mb) files::

On win98 it goes without any problem. On XP at the end of transfer 
rebol returns an error message about network timeout, but the file 
is sent and all is ok..

Thanks guys... Lot of info... Will check it out and send my experiences.
Ingo:
30-Oct-2007
A script to send files over the network using tcp. It once started 
with 2 3-liners, 

http://www.rebol.org/cgi-bin/cgiwrap/rebol/view-script.r?script=remote-file.r
Gabriele:
30-Oct-2007
we're using rebol/services to transfer backups from www.rebol.net 
to mail.rebol.net. files are a couple hundred MB. see http://www.rebol.net/rs/demos/file-client.r
Gregg:
28-Jan-2008
Francois Jouen did a DBF viewer some time back. I'm not sure if REBOLFrance 
is still up or not. I have the old code here.


http://www.rebol.org/cgi-bin/cgiwrap/rebol/ml-display-thread.r?m=rmlQZKQ


I thought it would be a nice thing to have, but never pursued it 
since I didn't *need* it.
Gregg:
28-Jan-2008
One thing REBOL isn't particularly good at is structured file I/O, 
which is what you need for DBF. Perfect job for a dialect though. 
:-)
Gregg:
29-Jan-2008
Vladimir, yes, if you need it. I think it would be a neat thing to 
have, but there hasn't been a rush of people clamoring for it.


Petr, it can be done, it just won't be as much fun as it should be. 
:-)


Oldes, Brian is correct. QuickBASIC/VB and PowerBASIC were well-suited 
to this task, because you could declare a type structure and get/put 
it directly.
Oldes:
29-Jan-2008
here is a version with some rebcode optimizations: http://box.lebeda.ws/~hmm/rebol/stream-io_rebcode_latest.r
Pekr:
29-Jan-2008
DBF is rather simple format. Not sure it would not be better to use 
some ODBC driver for it though. There is a problem with indices and 
memo files. There were several systems out there with different aproaches. 
E.g. Clipper implemented RDD - abstracted "replaceable database drivers", 
which took different strategies for indices and memo files. I am 
also not sure, that nowadays, there is any advantage in using DBF 
files against e.g. SQLite.
Vladimir:
29-Jan-2008
I have dbf specifications printed out.... I'll try to make something 
tonight....

My table is simple one... just a list of customers with their debt 
status , and that is what my boss wants to have with him where ever 
he is... :)

Thats why I want to upload it to webpage and he can then acces it 
even with his mobile phone......

But table has a lot of records so Ill have to make some filtering....
Thank you for suggestions....
btiffin:
31-Jan-2008
I've been chatting with some students (Ontario, Canada mainly) and 
our high schools have been teaching Turing.  Well Holt Software just 
recently announced a cease to operations.  Turing is now free but 
I think this opens a door for what the kids in Ontario will be learning 
starting in September 2008.


Could REBOL be it?  What would it take to startup a REBOL in the 
Classroom commercial endeavour?  Would RT like it if such a company 
existed?
btiffin:
31-Jan-2008
And getting serious;   We all love REBOL, our being here is testament 
to that.  BUT...  Would you deem REBOL as a language that could be 
taught to 14 year olds and have the principal of a school think "Yes, 
I've prepared my students for the IT world to the best of my abilities"? 
 Honestly.


imho; REBOL is maybe a little too different to be the "Yep, if you 
know REBOL, you know enough to build a career in programming" language.
Pekr:
31-Jan-2008
OTOH - I would not taught them anything like JAVA too. Maybe some 
basic. It is not even about particular language, but a bit of alghoritmical 
thinking ... and maybe Basic like syntax ...
btiffin:
31-Jan-2008
Yeah; Turing is for algorithm thinking.  It's a Niklaus Wirth, Pascal 
variant, designed explicitly for teaching.  Which means some company 
in Toronto is probably building a rocket engine control system with 
it as we speak.  :)
Sunanda:
31-Jan-2008
It'd be fun to get REBOL into the classrooms.

But it'd take some plans and (probably) some pedagogically oriented 
libraries to beat a language like Turing that is described as "Designed 
for computer science instruction".
btiffin:
31-Jan-2008
Sunanda;  I'm starting to take a deep interest in RitC.  But I have 
doubts.  Doubts that need to be squashed.  Sadly, Ontario (a fairly 
vast province) has standardised curriculum now.  It's all schools 
or no schools here.  I'm not a fan, the excuse was that some kids 
in some boards were getting sub-par educations, ignoring the fact 
that some boards were providing above-par educations and instead 
picking a middle-of-the-road bland education for all.
SteveT:
31-Jan-2008
I've been lecturing accounts & tax at Manchester recently and I've 
had a chance to chat with some of the programming students during 
breaks. I think all of them hated whatever they used in college !! 
Some of them state that what they were taught bore no relation to 
what abilities they now need in the work place.
Gregg:
31-Jan-2008
If you want to get a job as a grunt programmer in a big company, 
using whatever tools they tell you are in fashion, REBOL is not the 
right tool for you--though it may be a nice support language. If 
you want to think about hard problems and algorithms, it's as good 
as Lisp/Scheme within limits (e.g. tail recursion), and easier to 
play around with. If you want to get the job done and either make 
the tool call yourself, or can convince the people who do that REBOL 
is up to the task, it's great. And if you aren't a CS major, but 
know that computers and programming will affect you in business, 
and you want to be able to to some "light" programming, I think it's 
great.
Rod:
31-Jan-2008
I think REBOL has merit in the classroom but it can't be from the 
angle of what you need to be an IT programmer.  It has to be more 
about theory and creativity to make machines do amazing things.  
I am afraid though that your all or nothing situation and be ready 
by the fall schedule doesn't sound like a good combination.  You 
would want some real world, already done it here in this setting, 
kind of platform to start from to move into that kind of education 
space.
btiffin:
31-Jan-2008
Rod; agreed.  It is not in my nature to aggress when it comes to 
business, play, or life so if this is pursued it'll be a local night 
school kinda start.  First step is an attempt at an Altme parse lecture 
surrounded by friendlies.  :)
Rod:
31-Jan-2008
I have taken a stab at online training when blackboard.com came out, 
did a short expert course in my primary language (Progress 4GL) to 
some friends.  It was an interesting experiment and very worth doing. 
 At the time though the technology parts via the web was very limited 
(still is really but even worse then).  I wonder if the emergence 
of VoIP, video and flash has moved us past how interaction might 
be done differently to just the same with different delivery mechanism.
Anton:
1-Feb-2008
What's the problem ? Rebol can be used for teaching programming, 
just like any other language. It has the three basic features: sequence, 
selection and iteration, so it can do anything :)

Seriously, if you can find a programming course in another language, 
perhaps you can translate into rebol on the fly.
Tomc:
1-Feb-2008
I think Rebol can be used in the classroom in liew of a mainstream 
language based if nothing else on the fact that by the time the kids 
are ready there is apt to be a "new" mainstream language. what is 
important is learning to think and from my experiance rebol gets 
in the way far less than other mainstream languages.
btiffin:
13-Feb-2008
Compressed at http://www.rebol.net/rs/server.rand client.r  with 
the standard  save ... ctx-services thingy.

I'm pretty sure this is Gabriele's later release that has support 
for large file transfers.

I would say yes, LNS is still a good plan.  It's in use with DevBase.
Vladimir:
28-Mar-2008
I want to upload file on ftp. 
I know I can do it like this:
write/binary ftp://user:[pass-:-website-:-com] read/binary %file

Or I am supossed to do it.... it just wont let me....


>>  write/binary ftp://user:[pass-:-ftp-:-site-:-com] read/binary %file.txt
** User Error: Cannot open a dir port in direct mode

** Near: write/binary ftp://user:[pass-:-ftp-:-site-:-com] read/binary %file.txt

I can read the contents of ftp rootdir with:
print read ftp://ftp.site.com/


But writing is not working.... What does it mean: "Cannot open a 
dir port in direct mode"?
BrianH:
28-Mar-2008
Try this:  write/binary ftp://user:[pass-:-ftp-:-site-:-com]/file.txt read/binary 
%file.txt
Yoiu were trying to write to a directory, not a file.
Anton:
29-Oct-2008
You can get more detail by doing this first:
	trace/net on
Rebol will print more information in the console.

At a deeper level, you can use Wireshark (open source program) to 
capture and analyse the ftp traffic.
DideC:
29-Oct-2008
Make sure the username does not contain any "@". It's often a problem, 
but may bring another kind of error.
Vladimir:
30-Oct-2008
Trace/net  did gave more info:

Its not my new internet provider... :)  its our old router used in 
a new way... :)
This is the message I get...
Username... pass.... OK.... and then:
Net-log: "Opening listen port 2655"
Net-log: [["PORT" port/locals/active-check] "200"]
Net-log: "200 PORT command successful"
Net-log: [["CWD" port/path] ["25" "200"]]
Net-log: "250 OK. Current directory is /apl"
Net-log: "Type: new"
Net-log: ["TYPE I" "200"]
Net-log: "200 TYPE is now 8-bit binary"
Net-log: [["STOR" port/target] ["150" "125"]]
Net-log: "Closing cmd port 2652 21"
Net-log: "Closing listen port 2655"
** Access Error: Network timeout
** Where: confirm
** Near: to-port: open/binary/new/direct server/:file
Vladimir:
30-Oct-2008
It does not help..... :(

As I wrote before... It worked without problem for half a year.... 
now I have new provider... if I connect my pc directly to WAN it 
works.... When I connect PC to my router lan port it does not.... 
Everything else works.... HTTP , FTP from Total commander... upload 
download...., torrents work....
Vladimir:
30-Oct-2008
just a sec...
Vladimir:
30-Oct-2008
to-port: open/binary/new/direct server/:file

URL Parse: visaprom.com password ftp.visaprom.com none apl/ ik104.zip
Net-log: ["Opening" "tcp" "for" "FTP"]
Net-log: [none ["220" "230"]]

Net-log: {220---------- Welcome to Pure-FTPd [privsep] [TLS] ----------}
Net-log: "220-You are user number 188 of 400 allowed."
Net-log: "220-Local time is now 11:33. Server port: 21."
Net-log: "220-This is a private system - No anonymous login"
Net-log: {220-IPv6 connections are also welcome on this server.}

Net-log: {220 You will be disconnected after 15 minutes of inactivity.}
Net-log: [["USER" port/user] "331"]
Net-log: "331 User visaprom.com OK. Password required"
Net-log: [["PASS" port/pass] "230"]
Net-log: {230-User visaprom.com has group access to:  www     }
Net-log: "230 OK. Current restricted directory is /"
Net-log: ["SYST" "*"]
Net-log: "215 UNIX Type: L8"
Net-log: ["PWD" "25"]
Net-log: {257 "/" is your current location}
Net-log: ["PASV" "227"]
Net-log: "227 Entering Passive Mode (194,9,94,127,216,138)"
Net-log: [["CWD" port/path] ["25" "200"]]
Pekr:
30-Oct-2008
here's list from my system:

connecting to: www.jablunkovsko.cz
Net-log: [none ["220" "230"]]
Net-log: "220 (vsFTPd 1.2.1)"
Net-log: [["USER" port/user] "331"]
Net-log: "331 Please specify the password."
Net-log: [["PASS" port/pass] "230"]
Net-log: "230 Login successful."
Net-log: ["SYST" "*"]
Net-log: "215 UNIX Type: L8"
Net-log: ["PWD" "25"]
Net-log: {257 "/"}
Net-log: "Opening listen port 50061"
Net-log: [["PORT" port/locals/active-check] "200"]
Net-log: "200 PORT command successful. Consider using PASV."
Net-log: "Type: dir"
Net-log: ["TYPE A" "200"]
Net-log: "200 Switching to ASCII mode."
Net-log: ["LIST" ["150" "125"]]
Net-log: "150 Here comes the directory listing."
Net-log: "Closing listen port 50061"
Net-log: "Closing data port 193.85.151.2 50061 20"
Net-log: [none ["226" "250"]]
Net-log: "226 Directory send OK."
Net-log: "Caching cmd-port www.jablunkovsko.cz 50060 21"
Vladimir:
30-Oct-2008
Ill try... in a minute
Vladimir:
30-Oct-2008
print read ftp://visaprom.com:[pass-:-ftp-:-visaprom-:-com]
URL Parse: visaprom.com 8ofhjo99 ftp.visaprom.com none none none
Net-log: ["Opening" "tcp" "for" "FTP"]
Net-log: [none ["220" "230"]]

Net-log: {220---------- Welcome to Pure-FTPd [privsep] [TLS] ----------}
Net-log: "220-You are user number 210 of 400 allowed."
Net-log: "220-Local time is now 11:43. Server port: 21."
Net-log: "220-This is a private system - No anonymous login"
Net-log: {220-IPv6 connections are also welcome on this server.}

Net-log: {220 You will be disconnected after 15 minutes of inactivity.}
Net-log: [["USER" port/user] "331"]
Net-log: "331 User visaprom.com OK. Password required"
Net-log: [["PASS" port/pass] "230"]
Net-log: {230-User visaprom.com has group access to:  www     }
Net-log: "230 OK. Current restricted directory is /"
Net-log: ["SYST" "*"]
Net-log: "215 UNIX Type: L8"
Net-log: ["PWD" "25"]
Net-log: {257 "/" is your current location}
Net-log: ["PASV" "227"]
Net-log: "227 Entering Passive Mode (194,9,94,127,232,3)"
Net-log: "Type: dir"
Net-log: ["TYPE A" "200"]
Net-log: "Closing cmd port 3783 21"
** Access Error: Network timeout
** Where: confirm
** Near: print read ftp://visaprom.com:[8ofhjo99-:-ftp-:-visaprom-:-com]
Pekr:
30-Oct-2008
I tried it here, here's where it starts to differ:

Net-log: ["TYPE A" "200"]
Net-log: "200 TYPE is now ASCII"
Net-log: ["LIST" ["150" "125"]]
Net-log: "150 Accepted data connection"
Net-log: "Closing data port 194.9.94.127 50078 56405"
Net-log: [none ["226" "250"]]
Net-log: "226-Options: -a -l "
Net-log: "226 11 matches total"
Net-log: "Caching cmd-port 194.9.94.127 50077 21"

apl/ apl101/ apl104/ apl105/ apl201/ apl202/ apl204/ apl206/ visaprom.com/
Graham:
30-Oct-2008
it's not a server problem ...
Graham:
30-Oct-2008
Have you tried a different PC?
Vladimir:
30-Oct-2008
i have to restart router.... and since currently five guys are using 
network..... ill have to wait a little.... will report results... 
tried to set up dmz....
Pekr:
1-Nov-2008
First - it seems you could try making your PC a DMZ PC, then your 
PC will not be shielded by firewall ....
Pekr:
1-Nov-2008
Look at Virtual servers - do you run FTP server in your LAN? If so, 
disallow it for a while. (this will most probabyl not help though)
Vladimir:
2-Nov-2008
Hey... thanks for bothering with my problem....  :)

I will go tomorrow in to the office and try few things... in the 
meantime they are just using totalcmd for uploading data...

I will be using two wans... but not yet... its still only one wan 
connection.
No more talk.... I'll try tomorrow...

My friends are telling me: "If everything else works it has to be 
that scripting language of yours."

I say: fuc..ing router should act as a simple wire... what goes in 
on one end goes out on other end.
I can change router... BUT I'M NOT CHANGING LANGUAGE! :)
I will report progress tomorrow.
Pavel:
2-Nov-2008
Vladimir look at rebol.org script folder. there you can find a lot 
of solution/inspiration
Graham:
4-Nov-2008
well, in this case, you should use wireshark and do a tcp trace
DideC:
4-Nov-2008
It seems the problem is after the PORT command.

It  define the port used to receive or send the file data (depending 
the command you issue).

Use Wireshark to have a look to what Total commander do regarding 
its PORT command.
So we can compare with the Rebol commands.


I guess the router firewall block the one Rebol use, but Total commander 
do it in an over way.
Vladimir:
5-Nov-2008
no problem... will change it in a sek...
Vladimir:
5-Nov-2008
Ill post log from total commander in a minute and then try to spot 
the difference...
Vladimir:
5-Nov-2008
No.     Time        Source                Destination           Protocol 
Info

     90 2.750586    192.168.2.108         194.9.94.127          FTP   
        Request: TYPE I

     97 2.823074    194.9.94.127          192.168.2.108         FTP   
        Response: 200 TYPE is now 8-bit binary

     98 2.828500    192.168.2.108         194.9.94.127          FTP   
        Request: PASV

    113 3.171841    192.168.2.108         194.9.94.127          FTP  
        [TCP Retransmission] Request: PASV

    114 3.244193    194.9.94.127          192.168.2.108         TCP  
        [TCP Previous segment lost] ftp > mgemanagement [ACK] Seq=80 
    Ack=15 Win=16500 Len=0

    131 3.889034    194.9.94.127          192.168.2.108         FTP  
        [TCP Retransmission] Response: 227 Entering Passive Mode (194,9,94,127,250,69)

    137 3.984887    192.168.2.108         194.9.94.127          FTP  
        Request: STOR ik104test.zip

    149 4.247163    194.9.94.127          192.168.2.108         TCP  
        ftp > mgemanagement [ACK] Seq=80 Ack=35 Win=16500 Len=0

    210 7.046287    194.9.94.127          192.168.2.108         FTP  
        Response: 150 Accepted data connection

    241 7.218716    192.168.2.108         194.9.94.127          TCP  
        mgemanagement > ftp [ACK] Seq=35 Ack=110 Win=16269 Len=0

   1613 17.145048   194.9.94.127          192.168.2.108         FTP 
        Response: 226-File successfully transferred

   1617 17.172970   192.168.2.108         194.9.94.127          FTP 
        Request: SIZE ik104test.zip

   1620 17.277591   194.9.94.127          192.168.2.108         FTP 
        Response: 213 566605

   1623 17.375906   192.168.2.108         194.9.94.127          FTP 
        Request: TYPE A

   1628 17.498619   194.9.94.127          192.168.2.108         FTP 
        Response: 200 TYPE is now ASCII

   1629 17.516657   192.168.2.108         194.9.94.127          FTP 
        Request: PASV

   1633 17.644044   194.9.94.127          192.168.2.108         FTP 
        Response: 227 Entering Passive Mode (194,9,94,127,205,237)

   1637 17.750889   192.168.2.108         194.9.94.127          FTP 
        Request: LIST

   1643 17.835367   194.9.94.127          192.168.2.108         FTP 
        Response: 150 Accepted data connection

   1644 17.863490   194.9.94.127          192.168.2.108         FTP 
        Response: 226-Options: -a -l 

   1645 17.863548   192.168.2.108         194.9.94.127          TCP 
        mgemanagement > ftp [ACK] Seq=75 Ack=364 Win=16015 Len=0
Anton:
5-Nov-2008
It should be VERY VERY rare to see corrupted packets in today's networks 
unless you have a router or a switch with a bad RAM module with a 
sticky bit. Still, it should be VERY rare to see this for packets 
that actually are corrupted.
Group: Tech News ... Interesting technology [web-public]
JaimeVargas:
12-May-2006
Yes. We can but it requires a lot of work, and then your second questions 
makes you wonder.
[unknown: 9]:
12-May-2006
What is it about Rails that makes Ruby a good fit?

We are building Quilt on Rebol, and it seems to be going very well. 
 But we have nothing to compare to.
JaimeVargas:
12-May-2006
Rails uses a lot of OO messaging smalltak style. Which ruby allows 
natively, so I think this lowers the impedance match. Such dialect 
can be constructed in Rebol. But does it means that is the best approach?
13801 / 6460812345...137138[139] 140141...643644645646647