• 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
r4wp4382
r3wp44224
total:48606

results window for this page: [start: 20801 end: 20900]

world-name: r3wp

Group: Core ... Discuss core issues [web-public]
Henrik:
22-Jan-2006
luca, check for stability and binding though. there are always a 
few holes, when messing with objects like that :-)
Henrik:
23-Jan-2006
I should advertise this group some more. Just insert some code, and 
it comes out optimized a few days later. :-)
Coccinelle:
24-Jan-2006
I wonder to know the kmeaning of the negative value returned by the 
read-io and write-io function.

- I understand that when a TCP port is close at the other end of 
the communication, the value is either 0 or -1.

- it seems that read-io return -4 when there is no available data 
on the port
But I am not sure to be right.
Gabriele:
25-Jan-2006
0 or -1: peer closed (ssl:// seems to consider -1 an error and not 
close)
-2: error
-3: would block (i.e. no data ready)
< -3: error
Pekr:
26-Jan-2006
looking at sterling's proxy script, I somehow can't understand that 
sub-port concept :-) Looking at rebol core manual, it does not make 
my life any easier :-) Although I can understand the concept of root-protocol 
and how to establish new scheme, it does not help with understanding 
of lower level issues ...
Pekr:
26-Jan-2006
simply put - scheme model is not so complicated, you can even rather 
easily go and use tpc and udp ... but unless you need something like 
a proxy support ....
Tomc:
26-Jan-2006
just unset '= and you are done
Anton:
28-Jan-2006
I am supposing a remote machine has connected to a service of yours, 
and you want to know if you can inspect the port in such a way as 
to obtain the ip of the remote machine, even if it is behind a proxy.
Terry:
28-Jan-2006
well, my wireless router assigns an internal IP 192.168.1.100 (for 
example), and if I do a get-modes udp:// 'interfaces I get..

addr: 127.0.0.1
netmask: 255.0.0.0
broadcast: none
dest-addr: none
flags: [multicast loopback]
name: "if65540"
addr: 192.168.1.100
netmask: 255.255.255.0
broadcast: 192.168.1.255
dest-addr: none
flags: [broadcast multicast]
Terry:
28-Jan-2006
Maybe I should put that into a view pane and enter it into the contest?
Terry:
28-Jan-2006
and what's up with that xml you have wrapping your output?
Graham:
28-Jan-2006
webxess.com, and I wrap in tags to make it parse more easily
Graham:
28-Jan-2006
My script checks for proxy ,and fetches the forwarded address.
Pekr:
28-Jan-2006
go and download Look @ Lan ... it si not further developed, but I 
use it often ...
Pekr:
28-Jan-2006
the simplest way is to set your network card to DHCP mode, and try 
to obtain ip from your GW (router), of course if it has DHCP server 
running ...
Terry:
28-Jan-2006
This werks (cheap plug) Can use rebol to determine IP for LAN, and 
remote script for WAN... I've put a copy at http://squigglz.com/myip.php
and Im building a public name server using a squiggle to store and 
retrieve IP addresses.  ie: ~carl:ip~  will finish that off tomorrow
Volker:
28-Jan-2006
linux has /usr/sbin/traceroute www.rebol.com

 1  xdsl-87-78-115-1.netcologne.de (87.78.115.1)  49.521 ms   53.405 
 ms   57.054 ms

 2  cat6509-pg2-vl12.netcologne.de (195.14.247.251)  62.797 ms   70.143 
 ms   72.741 ms

 3  core-pg1-vl110.netcologne.de (195.14.215.161)  75.522 ms   79.128 
 ms   82.716 ms
would the router show up here? 


there are not only myip-services, but also dynamic ips. there you 
connect, they store your current ip and then its reachable by mywishname.dyndns.ws 
or such. more effort on dialin, but then you have a name.
Volker:
28-Jan-2006
they have a website and there are some binaries. on linux i found 
a few in my distor, the second worked nearly automatic, after editing 
something. for windows i guess there is something more comfortable. 
binaries makes sense because they are in my login-script :) I guess 
windows could pop up browser too, as gui is closer coupled to scripting?
Volker:
28-Jan-2006
but i dont know about mobile and automatically from rebol.
Volker:
28-Jan-2006
how about a chat-server? i guess it uses low power and could be on 
24/7?
Henrik:
28-Jan-2006
and they are dirt cheap. I have though heard from a friend who bought 
the latest version, that his is equipped with VXWorks, not Linux
Henrik:
28-Jan-2006
Linksys have a tendency to revise their products over time, give 
them the same name, but with cut down hardware and software. therefore 
it's always preferable to get older access points
Henrik:
28-Jan-2006
yeah, well I don't think they are ultra fast (and there is only one 
ethernet port on mine), but I think you can do some bizarre stuff 
with them, such as cron scheduled downloads to an ethernet harddisk. 
I've always thought that REBOL could really do a lot for hardware 
at that level.
Henrik:
28-Jan-2006
basically it's stuff that can easily be done to increase the value 
of the access point. Linksys could easily sell a fully pumped up 
version of the same access point with loads of bells and whistles 
(firewall, VPN, realtime stats, SSH access) for 3-4 times its current 
price and still be cheaper than competition. the hardware is really 
underutilized
Henrik:
28-Jan-2006
there is a third party vendor who provides alternative firmwares 
with these features. the only limitation is the amount of RAM and 
the ROM space isn't big enough to hold all the features simultaneously
Volker:
28-Jan-2006
and display stats in some dashbopard-thingy. Maybe if CArl makes 
another holiday and sees this thing accidentally :)
JaimeVargas:
28-Jan-2006
Personally I think the wireless market and the networking market 
are very difficult to takle correctly. It is a commodotized market 
which means people don't care for the features and they don't pay 
too much extra for those, they just bargain best price. Which keeps 
going down. At least that is our experience with our routers.
Henrik:
29-Jan-2006
hmm... I can't seem to figure this out:

>> w: copy reduce [make object! [test: 27]]
>> set [y] w
== [make object! [
        test: 27
    ]]
>> probe y
make object! [
    test: 27
]


This part is ok. Now I want to add new keys to the object. How do 
I do that while keeping the reference to the W block?

I can set existing keys:

>> set in y 'test 35
>> w
== [make object! [
        test: 35
    ]]

>> set in y 'test2 127

** Script Error: set expected word argument of type: any-word block 
object
** Near: set in y 'test2 127

Can't do that.

>> set y make y [test2: 127]

Then I lose the reference to the W block.


Y is a point I use in a large object which I traverse. It contains 
smaller objects and these smaller objects must sometimes be updated. 
The position is remembered with Y. I want to MAKE objects there without 
losing the reference to W.
Volker:
29-Jan-2006
You cant extend objects in place. sadly. Carl says its only a little 
change in the code, but is unsure if it is a good idea. switch to 
blocks or keep the objects in a hashtable and reference them by name. 
Or use a mix, some fixed fields and a block for the extensible part.
Henrik:
29-Jan-2006
crap... oh well


anton, W is really a big object block with many nested objects. I'm 
building a list of relations, so I can relate words and numbers to 
eachother in a database
Graham:
29-Jan-2006
can't you use the object as a template to create a new object with 
the new field and then copy it back again?
Henrik:
29-Jan-2006
the point is, I need the position to copy it into. The position is 
automatically and elegantly referenced by Y and can be a lengthy 
calculation, if I need to find it again, but I may need to do that 
or make some other position marker which contains the block that 
holds the object I need to change.
Volker:
29-Jan-2006
You could do it indirectly. 
obj: reduce[make my-object]
and always access with obj/1 .
then extending with 
  obj/1: make obj/1
not really nice too. We write a RAMBO-request?
Volker:
29-Jan-2006
But the obj/1 must be on every access, and bindings are still lost.
Anton:
30-Jan-2006
The first of the two examples above shows how to use path notation 
to select and change values in a block.

The second of the two examples above shows how to use a "throwaway" 
context to store new words in, then to reference these words from 
inside a block.
Both examples are showing how to use blocks instead of objects.

One of the advantages of objects is the convenient path syntax to 
get to a value. Hopefully, the above examples show how this can be 
done with blocks.
Henrik:
30-Jan-2006
anton, that's very interesting. a shame that I'm almost done now, 
still a few bugs left. :-) I solved the problem by going one step 
backwards. it happens to be that all objects are stored in a block 
so I can change it on the spot that way. the trick was to figure 
out how to move backwards and get the rules right.
Henrik:
31-Jan-2006
then I have a function that asks for a specific relation by diving 
down a path with a block like: [customers 1234 invoices 45 articles 
15] to find customer 1234 who has invoice 45 which holds article 
15

then there is a function to add and remove relations
MichaelB:
3-Feb-2006
this might be something dangerous:

write %test.r "hello"
path: what-dir
remove back tail path
write %test.r "hello" ; this fails


problem is: what-dir returns directly system/script/path what seams 
to be used in order to resolve relative file values

I just recognized it using the request-dir from didec which was in 
the rebgui distro -038 (he's doing this in the request-dir function 
in the line with


if all [not empty? path slash = last path][remove back tail path] 


so question is whether this is a bug and belongs to rambo, is ok 
(I don't think so) or what else ?

might also be that didec changed this in a later version (script 
was dated 2003 and maybe at this time 'what-dir had a different behavior), 
but this doesn't matter regarding what 'what-dir returns
MichaelB:
3-Feb-2006
ok, only problem I have is that in real world situations one can't 
think about everything and starting to copy everything everywhere 
just to be safe is no solution
MichaelB:
3-Feb-2006
I'm thinking more in terms of some normal person (if there is something 
like that) and to me it seams quite a burden to think even about 
such tiny details
MichaelB:
3-Feb-2006
and in my case it was even worse as I didn't know what happend until 
I stared to examine a outside script pretty closely and step by step 
following what it does
Henrik:
5-Feb-2006
how do you test for a function that returns nothing? I want to DO 
a script, and check if there was an error, but the script might sometimes 
not return anything
DideC:
6-Feb-2006
the 'path word is local to ctx-req-dir context and the Rebol path 
must not be changed by it. It's up to the "user code" to change it 
if he wants to.
Pekr:
9-Feb-2006
he was wondering, why it is true .... I found out after checking 
the type? blk/2, which is - word! .... my question is why it is word! 
and not logic! ?
Pekr:
9-Feb-2006
ok, thanks ... I think now I understand ... yesterday I read about 
Haskell and functional languages ...
MikeL:
9-Feb-2006
I''ve been caught-22 on that many times since I like to set my ini 
file definitions to be readable blocks and don't follow why other 
data types are correctly recognized e.g. blk: [1 12-feb-2006 $30.00] 
 but not true or false or Yes or No  without a reduce.  If you use 
blocks for the ini file settings you get caught by the reduce  e.g. 
if want this ini: [	clean-up-target-directory? Yes start-at 10:30:01 
first-day-to-run 12-dec-2006 last-day-to-run 31-dec-2006] reduce 
requires me to flag the words as 'words.
Henrik:
9-Feb-2006
it's practically automated testing and probe on serious steroids 
:-)
Henrik:
9-Feb-2006
I could release it now, but it's very, very buggy and it's not shielded 
from the program context
Gabriele:
9-Feb-2006
true and false - just use mold/all or save/all.
Gabriele:
9-Feb-2006
is the user typing true and false in?
Sunanda:
9-Feb-2006
Thanks Gabriele --- save/all neatly does the job.

No use to me though in several cases -- I support  applications that 
pre-date that refinement and run under older versions of core.
But it'll save me a chore in future apps.
Graham:
10-Feb-2006
Does any one have a tool for examining large objects?   I'm trying 
to find where things are defined in beer, and using an editor to 
browse the port object is not fun.  A sort of anamonitor for objects?
Pekr:
17-Feb-2006
it looks for value instead of for index when hilighting? What purpose 
does it have? IIRC it was reported few years ago ... that is rudiculous 
behavior and makes the style completly useless ...
Pekr:
17-Feb-2006
but - for simple viewing purposes, when you want to display e.g. 
field values, and some of them are null = empty strings? That design 
is for nothing and there should be no excuse for apparent bug, which 
was reported ages before ...
Pekr:
17-Feb-2006
he is kind of half a year Rebol novice and it is good to see those 
opinions ... those shared values etc. are REALLY a pain for beginner 
and such small styles bugs make life of mid-level developer (who 
is not fluent with View internals) View XY percent less sutiable 
to do real work ...
Pekr:
17-Feb-2006
still areas with automatic scrollers, styles as tab, groupbox, etc. 
are missing in default distro ... and we were supposed to know what's 
in the pipeline for VID refactoring "real-soon-now" (c) 2005 RT ;-)
Volker:
17-Feb-2006
values for highlighting is much quicker coding than translating to 
indexes. ANd for the other stuff, a selfmade list is not that much 
code. although complicated.
Allen:
19-Feb-2006
Ideally the Value and Text should be two different elements, like 
they can be in html selects.
JaimeVargas:
20-Feb-2006
Linksys is planning to discontinue their linux products and move 
to VxWorks based ones.
JaimeVargas:
21-Feb-2006
I think I found some errors on the tuple math with rebol. This results 
don't make any sense to me. Does anyone agree that these are bugs?

>> 1.2.3 or -253
== 0.0.0
>> 1.2.3 and -253
== 1.2.3
>> 1.2.3 xor -253
== 0.0.0
>> 1.2.3 xor 512
== 255.255.255
>> 1.2.3 or 512
== 255.255.255
>> 1.2.3 and 512
== 0.0.0
Geomol:
21-Feb-2006
Well, each of the elements (numbers) in a tuple is an integer from 
0-255. Doing a binary operation with that restriction and an integer 
without that restriction should maybe return none or an error? I 
guess, REBOL is optimized for speed doing this, so the result is 
undefined. (You can probably guess some internal rules/side-effects.)
JaimeVargas:
21-Feb-2006
These operations can be defined correctly. The values returned are 
improper imo. And the speed optimization doesn't gain much.
JaimeVargas:
21-Feb-2006
It also seems the operator have inconsitent behaviour like this.

>> 1.2.3 and -1
== 1.2.3
>> 1.2.3 and -2
== 0.2.2
>> 1.2.3 and -3
== 1.0.1
>> 1.2.3 or -1
== 0.0.0
>> 1.2.3 or -2
== 0.0.0
>> 1.2.3 or -3
== 0.0.0
>> 1.2.3 xor -1
== 0.0.0
>> 1.2.3 xor -2
== 0.0.0
>> 1.2.3 xor -3
== 0.0.0
JaimeVargas:
21-Feb-2006
AND behaves differently than OR and XOR regarding on how they treat 
negative numbers. AND is taking into account as many bits as possible, 
while OR and XOR are just returning a tuple of zeros.
JaimeVargas:
21-Feb-2006
BTW. Orca is using all the bits possible, and its behaviour is consistent 
across the board.
Geomol:
22-Feb-2006
I agree. If it works with 'and', one would expect it to work with 
'or' and 'xor' too.
Geomol:
22-Feb-2006
Isn't it incredible with REBOL. Here are some basic bugs or misbehaviour, 
and it takes us 8 years or so to discover them. :-)
Geomol:
22-Feb-2006
What about, if we started a project to closely investigate the behaviour 
of REBOL native!, action! and op! in relation to the defined datatypes? 
I did something like that in the IOS regarding minimum and maximum 
values for the different datatypes at some time. The idea would be 
to nail down bugs and misbehaviour and lead to a more robust language 
definition. After the initial investigation, the mezzanines could 
be looked at.
Anton:
22-Feb-2006
... and:
>> ? datatype!
Geomol:
23-Feb-2006
Maybe the amount of work will be too big compared with the number 
of bugs and misbehaviour, we might find. REBOL is rather stable, 
as it is. And: 1) we have RAMBO and 2) the power-users already know 
most of the misbehaviour (, if you can call it that).
BrianH:
23-Feb-2006
Personally, I think it would be worth it to make the tests. There 
have been several times that I have been tripped up by a former bug 
getting fixed, sometimes years prior, and a set of unit tests would 
have kept me informed. Still, I would prefer if any misbehavior found 
would be fixed, not just documented and left to rot.
Anton:
23-Feb-2006
There used to be calls for "the function diffs" when new versions 
of rebol would come out. The script to produce the diffs compared 
argument spec blocks and function body code where available.
Anton:
23-Feb-2006
Unit tests will have to be rebol version dependant. Eg. A set of 
unit tests developed on Core 2.6 for the PRINT function may all pass 
on Core 2.6, but not on Core 2.5.  Recording the rebol version also 
captures the date and platform where the tests were developed.
Geomol:
23-Feb-2006
Uhh yes, testing a vocabulary huge and multi-platform language as 
REBOL is a big task. But interesting aspects (like the history), 
as you point out.
BrianH:
23-Feb-2006
I'm thinking more like keeping track of a few things:
- Proper behavior, and version when such behavior was achieved
- Changes in expected behavior

So there would be two sets of versions, the versions of REBOL and 
the versions of the tests. Over time, both REBOL will be fixed and 
the tests will be fixed, refined or altered. This could get pretty 
big pretty quickly I suppose - it could use a database to store the 
tests or some such.
Anton:
23-Feb-2006
It would be good to be able to answer a question like this: "Do the 
functions: [print parse encloak] exist and behave the same on Rebol/Core 
2.5 and 2.6, and Rebol/View 1.2.1 and 1.3.1?"
Anton:
23-Feb-2006
I'm wondering if everything can be automated so that there are no 
stored results (because results are in fact derived), so when the 
user asks a question, that's when the tests are run and the answer 
obtained.
Geomol:
23-Feb-2006
For the resulst of the use of a word, you may need to save the wanted 
output, and the actual output from different platforms (if they differ).
Geomol:
23-Feb-2006
So the request to a certain server would be something like: run this 
little test and tell me the result (also if it lead to an error!). 
Could be done easily with REBOL.
Geomol:
23-Feb-2006
I see difficulty in testing something like a block!, because you 
would also have to test blocks in objects and look for possible side-effects, 
or what?
BrianH:
23-Feb-2006
I'm not sure a hierarchy would work here - there are too many dimensions. 
Platform (Core, View, ...), platform (Windows, Linux, ...), version, 
test version, etc. Plus a test version would have applicable platforms, 
expiry both for bugs in the test and for changes in expectations, 
and cached results. I'm thinking of more of a formal test suite here 
than an arbitrary test server farm.
Geomol:
23-Feb-2006
Maybe RebDB could be used in this project? I've no experience with 
RebDB though, so I can't say, if it's suited.

I've done a relational database "NicomDB" as an education project 
2 years ago. It would be suited for this, and I've wanted to push 
it forward for some time. Maybe this is the opportunity? NicomDB 
is used on a webserver in a real application.
Anton:
23-Feb-2006
So it needs a database, and a web interface to be able to make queries 
to that.
BrianH:
23-Feb-2006
The expiry and applicability info would help us distinguish between 
changes in intended behavior, buggy implementations, beta-vs-release 
and such. REBOL changes a lot even if many of those changes are fixes. 
This could act as a compatibility test suite for alternate implementations.
Geomol:
23-Feb-2006
I'll write you privately, as we don't want it to be exposed too much. 
(Users are depending on it, and this goups is web-public.)
Anton:
23-Feb-2006
Ok.  But this is becoming a very large and complex project. Are we 
really prepared to go through with it ?  I think even if we go a 
short way, the ideas and findings may help someone else come along 
to complete it later. So I think I will make that Qtask project.
BrianH:
23-Feb-2006
I'll do some research and think about this some more. It may not 
be as difficult as it sounds.
Geomol:
23-Feb-2006
If anyone else wanna see the website powered by REBOL and running 
my NicomDB, write me privately.
Geomol:
23-Feb-2006
hehe, well. My problem is, I have so many things to do and so little 
time.
Anton:
23-Feb-2006
Having done that, I can't spend much time on it now ! :-(  But it's 
good to get some of these ideas written down, and a few things worked 
out.
Geomol:
23-Feb-2006
Reeeeiiiichart! It's Anton and John caaaalling! ;)
JaimeVargas:
23-Feb-2006
They can serve as a base to implement the full unit test for Rebol, 
and save time.
Anton:
23-Feb-2006
I see "John" in qtask and added him as a watcher. (I assume that's 
you Geomol). I can add anybody else in qtask who is interested as 
watchers too.

(Geomol, you will need to accept becoming a watcher first, then you 
should be able to see the page.)
Geomol:
24-Feb-2006
and yes, I'm John in Qtask.
Geomol:
27-Feb-2006
And then some REBOL:
>> d: 2-9-1752
== 2-Sep-1752
>> d + 1
== 3-Sep-1752


Seems like the reformation didn't occur in REBOL-land. Maybe that 
should be noticed in the wikibook, Henrik?
Geomol:
27-Feb-2006
It seems, REBOL handle leap years correctly. The rule is, that every 
4. year is a leap year. Every 100 year isn't a leap year though, 
unless it's divided by 400. So 2000 was a leap year, 1900 wasn't, 
but 1600 was. And so on.
Brock:
28-Feb-2006
Can anyone help me understand what is wrong below?  I am essentially 
trying to get Rebol to execute a ping or traceroute and record the 
result in a text file....
Anton:
1-Mar-2006
Yes, Volker is right, (and I made a spelling mistake.)
Pekr:
1-Mar-2006
but I first tried:

do bind [a + b + c] 'kontext 


and it did not work. So is 'kontext itself a different context than 
in kontext 'a? :-)
Pekr:
1-Mar-2006
well, the quote char was there simply by mistake and because I rewrote 
example according to initial syntax of do bind load str 'a, where 
'a is quoted too ;-)
20801 / 4860612345...207208[209] 210211...483484485486487