[REBOL] Re: Newbie help: Parsing mobile email address

2002-06-10 Thread Petr Krenzelok

Matthew Kim wrote:

>Hi,
>
>I've managed a crude way to parse a mobile email address down to its
>phone number (area code, and 7 digit number) using a loop and if
>statements. However, I'm wondering if there's a more efficient way to do
>it (shortcuts in REBOL)
>
>Basically I'm trying to do this...
>
>Mobile Email Address: [EMAIL PROTECTED]
>
>
>
>Result:
>~~~
>Area Code: 416
>Phone Number: 5551234
>
>  
>
->> Address: [EMAIL PROTECTED]
== [EMAIL PROTECTED]
->> digit: charset [#"0" - #"9"]
== make bitset! #{
FF03
}
->> parse to-string address [copy phone some digit "@" copy domain to end]
== true
->> print phone
4165551234
->> print domain
pcs.rogers.com

Parse is fun  mostly ;-)

Cheers,
-pekr-


-- 
To unsubscribe from this list, please send an email to
[EMAIL PROTECTED] with "unsubscribe" in the 
subject, without the quotes.




[REBOL] Newbie help: Parsing mobile email address

2002-06-10 Thread Matthew Kim

Hi,

I've managed a crude way to parse a mobile email address down to its
phone number (area code, and 7 digit number) using a loop and if
statements. However, I'm wondering if there's a more efficient way to do
it (shortcuts in REBOL)

Basically I'm trying to do this...

Mobile Email Address: [EMAIL PROTECTED]



Result:
~~~
Area Code: 416
Phone Number: 5551234

-- 
To unsubscribe from this list, please send an email to
[EMAIL PROTECTED] with "unsubscribe" in the 
subject, without the quotes.




[REBOL] Re: Function "LAUNCH" - Usage questions

2002-06-10 Thread Mark Chang


1) Agree a lot of the function needed can not be implemented well without
true multitasking especially a lot of Network programming that need
multithreads.

2) Low level socket programming is available in Rebol.  However, good
proper documentation is not available (or I don't know), making low level
socket programming a difficult task.

-Mark

> Thank you (sigh!).
>
> When a Rebol version will include a multiprocessing/multithreading
> feature?! It is a very important feature in a programming language! True
> multitasking! Python already does! Java already does!  And... how about
> low level socket programming? Is Rebol an Internet programming language
> or not?!
>
> Bye!
> Thank you for your answers!
>
> -Alessandro-
>
>
> ===
>
> >
> > --- Gregg Irwin <[EMAIL PROTECTED]> wrote:
> > > Hi Allesandro,
> > >
> > > <<
> > > I was very interested to the function "launch" (I
> > > didn't know it).
> > >
> > > But I didn't find enought documentation about it.
> > > Can someone tell me more about launch refiniments?
> > > (this function could
> > > be used to simulate a multiprocessing system!).
> > > >>
> > >
> > > Launch is fairly limited in practice because you
> > > can't use it from within your scripts, only at the
> > > console. It's handy, yes, but not for deployment
> > > purposes. For that you need to have View/Pro or
> > > /Command and use CALL or a native OS function.
> >
> > I thought 'launch could be used by a script if it was
> > called directly from the REBOL command line, but was
> > not usable (or predictable, maybe) in scripts
> > themselves launched by other scripts, from the console
> > prompt, or from view icons.
> >
> >
> >
> > __
> > Do You Yahoo!?
> > Yahoo! - Official partner of 2002 FIFA World Cup
> > http://fifaworldcup.yahoo.com
> > --
> > To unsubscribe from this list, please send an email to
> > [EMAIL PROTECTED] with "unsubscribe" in the
> > subject, without the quotes.
> >
> >
>
> 
>
> Alessandro Manotti
> Presidente dell'Associazione di volontariato O.N.L.U.S. "RIUSA"
>
> Sito web: http://riusa.apritisesamo.net
>   http://riusa.150m.com
> email:[EMAIL PROTECTED]
> mailing-list: [EMAIL PROTECTED]
> Telefono: 347.63.43.231
>
>
>
> --
> Prendi GRATIS l'email universale che... risparmia: http://www.email.it/f
>
> Sponsor:
> Email.it Free (Internet) Access
> Prova il Nuovo Numero Unico valido per tutta Italia a tariffa locale!!!
> Email.it Free Access, dai più qualità alla tua navigazione
> Clicca qui: http://adv2.email.it/cgi-bin/foclick.cgi?mid=441&d=10-6
> --
> To unsubscribe from this list, please send an email to
> [EMAIL PROTECTED] with "unsubscribe" in the
> subject, without the quotes.
>


Mark Chang - [EMAIL PROTECTED]
Founder of JobStreet.com,
www.jobstreet.com
250 Tanjong Pagar Road
#11-01 St Andrew's Centre
Singapore 088541
Fax: 65-538 0090
Tel: 65-538 0060

#1 Ground Floor Office,
Equatorial Penang,
1 Jalan bukit Jambul, 11900 Penang
Malaysia.
Fax: 604 643 6461
Tel: 604 644 5912



--
To unsubscribe from this list, please send an email to
[EMAIL PROTECTED] with "unsubscribe" in the
subject, without the quotes.




[REBOL] Re: Pre-REP on NONE! and SERIES! polymorphism

2002-06-10 Thread Joel Neely

Hi, Gabriele,

Gabriele Santilli wrote:
> 
>find any [s []] v
> 
> ? Or maybe better:
> 
>find any [s []] :v
> 

Outstanding!

-jn-

-- 
; Joel Neely joeldotneelyatfedexdotcom
REBOL [] do [ do func [s] [ foreach [a b] s [prin b] ] sort/skip
do function [s] [t] [ t: "" foreach [a b] s [repend t [b a]] t ] {
| e s m!zauafBpcvekexEohthjJakwLrngohOqrlryRnsctdtiub} 2 ]
-- 
To unsubscribe from this list, please send an email to
[EMAIL PROTECTED] with "unsubscribe" in the 
subject, without the quotes.




[REBOL] Re: basics: meaning and uses of make object! vs. context

2002-06-10 Thread Ingo Hohmann

Hi Jason, Ammon,

Ammon Johnson wrote:
> Hi again,
> 
>   Yes, there are times when the SOURCE hides things from you...
> 
>>>source make
>>
> make: native [
> "Constructs and returns a new value."
> type [any-type!] "The datatype or example value."
> spec [any-type!] "The attributes of the new value."
> ]
> 
>   You see MAKE is a Native!  It isn't done in REBOL code, but rather in the 
> language REBOL is written in (C?) so SOURCE couldn't tell you if it wanted 
> to.   Other than that, SOURCE will hide nothing from you.  Use the SOURCE, 
> Luke!  The SOURCE will not fail you... ;-)

Unless it does, of course ...

>> a: make object! [ blk: [ print "HI" ] set 'f func [][ do blk ]]
>> f
HI
>> source f
f: func [][do blk]
>> blk
** Script Error: blk has no value
** Near: blk

This is an artificial example, of course, but it is not that uncommon 
that critical parts of a function are hidden in an object!. Especially 
once you start with /View.

That said, 'source is always worth a try.


Kind regards,

Ingo


-- 
To unsubscribe from this list, please send an email to
[EMAIL PROTECTED] with "unsubscribe" in the 
subject, without the quotes.




[REBOL] Re: basics: meaning and uses of make object! vs. context

2002-06-10 Thread Ladislav Mecir

Hi Jason,

- Original Message -
From: "Jason Cunliffe"

...snip...

Q2: If CONTEXT is just a typing shortcut, then what are people's preferences
for
readability, and why?

thanks very much
./Jason


<>

Joel criticized the name of the function, because the meaning of the word
"context" is already used in Rebol with different meaning (the whole
Contexts article is discussing that). That is why some of us think, that the
name may lead to confusions.

-L

-- 
To unsubscribe from this list, please send an email to
[EMAIL PROTECTED] with "unsubscribe" in the 
subject, without the quotes.




[REBOL] M$SQL Access from Linux

2002-06-10 Thread Ammon Johnson

Hi,

Has anyone successfully accessed M$SQL from Linux?  I know that 
REBOL/Command has built in ODBC access and that you can get ODBC Drivers for 
Linux, but has anyone paired them up?  Any clues how I might do it?  I 
haven't used Linux enough to even begin to know where to start.  Any pointers 
would be very handy!

Thanks!!
Ammon
-- 
To unsubscribe from this list, please send an email to
[EMAIL PROTECTED] with "unsubscribe" in the 
subject, without the quotes.




[REBOL] Re: How to check function arguments? - Syntax REBOLution ...

2002-06-10 Thread Ladislav Mecir

Hi all,

some minor changes at my rebsite (see
http://www.rebolforces.com/~ladislav ), especially evaluation.html now
contains two possible definitions of recursive blocks.

-L

-- 
To unsubscribe from this list, please send an email to
[EMAIL PROTECTED] with "unsubscribe" in the 
subject, without the quotes.




[REBOL] Re: Pre-REP on NONE! and SERIES! polymorphism

2002-06-10 Thread Ladislav Mecir

Hi all,

I do not hate polymorphism! That said, I must say, that all proposed
solutions look like "an exception to an exception".

1) I do not think, that NONE is an ideal replacement for an empty block.

2) I do not think, that NONE is good at pretending to be a LOGIC! value.

My POV is, that current behaviour is complicated enough and I would prefer
to not complicate things any more. If I had to choose the simplest
variation, I would vote for 3c below, but the simplest way would be to use
empty block where appropriate instead of replacing it by NONE.

- Original Message -
From: "Joel Neely"

Since we've been discussing enhancements recently, let me offer a
common situation (at least in my experience) and ask the collected
wisdom of the list for thoughtful opinions...

There are several REBOL features for working with series values
that are quite comfortable with an empty series:

foreach item  foo  [print item]
find  foo  bletch
selectfoo  bletch

Evaluating each of the above with an empty series will nicely
obey the "Principle of Least Surprise" and

do nothing
yield none
yield none

respectively.  However, all of the above will choke if FOO is
set to NONE instead.  It still seems reasonable in that case for
the expressions to

do nothing
yield none
yield none

IMHO.  Given that (for example) PARSE-XML provides NONE instead
of an empty block for the attribute portion of XML elements that
have no attributes, and for the content portion of XML elements
that have not content (and I could give other examples where
compound data structures could have NONE rather than an empty
block due either to simpler initialization or missing data),
I often find myself wrapping FOREACH, FIND, and SELECT with
tests to ensure that the argument is a series instead of a NONE
value, even though I'd be perfectly happy with NONE to behave
exactly the same as an empty series.

So, what to do...?


1)  Keep using wrapper code.

2)  Define appropriate wrappers and use those wherever needed,
e.g.:

find?: func [s [series! none!] v [any-type!]] [
if found? s [ find s v ]
]

3)  Propose a REBOL enhancement...

3a)  ...of additional natives FIND? SELECT? and FOREACH?

3b)  ...of refinements FIND/ANY SELECT/ANY and FOREACH/ANY
 (or /NULL or /EMPTY or whatever...)

3c)  ...asking for FIND SELECT and FOREACH to be extended to
 accept NONE as a first argument.

Of course, (1) is kludgy but simple on a case-by-case basis,
(2) is straightforward but adds the overhead of function eval
to every use (significant in inner loops, of course), and
(3) is political (and might appear to contradict my POV on
keeping the /Core as focused as possible ;-)

Since the issues here involve BOTH convenience (addressed by all
options but (1)) AND performance (addressed only by (3)), I'm
interested in the views of the list.

OBTW, the above function could certainly have been written

find?: func [s [series! none!] v [any-type!]] [
all [found? s   find s v]
]

instead; are there any other interesting variations (just as a
matter of coding style, clever hackage, etc.)?

-jn-

--
; Joel Neely joeldotneelyatfedexdotcom
REBOL [] do [ do func [s] [ foreach [a b] s [prin b] ] sort/skip
do function [s] [t] [ t: "" foreach [a b] s [repend t [b a]] t ] {
| e s m!zauafBpcvekexEohthjJakwLrngohOqrlryRnsctdtiub} 2 ]


-- 
To unsubscribe from this list, please send an email to
[EMAIL PROTECTED] with "unsubscribe" in the 
subject, without the quotes.




[REBOL] Re: How to check function arguments? - Syntax REBOLution ...

2002-06-10 Thread Christian Ensel

Hi [Ladislav Romano Gabriele],

On monday, 10-Jun-02, 07:48:53, Ladislav Mecir wrote:

> my essay http://www.rebolforces.com/~ladislav/argstake.html describes how
> Rebol functions take their arguments.

Not that for one single moment I thought I've discovered a not so well-known
rebol behaviour ... ;) 

Thanks to you all for pointing me to this article,
regards,

Christian  

-- 
To unsubscribe from this list, please send an email to
[EMAIL PROTECTED] with "unsubscribe" in the 
subject, without the quotes.




[REBOL] Re: percent! - new datatype request

2002-06-10 Thread Joel Neely

Hi, Gregg,

IANARTE  (I Am Not A REBOL Technologies Employee... ;-) but I suspect
that data types are entangled with the lexical scanning performed
by LOAD.  IOW, it might be necessary to provide a specification for
how to recognize values of a new datatype at the lexical token level,
and that might not be convenient/feasible...

Just a guess!

-jn-

Gregg Irwin wrote:
> 
> Joel and Gabriele,
> 
> <<
> JN> -  providing a means for extending the syntax within dialects so
> JN>that new forms could be added at the mezzanine level, or
> 
> MAKE  DATATYPE!  would  be  really  cool.  :)  (Together with MAKE NATIVE!
> ;)
> >>
> 
> That could be really cool, but don't datatypes have to fit into REBOL's
> lexicon? The risk, of course, being that RT might have a very hard time
> adding extensions themselves unless we had a specific namespace where user
> datatypes lived. That pretty much bring us back to dialects, doesn't it?
> 
> --Gregg
> 
> --
> To unsubscribe from this list, please send an email to
> [EMAIL PROTECTED] with "unsubscribe" in the
> subject, without the quotes.
-- 
To unsubscribe from this list, please send an email to
[EMAIL PROTECTED] with "unsubscribe" in the 
subject, without the quotes.




[REBOL] Re: basics: meaning and uses of make object! vs. context

2002-06-10 Thread Ammon Johnson

Hi again,

Yes, there are times when the SOURCE hides things from you...

>> source make
make: native [
"Constructs and returns a new value."
type [any-type!] "The datatype or example value."
spec [any-type!] "The attributes of the new value."
]

You see MAKE is a Native!  It isn't done in REBOL code, but rather in the 
language REBOL is written in (C?) so SOURCE couldn't tell you if it wanted 
to.   Other than that, SOURCE will hide nothing from you.  Use the SOURCE, 
Luke!  The SOURCE will not fail you... ;-)

HTH
Ammon


A short time ago, Jason Cunliffe, sent an email stating:
> > source context
> >
> > in the console and see, that the CONTEXT function is a kind of shortcut
> > for make object!, which is a bit unlucky, because it may be misleading
> > sometimes.
>
> It had me confused.. it sounded so much more complicated.
> But that only shows I have not learned to trust SOURCE fully yet.
>
> Q1: Are there any situations when source 'someword hides something?
> [LUKE??]
>
> Q2: If CONTEXT is just a typing shortcut, then what are people's
> preferences for readability, and why?
>
> thanks very much
> ./Jason
-- 
To unsubscribe from this list, please send an email to
[EMAIL PROTECTED] with "unsubscribe" in the 
subject, without the quotes.




[REBOL] Re: basics: meaning and uses of make object! vs. context

2002-06-10 Thread Jason Cunliffe

> source context
>
> in the console and see, that the CONTEXT function is a kind of shortcut for
> make object!, which is a bit unlucky, because it may be misleading
> sometimes.

It had me confused.. it sounded so much more complicated.
But that only shows I have not learned to trust SOURCE fully yet.

Q1: Are there any situations when source 'someword hides something? [LUKE??]

Q2: If CONTEXT is just a typing shortcut, then what are people's preferences for
readability, and why?

thanks very much
./Jason


-- 
To unsubscribe from this list, please send an email to
[EMAIL PROTECTED] with "unsubscribe" in the 
subject, without the quotes.




[REBOL] insert blocking only on serial port?

2002-06-10 Thread Petr Krenzelok

Hi,

I am trying to write small util for our device. I am trying to figure 
out what port is our device connected to in an automatic way 

foreach [port port-number] our-ports [

  print ["Opening port: " port]

  either error? try [p: open/no-wait join serial://port reduce 
[port-number "/19200/8/none/1"]][
   print ["Error opening port ..." port "."]
  ][
   p/timeout: 2
   update p
   print ["Port " port " opened successfully ..."]
   print "Talking to device ..."
   insert p "1"
   either found? find copy p "somestring" [
  print ["Device found on " port "port."]
   ][
  print ["Different device on port " port]
  print ["Closing port " port "."]
  close p
   ]
 
 ]

] ; end foreach

the problem is however with the 'insert part. While copy, first, pick 
works like it should work - e.g. timeouts if no data available, or just 
returns immediatelly if /no-wait is used, 'insert hangs port forever ...

I know there can be problem sending some string to unknown device being 
connected to serial port, as we can't know what the device will/can do 
to our request, but shouldn't it at least time-out? Or is that just 
correct, assuming that device waits for more data? If so - how to do 
automatic device look-up then?

Thanks a lot,
-pekr-

-- 
To unsubscribe from this list, please send an email to
[EMAIL PROTECTED] with "unsubscribe" in the 
subject, without the quotes.




[REBOL] Re: Pre-REP on NONE! and SERIES! polymorphism

2002-06-10 Thread Gabriele Santilli

Hi Joel,

On Monday, June 10, 2002, 2:48:16 PM, you wrote:

JN> Since the issues here involve BOTH convenience (addressed by all
JN> options but (1)) AND performance (addressed only by (3)), I'm
JN> interested in the views of the list.

I'd vote for 2 or maybe 3c.

JN> instead; are there any other interesting variations (just as a
JN> matter of coding style, clever hackage, etc.)?

   find any [s []] v

? Or maybe better:

   find any [s []] :v

:)

Regards,
   Gabriele.
-- 
Gabriele Santilli <[EMAIL PROTECTED]>  --  REBOL Programmer
Amigan -- AGI L'Aquila -- REB: http://web.tiscali.it/rebol/index.r

-- 
To unsubscribe from this list, please send an email to
[EMAIL PROTECTED] with "unsubscribe" in the 
subject, without the quotes.




[REBOL] Re: percent! - new datatype request

2002-06-10 Thread Gabriele Santilli

Hi Gregg,

On Monday, June 10, 2002, 6:30:03 PM, you wrote:

GI> That could be really cool, but don't datatypes have to fit into REBOL's
GI> lexicon?

Of  course.  But  maybe having user datatypes as #[mytype! ...] is
enough  for  us...  what do you think? Or, it could be possible to
plug in parse rules in REBOL's parser, that are used when the rest
fails;  this  might  create  problems,  so  maybe  its  better not
allowing it...

Regards,
   Gabriele.
-- 
Gabriele Santilli <[EMAIL PROTECTED]>  --  REBOL Programmer
Amigan -- AGI L'Aquila -- REB: http://web.tiscali.it/rebol/index.r

-- 
To unsubscribe from this list, please send an email to
[EMAIL PROTECTED] with "unsubscribe" in the 
subject, without the quotes.




[REBOL] Re: Pre-REP on NONE! and SERIES! polymorphism

2002-06-10 Thread Gregg Irwin

Hi Joel,

I've been a big fan of Design by Contract for a while, which leads you to be
very specific and assert everything that's important to ensure reliable
operation. With REBOL, I do things very differently and am still looking at
how that mindset fits with my (evolving) REBOL development style. Without
further digression, I'd vote for 3c.

3c)  ...asking for FIND SELECT and FOREACH to be extended to
 accept NONE as a first argument.

If returning NONE were always considered to be an error condition, that
would be a different story, but it isn't. From a DbC viewpoint, I could
argue that there is a clear distinction and that you shouldn't be trying to
FIND anything in a none! value but, as you pointed out, returning NONE is a
standard REBOL idiom. If you want to check for NONE values in certain cases,
there is nothing to prevent you from doing that, but that would be the
exception. Most code would benefit I think.

--Gregg

-- 
To unsubscribe from this list, please send an email to
[EMAIL PROTECTED] with "unsubscribe" in the 
subject, without the quotes.




[REBOL] Re: Recursive Parse

2002-06-10 Thread Abdel Belkasri

Thanks Joel, it worked like a charm!
--Abdel.

-Original Message-
From: Joel Neely [mailto:[EMAIL PROTECTED]]
Sent: Monday, June 10, 2002 10:41 AM
To: [EMAIL PROTECTED]
Subject: [REBOL] Re: Recursive Parse


Hi, Abdel,

Abdel Belkasri wrote:
> 
> 
> I am kind of new to  REBOL, I wrote these lines to get the latest news
from
> www.cnn.com  , so far I can get the first line in the
> news table, but I don't know how to make my parse recursive to get all the
> news lines in the table. Here is the code:
> 
> page: read http://www.cnn.com/index.html
> parse page [thru "Other Top News"  copy news-table to ""]
> parse news-table [to ""  copy newsline  to ""]
> print newsline
> 

I suggest iteration instead of recursion for this task:

parse news-table [
any [
to ""
copy newsline to "" (print newsline)
]
to end
]

which, this morning at 10:40 CT (US) gives:

U.S. hostage survivor seeks justice
Video
Colorado fire burns 500 acres an hour
Video
Rumsfeld: Iraq 'lying' about biological weapons
Afghan loya jirga meeting delayed
Video
Sunset eclipse hits tonight
Where to watch
U.S. ties S. Korea in Cup
Standings
== true

Note the addition of TO END after the part that you expect to exhaust
the relevant data.  That allows you to test the true/false result of
PARSE for success or failure.

-jn-
-- 
To unsubscribe from this list, please send an email to
[EMAIL PROTECTED] with "unsubscribe" in the 
subject, without the quotes.
-- 
To unsubscribe from this list, please send an email to
[EMAIL PROTECTED] with "unsubscribe" in the 
subject, without the quotes.




[REBOL] Re: make-doc-pro: Version 1.0.3 beta update

2002-06-10 Thread Gregg Irwin

Hi Sunanda, et al

<< I'm backing up Robert in his recent comment that: "Adding minimal
user-friendly syntax can help a lot" >>

It can help the parser writer a lot, but not the user. :)

<< Part of the problem with all these "pick the url from the data stream"
suggestions is that it is not trivial to do. All of the following _could_ be
URLs:

http://www.rebol.com
www.rebol.com
ftp://rebol.com/a-script.r
/a-folder/a-subfolder/a-document.txt
/a-folder/a-doc.htm#a-fragment
/x
>>

As a user, I would be happy if it caught the easy ones without any
intervention on my part. Other tools can do this, and url! is a native type
that REBOL can identify, so there's virtually no cost there (though I
haven't looked at the MDP parser so maybe there is).

If I have some non-standard url, or new url formats are rolled out, then
having an explicit way to mark them is a good thing to have around. For the
normal case, though, why should I have to mark them up?

I'm not writing the parser so I won't complain either way. :)

--Gregg

-- 
To unsubscribe from this list, please send an email to
[EMAIL PROTECTED] with "unsubscribe" in the 
subject, without the quotes.




[REBOL] Re: percent! - new datatype request

2002-06-10 Thread Gregg Irwin

Joel and Gabriele,

<<
JN> -  providing a means for extending the syntax within dialects so
JN>that new forms could be added at the mezzanine level, or

MAKE  DATATYPE!  would  be  really  cool.  :)  (Together with MAKE NATIVE!
;)
>>

That could be really cool, but don't datatypes have to fit into REBOL's
lexicon? The risk, of course, being that RT might have a very hard time
adding extensions themselves unless we had a specific namespace where user
datatypes lived. That pretty much bring us back to dialects, doesn't it?

--Gregg

-- 
To unsubscribe from this list, please send an email to
[EMAIL PROTECTED] with "unsubscribe" in the 
subject, without the quotes.




[REBOL] Re: percent! - new datatype request

2002-06-10 Thread Robbo1Mark

To implement a percent! datatype or any other "shopping list" of new datatypes 
requires one to write an extended version of the LOAD function to parse script input 
and correctly identify and make new object! instances of the percent! and other new 
datatypes.

You also have to extend the TYPE? function to correctly handle your special new 
object! datatype representations and return your intended percent! or whatever.

Any other new methods such as arithmetic, print / output formatting etc also have to 
be defined.

Basically your write another interpreter and functions on top of REBOL to handle your 
new datatypes, which is certainly do-able and REBOL/Core has loads of useful functions 
for implementing this.

A reader macro function like the lisp / scheme 'extend-syntax and 'syntax-rules 
functions for REBOL would make this so much easier and allow for easier extensions of 
REBOL at the mezzanine level as Joel would like.

Maybe it would be better if REBOL like Lisp, Scheme, Perl, PHP, Python, Ruby, TCL, 
OCAML, to name but a few, could be extended at ALL levels and not just the mezzanine 
level but we've done this to death before - sigh!

Mark Dickson


-- 
To unsubscribe from this list, please send an email to
[EMAIL PROTECTED] with "unsubscribe" in the 
subject, without the quotes.




[REBOL] Re: How to check function arguments ?

2002-06-10 Thread Ammon Johnson

>>? any
USAGE:
ANY block

DESCRIPTION:
 Shortcut OR. Evaluates and returns the first value that is not FALSE or 
NONE.
 ANY is a native value.

ARGUMENTS:
 block -- Block of expressions (Type: block)

any-type! is a suedo-type that includes any data-type!

HTH
Ammon


A short time ago, Carl Read, sent an email stating:
> On 09-Jun-02, Charles wrote:
> >   Easiest solution is like Romano said: Just use any-type! I use it
> > in a die rolling CGI script, where you can do: roll?2d6
> >   or
> > roll?2d6+3
> >  (or +-3)
> >   I also use:
> > args: system/options/args
>
> Ah - I didn't know of that solution.  And I hadn't noticed that type:
> any is different than any-type!...
>
> >> x: func [y][whatever]
> >> ? x
>
> USAGE:
> X y
>
> DESCRIPTION:
> (undocumented)
>
> ARGUMENTS:
>  y -- (Type: any)
>
> >> x: func [y [any-type!]][whatever]
> >> ? x
>
> USAGE:
> X y
>
> DESCRIPTION:
> (undocumented)
>
> ARGUMENTS:
>  y -- (Type: any-type)
>
> But no need to explain the difference. It's not something I urgently
> need to know today. (;
-- 
To unsubscribe from this list, please send an email to
[EMAIL PROTECTED] with "unsubscribe" in the 
subject, without the quotes.




[REBOL] Re: basics: meaning and uses of make object! vs. context

2002-06-10 Thread Joel Neely

Hi, Jason,

Jason Cunliffe wrote:
> 
> Please can anyone provide an introductory explanation of the
> difference between "make object!" and "context"?
> 

Merely the amount of typing.

>> source context
context: func [
"Defines a unique (underived) object."
   blk [block!] "Object variables and values."
][
make object! blk
]

This is another example along the lines of the TO-FOO vs. MAKE FOO
thread.

-jn-
-- 
To unsubscribe from this list, please send an email to
[EMAIL PROTECTED] with "unsubscribe" in the 
subject, without the quotes.




[REBOL] Re: Pre-REP on NONE! and SERIES! polymorphism

2002-06-10 Thread Ammon Johnson

Hi Joel,

I would consider this case a flaw in the REBOL code which leads to the idea 
that RT should fix it, but that could take a while depending on how critical 
RT considers it to be  I think that it should be submitted as a bug 
report based on the fact that it should take RT a grand total of 5 minutes to 
fix it, and it doesn't add much overhead to the size of the interpreter and 
it will actually aid in performance (one of the reasons you listed as a good 
reason to add it to the Core language)

Just my 2 little pennies
Ammon


A short time ago, Joel Neely, sent an email stating:
> Since we've been discussing enhancements recently, let me offer a
> common situation (at least in my experience) and ask the collected
> wisdom of the list for thoughtful opinions...
>
> There are several REBOL features for working with series values
> that are quite comfortable with an empty series:
>
> foreach item  foo  [print item]
> find  foo  bletch
> selectfoo  bletch
>
> Evaluating each of the above with an empty series will nicely
> obey the "Principle of Least Surprise" and
>
> do nothing
> yield none
> yield none
>
> respectively.  However, all of the above will choke if FOO is
> set to NONE instead.  It still seems reasonable in that case for
> the expressions to
>
> do nothing
> yield none
> yield none
>
> IMHO.  Given that (for example) PARSE-XML provides NONE instead
> of an empty block for the attribute portion of XML elements that
> have no attributes, and for the content portion of XML elements
> that have not content (and I could give other examples where
> compound data structures could have NONE rather than an empty
> block due either to simpler initialization or missing data),
> I often find myself wrapping FOREACH, FIND, and SELECT with
> tests to ensure that the argument is a series instead of a NONE
> value, even though I'd be perfectly happy with NONE to behave
> exactly the same as an empty series.
>
> So, what to do...?
>
>
> 1)  Keep using wrapper code.
>
> 2)  Define appropriate wrappers and use those wherever needed,
> e.g.:
>
> find?: func [s [series! none!] v [any-type!]] [
> if found? s [ find s v ]
> ]
>
> 3)  Propose a REBOL enhancement...
>
> 3a)  ...of additional natives FIND? SELECT? and FOREACH?
>
> 3b)  ...of refinements FIND/ANY SELECT/ANY and FOREACH/ANY
>  (or /NULL or /EMPTY or whatever...)
>
> 3c)  ...asking for FIND SELECT and FOREACH to be extended to
>  accept NONE as a first argument.
>
> Of course, (1) is kludgy but simple on a case-by-case basis,
> (2) is straightforward but adds the overhead of function eval
> to every use (significant in inner loops, of course), and
> (3) is political (and might appear to contradict my POV on
> keeping the /Core as focused as possible ;-)
>
> Since the issues here involve BOTH convenience (addressed by all
> options but (1)) AND performance (addressed only by (3)), I'm
> interested in the views of the list.
>
> OBTW, the above function could certainly have been written
>
> find?: func [s [series! none!] v [any-type!]] [
> all [found? s   find s v]
> ]
>
> instead; are there any other interesting variations (just as a
> matter of coding style, clever hackage, etc.)?
>
> -jn-
-- 
To unsubscribe from this list, please send an email to
[EMAIL PROTECTED] with "unsubscribe" in the 
subject, without the quotes.




[REBOL] Re: percent! - new datatype request

2002-06-10 Thread Ammon Johnson

Hi again Joel,

I think that you are refering to the 'module functions that are promised for 
version 3.0?   If that is the case then maybe we should be patient and in the 
mean time develop the dialect that effectively emulates a percent dataype, i 
just wonder

>> type? 55%
** Syntax Error: Invalid integer -- 55%
** Near: (line 1) type? 55%
>> [55%]
** Syntax Error: Invalid integer -- 55%
** Near: (line 1) [55%]
>> parse [55%] rules
** Syntax Error: Invalid integer -- 55%
** Near: (line 1) parse [55%] rules


hm...  It appears that a dialect as has been described wouldn't even be 
possible.  Any ideas?

Enjoy!!
Ammon


A short time ago, Joel Neely, sent an email stating:
> Hi, Gregg,
>
> Gregg Irwin wrote:
> > We could go on with every single SI unit in existance?
> >
> >
> > Not a stupid idea at all. This is where I see dialects playing an
> > important role, and comes back to what I said in my reply to Andrew,
> > that this is where I've thought percentages would fit best.
>
> I agree completely.  Such things belong in a dialect, not in the
> core language.
>
> Looking back at the history of programming languages, there's an
> issue of balance between
>
> a simple language   a bloated language
> which is small andwhich is complex and
> easy to learn, but and impossible to learn
> too small for realbecause of unbridled
> programming tasksfeature creep
> (and so never used)(and so never used)
>
>
> There's a "sweet spot" in the middle, and I respectfully suggest
> that REBOL/Core should seek to find (and STAY IN) that zone.  The
> whole idea of an extensible language is to provide the most common
> and useful set of features, along with a simple means for the
> programmer to add those concepts that are required for the special
> circumstances of a particular task/project.
>
> That said...
>
>
> Instead of asking for specific twiddles, I'd be interested in the
> response of RT to the ideas of either:
>
> -  providing a means for extending the syntax within dialects so
>that new forms could be added at the mezzanine level, or
>
> -  providing a means for switching on/off classes of extensions
>(perhaps coded natively) to avoid bloat and namespace collisions
>for those cases where the extensions are not needed.
>
> Thoughts, anyone?
>
> -jn-
-- 
To unsubscribe from this list, please send an email to
[EMAIL PROTECTED] with "unsubscribe" in the 
subject, without the quotes.




[REBOL] Re: Recursive Parse

2002-06-10 Thread Joel Neely

Hi, Abdel,

Abdel Belkasri wrote:
> 
> 
> I am kind of new to  REBOL, I wrote these lines to get the latest news from
> www.cnn.com  , so far I can get the first line in the
> news table, but I don't know how to make my parse recursive to get all the
> news lines in the table. Here is the code:
> 
> page: read http://www.cnn.com/index.html
> parse page [thru "Other Top News"  copy news-table to ""]
> parse news-table [to ""  copy newsline  to ""]
> print newsline
> 

I suggest iteration instead of recursion for this task:

parse news-table [
any [
to ""
copy newsline to "" (print newsline)
]
to end
]

which, this morning at 10:40 CT (US) gives:

U.S. hostage survivor seeks justice
Video
Colorado fire burns 500 acres an hour
Video
Rumsfeld: Iraq 'lying' about biological weapons
Afghan loya jirga meeting delayed
Video
Sunset eclipse hits tonight
Where to watch
U.S. ties S. Korea in Cup
Standings
== true

Note the addition of TO END after the part that you expect to exhaust
the relevant data.  That allows you to test the true/false result of
PARSE for success or failure.

-jn-
-- 
To unsubscribe from this list, please send an email to
[EMAIL PROTECTED] with "unsubscribe" in the 
subject, without the quotes.




[REBOL] Re: basics: meaning and uses of make object! vs. context

2002-06-10 Thread Ladislav Mecir

Hi Jason,

you can do e.g.

source context

in the console and see, that the CONTEXT function is a kind of shortcut for
make object!, which is a bit unlucky, because it may be misleading
sometimes.

HTH
-L

- Original Message -
From: "Jason Cunliffe"

Hi

I looked at Ladislav's amazing article
http://www.sweb.cz/LMecir/contexts.html
but it's still a bit beyond me ..

Please can anyone provide an introductory explanation of the difference
between
"make object!" and "context"? ..hopefully then I can get back to studying
Ladislav's essay.

...snip...

-- 
To unsubscribe from this list, please send an email to
[EMAIL PROTECTED] with "unsubscribe" in the 
subject, without the quotes.




[REBOL] Re: to block! or to-block

2002-06-10 Thread Ammon Johnson

Hi,

Well, congradulations on the wedding!   And thanks for taking the reply. ;-) 
 
Thanks!!
Ammon

A short time ago, Joel Neely, sent an email stating:
> Hi, Ammon,
>
> Sorry to be so slow in responding...
>
> We're getting ready for a wedding (my older son) and in crunch mode
> at work, so spare time is in short supply right now.
>
> Ammon Johnson wrote:
> > Hi,
> >
> > Why are there specific functions for converting datatypes?
> >  Isn't 'to good enough?  are there performance differences, or
> >  evaluation differences?  Any insight anyone?  Joel, could you run
> > some benchmarks to see if there is a difference that way?
>
> No need for benchmarks.  "Use the SOURCE, Luke!"
>
> >> source to-integer
>
> to-integer: func [
> "Converts to integer value."
> value "Value to convert"
> ][
> to integer! :value
> ]
>
> >> source to-block
>
> to-block: func [
> "Converts to block value."
> value "Value to convert"
> ][
> to block! :value
> ]
>
>
> (manually reformatted for wrap-elimination)
>
> Based on the above, I'd expect no evaluation differences, but
> using the to-foo forms adds the overhead of a wrapper function
> to every eval.  Hardly worth it to save one keystroke, IMHO.
>
> -jn-
-- 
To unsubscribe from this list, please send an email to
[EMAIL PROTECTED] with "unsubscribe" in the 
subject, without the quotes.




[REBOL] Re: basics: meaning and uses of make object! vs. context

2002-06-10 Thread Ammon Johnson

Hi,

Use the SOURCE luke!  

>> source context
context: func [
"Defines a unique (underived) object."
blk [block!] "Object variables and values."
][
make object! blk
]


HTH
Ammon


A short time ago, Jason Cunliffe, sent an email stating:
> Hi
>
> I looked at Ladislav's amazing article
> http://www.sweb.cz/LMecir/contexts.html
> but it's still a bit beyond me ..
>
> Please can anyone provide an introductory explanation of the difference
> between "make object!" and "context"? ..hopefully then I can get back to
> studying Ladislav's essay.
>
> These both appear to do the same thing:
>
> o: make object! [
> name: "jason"
> email: [EMAIL PROTECTED]
> sendme: func [message] [send email message]
> ]
>
> o: context [
> name: "jason"
> email: [EMAIL PROTECTED]
> sendme: func [message] [send email message]
> ]
>
> >> o/name
>
> == "jason"
>
> >> o/email
>
> == [EMAIL PROTECTED]
>
> >> o/sendme "hello"
>
> Q1: Are they different, and if so How?
> Q2: Why/when/what determines which form to use..?
>
> thanks
> ./Jason
-- 
To unsubscribe from this list, please send an email to
[EMAIL PROTECTED] with "unsubscribe" in the 
subject, without the quotes.




[REBOL] Re: Newbie: Trouble filling a form using "http-post.r"

2002-06-10 Thread Matthew Kim

Thanks everyone for you help!

Scott, I couldn't quite get yours to work due to my lack of REBOL/HTML
know how.

Cybarite, your solution worked perfectly, just copied and pasted (a load
off my shoulder!).

Thanks again!  I'm sure I'll be needing your guys' help in the near
future.  :)

Cheers,
Matt

-Original Message-
From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]] On Behalf
Of G. Scott Jones
Sent: Sunday, June 09, 2002 8:44 PM
To: [EMAIL PROTECTED]
Subject: [REBOL] Re: Newbie: Trouble filling a form using "http-post.r"

From: "Cybarite"

> I don't know if you got Scott's approach working
> or not. He is using the more native approach rather
> than what is in %http-port.r

Whoops.  See, I was asleep at the wheel.  Just call me native! to the
core.


> I did not look at their approach too long but I think
> they are passing some parameters to the cgi message
> that are then echoed back on the response. So the
> original posting message already knows the logo, and
> possible error or success messages.

This was my take on the code.  It seems to be a way to use a
centralized,
non-brand specific system, where branding can then be used to
personalize
the response.

> For example, you can change the success message
> to "has, we think,  really been sent to:"

I would prefer a message something like, "If the sun spots are not too
bright and you *have* paid your bill, then the message has gone
through."
;-)

By the way, the "person" that lives at 416-555-1212 is really
fascinating!
;-)

> I think this is clever ... allowing you to control some output on the
> response page and make your parsing work easier.
> And making you a bit more independent of changes to the processing
program.

It is clever.  First, I've specifically noted, but I have little doubt
that
there are more out there.


End of my irrelevant comments, except to acknowledge that I was not
paying
close attention to the messages.  Sorry!!  (Scott gracefully exits stage
left)
--Scott Jones

-- 
To unsubscribe from this list, please send an email to
[EMAIL PROTECTED] with "unsubscribe" in the 
subject, without the quotes.

-- 
To unsubscribe from this list, please send an email to
[EMAIL PROTECTED] with "unsubscribe" in the 
subject, without the quotes.




[REBOL] Re: Function "LAUNCH" - Usage questions

2002-06-10 Thread Christopher Dicely


FWIW, my earlier message on this thread represented an
incorrect understanding; launch can be used in the
console and scripts launched through the console, but
not in scripts invoked via the REBOL command line; not
sure about using the /View interface.

This makes it, as others have noted, less than
desirable for deployment in most cases. 


__
Do You Yahoo!?
Yahoo! - Official partner of 2002 FIFA World Cup
http://fifaworldcup.yahoo.com
-- 
To unsubscribe from this list, please send an email to
[EMAIL PROTECTED] with "unsubscribe" in the 
subject, without the quotes.




[REBOL] basics: meaning and uses of make object! vs. context

2002-06-10 Thread Jason Cunliffe

Hi

I looked at Ladislav's amazing article
http://www.sweb.cz/LMecir/contexts.html
but it's still a bit beyond me ..

Please can anyone provide an introductory explanation of the difference between
"make object!" and "context"? ..hopefully then I can get back to studying
Ladislav's essay.

These both appear to do the same thing:

o: make object! [
name: "jason"
email: [EMAIL PROTECTED]
sendme: func [message] [send email message]
]

o: context [
name: "jason"
email: [EMAIL PROTECTED]
sendme: func [message] [send email message]
]

>> o/name
== "jason"
>> o/email
== [EMAIL PROTECTED]
>> o/sendme "hello"


Q1: Are they different, and if so How?
Q2: Why/when/what determines which form to use..?

thanks
./Jason

-- 
To unsubscribe from this list, please send an email to
[EMAIL PROTECTED] with "unsubscribe" in the 
subject, without the quotes.




[REBOL] Recursive Parse

2002-06-10 Thread Abdel Belkasri



 
I am kind of new to  REBOL, I wrote these lines to get the latest news from
www.cnn.com  , so far I can get the first line in the
news table, but I don't know how to make my parse recursive to get all the
news lines in the table. Here is the code:
 
page: read http://www.cnn.com/index.html
parse page [thru "Other Top News"  copy news-table to ""]
parse news-table [to ""  copy newsline  to ""]
print newsline
 
--Abdel.


-- 
To unsubscribe from this list, please send an email to
[EMAIL PROTECTED] with "unsubscribe" in the 
subject, without the quotes.




[REBOL] Re: Function "LAUNCH" - Usage questions

2002-06-10 Thread [EMAIL PROTECTED]

Thank you!

--Alessandro--

=

> Network programming: core 2.3 user guide
> set-modes: Core 2.5 release notes
>
> --Maarten
>
> [EMAIL PROTECTED] wrote:
>
> > Where can I find documentation or infos about it?
> >
> >
> >>REBOL has low-level socket programming via ports and set-modes
> >>
> >>--Maarten
> >>
> >>[EMAIL PROTECTED] wrote:
> >>
> >>
> >>>Thank you (sigh!).
> >>>
> >>>When a Rebol version will include a multiprocessing/multithreading
> >>>feature?! It is a very important feature in a programming language!
True
> >>>multitasking! Python already does! Java already does!  And... how about
> >>>low level socket programming? Is Rebol an Internet programming language
> >>>or not?!
> >>>
> >>>Bye!
> >>>Thank you for your answers!
> >>>
> >>>-Alessandro-
> >>>
> >>>
> >>>===
> >>>
> >>>
> >>>
> >>>
> --- Gregg Irwin <[EMAIL PROTECTED]> wrote:
> 
> 
> >Hi Allesandro,
> >
> ><<
> >I was very interested to the function "launch" (I
> >didn't know it).
> >
> >But I didn't find enought documentation about it.
> >Can someone tell me more about launch refiniments?
> >(this function could
> >be used to simulate a multiprocessing system!).
> >
> >Launch is fairly limited in practice because you
> >can't use it from within your scripts, only at the
> >console. It's handy, yes, but not for deployment
> >purposes. For that you need to have View/Pro or
> >/Command and use CALL or a native OS function.
> >
> >
> I thought 'launch could be used by a script if it was
> called directly from the REBOL command line, but was
> not usable (or predictable, maybe) in scripts
> themselves launched by other scripts, from the console
> prompt, or from view icons.
> 
> 
> 
> __
> Do You Yahoo!?
> Yahoo! - Official partner of 2002 FIFA World Cup
> http://fifaworldcup.yahoo.com
> --
> To unsubscribe from this list, please send an email to
> [EMAIL PROTECTED] with "unsubscribe" in the
> subject, without the quotes.
> 
> 
> 
> 
> >>>
> >>>
> >>>Alessandro Manotti
> >>>Presidente dell'Associazione di volontariato O.N.L.U.S. "RIUSA"
> >>>
> >>>Sito web: http://riusa.apritisesamo.net
> >>>  http://riusa.150m.com
> >>>email:[EMAIL PROTECTED]
> >>>mailing-list: [EMAIL PROTECTED]
> >>>Telefono: 347.63.43.231
> >>>
> >>>
> >>>
> >>>--
> >>>Prendi GRATIS l'email universale che... risparmia:
http://www.email.it/f
> >>>
> >>>Sponsor:
> >>>Email.it Free (Internet) Access
> >>>Prova il Nuovo Numero Unico valido per tutta Italia a tariffa locale!!!
> >>>Email.it Free Access, dai più qualità alla tua navigazione
> >>>Clicca qui: http://adv2.email.it/cgi-bin/foclick.cgi?mid=441&d=10-6
> >>>
> >>>
> >>
> >>--
> >>Maarten Koopmans
> >>Innovation manager  tel:   +31 30 2 305 324
> >>Surfnet BV  fax:   +31 30 2 305 329
> >>P.O.Box 19035   email: [EMAIL PROTECTED]
> >>NL-3501 DA Utrecht  http://www.surfnet.nl
> >>The netherlands
> >>
> >>--
> >>To unsubscribe from this list, please send an email to
> >>[EMAIL PROTECTED] with "unsubscribe" in the
> >>subject, without the quotes.
> >>
> >>
> >>
> >
> > 
> >
> > Alessandro Manotti
> > Presidente dell'Associazione di volontariato O.N.L.U.S. "RIUSA"
> >
> > Sito web: http://riusa.apritisesamo.net
> >   http://riusa.150m.com
> > email:[EMAIL PROTECTED]
> > mailing-list: [EMAIL PROTECTED]
> > Telefono: 347.63.43.231
> >
> >
> >
> > --
> > Prendi GRATIS l'email universale che... risparmia: http://www.email.it/f
> >
> > Sponsor:
> > Quest'anno, prima di partire per il mare collegati ad Oliviero.it,
troverai sicuramente tutto quello che ti occorre per trascorrere le Tue
vacanze.
> > Clicca qui: http://adv2.email.it/cgi-bin/foclick.cgi?mid=493&d=10-6
> >
>
>
> --
> Maarten Koopmans
> Innovation manager  tel:   +31 30 2 305 324
> Surfnet BV  fax:   +31 30 2 305 329
> P.O.Box 19035 email: [EMAIL PROTECTED]
> NL-3501 DA Utrechthttp://www.surfnet.nl
> The netherlands
>
> --
> To unsubscribe from this list, please send an email to
> [EMAIL PROTECTED] with "unsubscribe" in the
> subject, without the quotes.
>
>



Alessandro Manotti
Presidente dell'Associazione di volontariato O.N.L.U.S. "RIUSA"

Sito web: http://riusa.apritisesamo.net
  http://riusa.150m.com
email:[EMAIL PROTECTED]
mailing-list: [EMAIL PROTECTED]
Telefono: 347.63.43.231



--
Prendi GRATIS l'email universale che... risparmia: http://www.email.it/f

Sponsor:
Gratis per te il software per inviare e ricevere SMS direttamente dal tuo
PC

Clicca qui: http://adv2.email.

[REBOL] Re: RFC: make-doc-pro feature / glossary

2002-06-10 Thread Volker Nitsch

Am Montag, 10. Juni 2002 10:32 schrieb Robert M. Muench:
> > -Original Message-
> > From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]]On Behalf Of
> > Volker Nitsch
> > Sent: Friday, June 07, 2002 6:35 PM
> > To: [EMAIL PROTECTED]
> > Subject: [REBOL] Re: RFC: make-doc-pro feature / glossary
> >
> > i read a paragraph and think - hmm, is this a well known word?
> > and then describe it better. so i would like to have the special glossary
> > close. the "\glossary" needs a lot lines.
> > glossary?: an explanation of words.
> > paragraph?: a piece of related text.
>
> So your usage pattern is to put the glossary? stuff somewhere in the script
> and don't collect it in a special place? That makes sense as it follows the
> old C++ rule "declare just before first usage". I like it this way.
>

it could save clicks, and verifying which words have/need definitions.

> > I use make-doc primarily as text, with translation only occasianally.
>
> Really? Just for yourself or if you communicate with others too?
>

hmm.. i am not communication that much. 
when, mostly email, which is text.
here i am starting marking headlines with "===" :)
also there are some RT-documents, partly text, partly html.
if carefull written, i can read text better.

> > it opens faster, i always change something and so on.
>
> I know, with IOS I thought about an desktop extension wherer you can edit a
> MDP file and get the translation automatically synced to all users. The
> source-code could only be on your system, or on the user's system that need
> to change the text as well. Robert

i would publish text too.
so its possible to write comments directly into the document.
then ios works similar to a wikki.

another point is, i am using an editor-extension 
which collects "==="-lines in a text-list and finds them in editor on click.
similar to an html-index-frame, but with zero writing-effort.
suddenly using large text is pretty quick.
(unfortunally standalone, not plugged into desktop-editor)
so to me using text not only as source is an valid option.

greetings
Volker


--
To unsubscribe from this list, please send an email to
[EMAIL PROTECTED] with "unsubscribe" in the
subject, without the quotes.




[REBOL] Re: percent! - new datatype request

2002-06-10 Thread Gabriele Santilli

Hi Joel,

On Monday, June 10, 2002, 2:03:19 PM, you wrote:

JN> -  providing a means for extending the syntax within dialects so
JN>that new forms could be added at the mezzanine level, or

MAKE  DATATYPE!  would  be  really  cool.  :)  (Together with MAKE
NATIVE! ;)

Regards,
   Gabriele.
-- 
Gabriele Santilli <[EMAIL PROTECTED]>  --  REBOL Programmer
Amigan -- AGI L'Aquila -- REB: http://web.tiscali.it/rebol/index.r

-- 
To unsubscribe from this list, please send an email to
[EMAIL PROTECTED] with "unsubscribe" in the 
subject, without the quotes.




[REBOL] Re: make-doc-pro: Version 1.0.3 beta update

2002-06-10 Thread Robert M. Muench

> -Original Message-
> From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]]On Behalf Of
> [EMAIL PROTECTED]
> Sent: Monday, June 10, 2002 11:12 AM
> To: [EMAIL PROTECTED]
> Subject: [REBOL] Re: make-doc-pro: Version 1.0.3 beta update

> Robert's =url may not be perfect as it requires the URL to be on a line by
> itself, and it needs embedded spaces to be coded as %20, but it does the job.

Hi, it will be possible to use it inline in one of the next versions. The URL
part can be put into " and " if it contains spaces, so no need to use %20.

=url "http://my url with spaces/" Test URL

Most likely I will follow the same pattern for inlined URLs like:

This is a text =url http://www.rebol.com "Rebol Homepage" with an embedded URL.

Or something like this:

This is a text =url "http://my url with spaces/" "My Website" with an embedded
URL.

Robert


-- 
To unsubscribe from this list, please send an email to
[EMAIL PROTECTED] with "unsubscribe" in the 
subject, without the quotes.




[REBOL] Pre-REP on NONE! and SERIES! polymorphism

2002-06-10 Thread Joel Neely

Since we've been discussing enhancements recently, let me offer a
common situation (at least in my experience) and ask the collected
wisdom of the list for thoughtful opinions...

There are several REBOL features for working with series values
that are quite comfortable with an empty series:

foreach item  foo  [print item]
find  foo  bletch
selectfoo  bletch

Evaluating each of the above with an empty series will nicely
obey the "Principle of Least Surprise" and

do nothing
yield none
yield none

respectively.  However, all of the above will choke if FOO is
set to NONE instead.  It still seems reasonable in that case for
the expressions to

do nothing
yield none
yield none

IMHO.  Given that (for example) PARSE-XML provides NONE instead
of an empty block for the attribute portion of XML elements that
have no attributes, and for the content portion of XML elements
that have not content (and I could give other examples where
compound data structures could have NONE rather than an empty
block due either to simpler initialization or missing data),
I often find myself wrapping FOREACH, FIND, and SELECT with
tests to ensure that the argument is a series instead of a NONE
value, even though I'd be perfectly happy with NONE to behave
exactly the same as an empty series.

So, what to do...?


1)  Keep using wrapper code.

2)  Define appropriate wrappers and use those wherever needed,
e.g.:

find?: func [s [series! none!] v [any-type!]] [
if found? s [ find s v ]
]

3)  Propose a REBOL enhancement...

3a)  ...of additional natives FIND? SELECT? and FOREACH?

3b)  ...of refinements FIND/ANY SELECT/ANY and FOREACH/ANY
 (or /NULL or /EMPTY or whatever...)

3c)  ...asking for FIND SELECT and FOREACH to be extended to
 accept NONE as a first argument.

Of course, (1) is kludgy but simple on a case-by-case basis,
(2) is straightforward but adds the overhead of function eval
to every use (significant in inner loops, of course), and
(3) is political (and might appear to contradict my POV on
keeping the /Core as focused as possible ;-)

Since the issues here involve BOTH convenience (addressed by all
options but (1)) AND performance (addressed only by (3)), I'm
interested in the views of the list.

OBTW, the above function could certainly have been written

find?: func [s [series! none!] v [any-type!]] [
all [found? s   find s v]
]

instead; are there any other interesting variations (just as a
matter of coding style, clever hackage, etc.)?

-jn-

-- 
; Joel Neely joeldotneelyatfedexdotcom
REBOL [] do [ do func [s] [ foreach [a b] s [prin b] ] sort/skip
do function [s] [t] [ t: "" foreach [a b] s [repend t [b a]] t ] {
| e s m!zauafBpcvekexEohthjJakwLrngohOqrlryRnsctdtiub} 2 ]
-- 
To unsubscribe from this list, please send an email to
[EMAIL PROTECTED] with "unsubscribe" in the 
subject, without the quotes.




[REBOL] Re: make-doc-pro: Version 1.0.3 beta update

2002-06-10 Thread Volker Nitsch

Hi Robert, Sunanda,

Am Montag, 10. Juni 2002 11:11 schrieb [EMAIL PROTECTED]:
> Here's a copy of my email that doesn't seem to have arrived after three
> days. Apologies if you got it while me and the archive didn't.
>
> I'm backing up Robert in his recent comment that: "Adding minimal
> user-friendly syntax can help a lot"
> Sunanda
>
> <<===>>
>
> Volker:
> > instead of =url
> >  iam thinking about
> >here you get all the nice stuff: http://rebol.com
> >  what do you think?
>
> Part of the problem with all these "pick the url from the data stream"
> suggestions is that it is not trivial to do. All of the following _could_
> be URLs:
>
> http://www.rebol.com
> www.rebol.com
> ftp://rebol.com/a-script.r
> /a-folder/a-subfolder/a-document.txt
> /a-folder/a-doc.htm#a-fragment
> /x
>
> And, for any of them in a document, they may be meant to be quoted or meant
> to be a clickable link.
>
> Basically the only 100% accurate rule is: "it's a clickable URL if I mark
> it up as such".
>
> Robert's =url may not be perfect as it requires the URL to be on a line by
> itself, and it needs embedded spaces to be coded as %20, but it does the
> job.
>

===a little parser-part 

url-line: func [line /local text-end text url-start url rest] [
either parse line [
some [to ": " text-end: skip] url-start: (
text: copy/part line text-end
either all [
not error? try [set [val rest] load/next url-start]
find reduce [url! file!] type? val
] [
url: val
] [
rest: head line
]
) :rest
] [
rejoin [""build-tag compose [a href (url)] text ]
] [
line
]
]
;--samples
foreach line reduce [
"some text pointing to: http://somewhere.dom garbage"
"no url at all"
"no real url: nowhere"
"nothing behind: "
"multiple colons: this and: that"
"multiple colons: this and: that and url: http://somewhere.dom";
"some text pointing to: http://somewhere.dom";
{some text pointing to: %"http://somewhere/ with space.dom"}
{a file-link demo: %index.html}
] [
print[">>" line newline "==" url-line line ]
]

;--no real urls inside
>> some text pointing to: http://somewhere.dom garbage 
== some text pointing to: http://somewhere.dom garbage
>> no url at all 
== no url at all
>> no real url: nowhere 
== no real url: nowhere
>> nothing behind:  
== nothing behind: 
>> multiple colons: this and: that 
== multiple colons: this and: that

;--with urls
>> multiple colons: this and: that and url: http://somewhere.dom 
== http://somewhere.dom";>multiple colons: this and: that and url
>> some text pointing to: http://somewhere.dom 
== http://somewhere.dom";>some text pointing to
>> some text pointing to: %"http://somewhere/ with space.dom" 
== http://somewhere/ with space.dom">some text pointing to
>> a file-link demo: %index.html 
== a file-link demo

> Sunanda.

grretings
Volker

--
To unsubscribe from this list, please send an email to
[EMAIL PROTECTED] with "unsubscribe" in the
subject, without the quotes.




[REBOL] Re: percent! - new datatype request

2002-06-10 Thread Joel Neely

Hi, Paul,

I don't normally care for "I agree" posts that add no new ideas, but
this is an important issue.  Therefore I feel compelled to respond to
your POV...

Paul Tretter wrote:
> 
> The question always comes to mind - do we really need one?  After
> all, why add more code to the binary when we already can handle
> percents with a few bits of code.  I think only very complex useful
> functions should be added to the binary.
> 

I absolutely, completely agree, with the only exception that common
cases which could receive a performance boost from being coded in
the native layer should also be considered.  (I.e. when there's a
performance payback in things we often do...)

-jn-

-- 
; Joel Neely joeldotneelyatfedexdotcom
REBOL [] do [ do func [s] [ foreach [a b] s [prin b] ] sort/skip
do function [s] [t] [ t: "" foreach [a b] s [repend t [b a]] t ] {
| e s m!zauafBpcvekexEohthjJakwLrngohOqrlryRnsctdtiub} 2 ]
-- 
To unsubscribe from this list, please send an email to
[EMAIL PROTECTED] with "unsubscribe" in the 
subject, without the quotes.




[REBOL] Re: percent! - new datatype request

2002-06-10 Thread Joel Neely

Hi, Mark,

I think you've made my point...  ;-)

[EMAIL PROTECTED] wrote:
> 
> In a message dated 6/7/2002 3:20:21 PM GMT Daylight Time,
> [EMAIL PROTECTED] writes:
> 
> > Why we're on the subject of new datatypes, what others are needed?
> > Degrees (and minutes) perhaps?
> 
> How about these;
> 
> complex!  -1.234+567i  ; complex numbers
> 
> ratio!   2/3; fractions
> 
> co-ord!  2.34x1.23 ; co-ordinate - more precise than pair!
> 
> octal!377oct ; octal numbers - integers
> 
> hex! hex  ;  hexadecimal numbers - integers
> 
> binary!   101010bin   ;  binary numbers - integers note current
> REBOL binary
> is actually a binary-string! and not a numeric value
> 
> stack! s[ 1 2 3 4 ]; a stack block! which grows from bottom
> up and for which insert is quasi-elementary - really the opposite of a block!
> ie a reverse block!
> 
> >> make stack! [ 4 3 2 1 ]
> == #[stack! [1 2 3 4]]
> 
> unicode-char!  #'a'   ; utf unicode two byte multi-lingual
> character sets
> 
> unicode-string!  u"Hello"  & u{Hello}   ; ditto as above for uni-code strings
> 
> typed-series!   vector decimal! [1.1 2.2 3.3]  ; more efficient tpyed block!
> storage
> 
> >> vector integer! [1 2 3 4]
> == #[vector integer! [1 2 3 4]]
> >> vector integer! [1 2 3 "hello"]
> ** script error!  Value "hello" of type string! expected type of integer!
> ** near vector integer! [1 2 3 "hello"]
> 
> And these are only for starters ...
>

Is it really in the best interests of RT, REBOL the language, IOS,
or the REBOL community for RT to be dealing with everything we can
imagine

Let's not forget that the foundation of the language something called
REBOL/Core!  Provided that we have the ability to extend the language
ourselves at the mezzanine level, I respectfully suggest that RT can
be using their time more productively on other issues than shopping
lists such as the above.

-jn-

-- 
; Joel Neely joeldotneelyatfedexdotcom
REBOL [] do [ do func [s] [ foreach [a b] s [prin b] ] sort/skip
do function [s] [t] [ t: "" foreach [a b] s [repend t [b a]] t ] {
| e s m!zauafBpcvekexEohthjJakwLrngohOqrlryRnsctdtiub} 2 ]
-- 
To unsubscribe from this list, please send an email to
[EMAIL PROTECTED] with "unsubscribe" in the 
subject, without the quotes.




[REBOL] Re: percent! - new datatype request

2002-06-10 Thread Joel Neely

Hi, Jason,

Jason Cunliffe wrote:
> 
> > Why we're on the subject of new datatypes, what others are needed?
> > Degrees (and minutes) perhaps?
> 
> GPS Location = YES PLEASE!!!
> 
...
> 
> After voice, geo-referencing is among the top 5 killer apps for
> mobile systems. REBOL could shine brightly in this area, playing
> to its strengths, opening up new apps and services. And without
> falling foul of heavy established monopolies.
> 

Having a new type (perhaps DEGREES!) which recognizes angle/lat/lon
values with degrees, minutes, and seconds, handles the conversions
and manipulation of the parts correctly/automatically would come
much close IMHO to the case of an extension which COULD be written
at mezzanine level but would greatly improve in performance if in
the native level.

That said, how many of us currently are writing code that would use
such a type?  (And, yes, I know that there's a chicken/egg issue
here, but I'm still wondering...)

-jn-

-- 
; Joel Neely joeldotneelyatfedexdotcom
REBOL [] do [ do func [s] [ foreach [a b] s [prin b] ] sort/skip
do function [s] [t] [ t: "" foreach [a b] s [repend t [b a]] t ] {
| e s m!zauafBpcvekexEohthjJakwLrngohOqrlryRnsctdtiub} 2 ]
-- 
To unsubscribe from this list, please send an email to
[EMAIL PROTECTED] with "unsubscribe" in the 
subject, without the quotes.




[REBOL] Re: percent! - new datatype request

2002-06-10 Thread Joel Neely

Hi, Carl,

Carl Read wrote:
> 
> I think we need it, but not so much because it'd be easier (perhaps)
> for programming, but because it's more descriptive.  For instance, we
> know what this means...
> 
> prompt-payment-discount: $5.25
> 
> but does this...
> 
> prompt-payment-discount: 5.25
> 
> mean money or percent?
> 
> If it was this though...
> 
> prompt-payment-discount: 5.25%
> 
> we would know.
> 

That's what comments (or descriptive names) are for.

prompt-payment-discount-percent: 5.25
prompt-payment-discount-factor:  1.0 - (5.25 * 0.01)

or

prompt-payment-discount: 0.0525  ;; 5 1/4 percent

IMHO.

-jn-


-- 
; Joel Neely joeldotneelyatfedexdotcom
REBOL [] do [ do func [s] [ foreach [a b] s [prin b] ] sort/skip
do function [s] [t] [ t: "" foreach [a b] s [repend t [b a]] t ] {
| e s m!zauafBpcvekexEohthjJakwLrngohOqrlryRnsctdtiub} 2 ]
-- 
To unsubscribe from this list, please send an email to
[EMAIL PROTECTED] with "unsubscribe" in the 
subject, without the quotes.




[REBOL] Re: percent! - new datatype request

2002-06-10 Thread Joel Neely

Hi, Gregg,

Gregg Irwin wrote:
> 
> We could go on with every single SI unit in existance?
> 
> 
> Not a stupid idea at all. This is where I see dialects playing an
> important role, and comes back to what I said in my reply to Andrew,
> that this is where I've thought percentages would fit best.
>

I agree completely.  Such things belong in a dialect, not in the
core language.

Looking back at the history of programming languages, there's an
issue of balance between

a simple language   a bloated language
which is small andwhich is complex and
easy to learn, but and impossible to learn
too small for realbecause of unbridled
programming tasksfeature creep
(and so never used)(and so never used)


There's a "sweet spot" in the middle, and I respectfully suggest
that REBOL/Core should seek to find (and STAY IN) that zone.  The
whole idea of an extensible language is to provide the most common
and useful set of features, along with a simple means for the
programmer to add those concepts that are required for the special
circumstances of a particular task/project.

That said...


Instead of asking for specific twiddles, I'd be interested in the
response of RT to the ideas of either:

-  providing a means for extending the syntax within dialects so
   that new forms could be added at the mezzanine level, or

-  providing a means for switching on/off classes of extensions
   (perhaps coded natively) to avoid bloat and namespace collisions
   for those cases where the extensions are not needed.

Thoughts, anyone?

-jn-


-- 
; Joel Neely joeldotneelyatfedexdotcom
REBOL [] do [ do func [s] [ foreach [a b] s [prin b] ] sort/skip
do function [s] [t] [ t: "" foreach [a b] s [repend t [b a]] t ] {
| e s m!zauafBpcvekexEohthjJakwLrngohOqrlryRnsctdtiub} 2 ]
-- 
To unsubscribe from this list, please send an email to
[EMAIL PROTECTED] with "unsubscribe" in the 
subject, without the quotes.




[REBOL] Re: to block! or to-block

2002-06-10 Thread Joel Neely

Hi, Ammon,

Sorry to be so slow in responding...

We're getting ready for a wedding (my older son) and in crunch mode
at work, so spare time is in short supply right now.

Ammon Johnson wrote:
> 
> Hi,
> 
> Why are there specific functions for converting datatypes?
>  Isn't 'to good enough?  are there performance differences, or
>  evaluation differences?  Any insight anyone?  Joel, could you run
> some benchmarks to see if there is a difference that way?
> 

No need for benchmarks.  "Use the SOURCE, Luke!"

>> source to-integer
to-integer: func [
"Converts to integer value."
value "Value to convert"
][
to integer! :value
]

>> source to-block
to-block: func [
"Converts to block value."
value "Value to convert"
][
to block! :value
]
>>

(manually reformatted for wrap-elimination)

Based on the above, I'd expect no evaluation differences, but
using the to-foo forms adds the overhead of a wrapper function
to every eval.  Hardly worth it to save one keystroke, IMHO.

-jn-

-- 
; Joel Neely joeldotneelyatfedexdotcom
REBOL [] do [ do func [s] [ foreach [a b] s [prin b] ] sort/skip
do function [s] [t] [ t: "" foreach [a b] s [repend t [b a]] t ] {
| e s m!zauafBpcvekexEohthjJakwLrngohOqrlryRnsctdtiub} 2 ]
-- 
To unsubscribe from this list, please send an email to
[EMAIL PROTECTED] with "unsubscribe" in the 
subject, without the quotes.




[REBOL] Re: Function "LAUNCH" - Usage questions

2002-06-10 Thread Maarten Koopmans

Network programming: core 2.3 user guide
set-modes: Core 2.5 release notes

--Maarten

[EMAIL PROTECTED] wrote:

> Where can I find documentation or infos about it?
> 
> 
>>REBOL has low-level socket programming via ports and set-modes
>>
>>--Maarten
>>
>>[EMAIL PROTECTED] wrote:
>>
>>
>>>Thank you (sigh!).
>>>
>>>When a Rebol version will include a multiprocessing/multithreading
>>>feature?! It is a very important feature in a programming language! True
>>>multitasking! Python already does! Java already does!  And... how about
>>>low level socket programming? Is Rebol an Internet programming language
>>>or not?!
>>>
>>>Bye!
>>>Thank you for your answers!
>>>
>>>-Alessandro-
>>>
>>>
>>>===
>>>
>>>
>>>
>>>
--- Gregg Irwin <[EMAIL PROTECTED]> wrote:


>Hi Allesandro,
>
><<
>I was very interested to the function "launch" (I
>didn't know it).
>
>But I didn't find enought documentation about it.
>Can someone tell me more about launch refiniments?
>(this function could
>be used to simulate a multiprocessing system!).
>
>Launch is fairly limited in practice because you
>can't use it from within your scripts, only at the 
>console. It's handy, yes, but not for deployment
>purposes. For that you need to have View/Pro or
>/Command and use CALL or a native OS function.
>
>
I thought 'launch could be used by a script if it was 
called directly from the REBOL command line, but was
not usable (or predictable, maybe) in scripts
themselves launched by other scripts, from the console
prompt, or from view icons.



__
Do You Yahoo!?
Yahoo! - Official partner of 2002 FIFA World Cup
http://fifaworldcup.yahoo.com
-- 
To unsubscribe from this list, please send an email to
[EMAIL PROTECTED] with "unsubscribe" in the 
subject, without the quotes.




>>>
>>>
>>>Alessandro Manotti
>>>Presidente dell'Associazione di volontariato O.N.L.U.S. "RIUSA"
>>>
>>>Sito web: http://riusa.apritisesamo.net
>>>  http://riusa.150m.com
>>>email:[EMAIL PROTECTED]
>>>mailing-list: [EMAIL PROTECTED]
>>>Telefono: 347.63.43.231
>>>
>>>
>>>
>>>--
>>>Prendi GRATIS l'email universale che... risparmia: http://www.email.it/f
>>>
>>>Sponsor:
>>>Email.it Free (Internet) Access
>>>Prova il Nuovo Numero Unico valido per tutta Italia a tariffa locale!!!
>>>Email.it Free Access, dai più qualità alla tua navigazione
>>>Clicca qui: http://adv2.email.it/cgi-bin/foclick.cgi?mid=441&d=10-6
>>>
>>>
>>
>>-- 
>>Maarten Koopmans
>>Innovation manager  tel:   +31 30 2 305 324
>>Surfnet BV  fax:   +31 30 2 305 329
>>P.O.Box 19035 email: [EMAIL PROTECTED]
>>NL-3501 DA Utrechthttp://www.surfnet.nl
>>The netherlands
>>
>>-- 
>>To unsubscribe from this list, please send an email to
>>[EMAIL PROTECTED] with "unsubscribe" in the 
>>subject, without the quotes.
>>
>>
>>
> 
> 
> 
> Alessandro Manotti
> Presidente dell'Associazione di volontariato O.N.L.U.S. "RIUSA"
> 
> Sito web: http://riusa.apritisesamo.net
>   http://riusa.150m.com
> email:[EMAIL PROTECTED]
> mailing-list: [EMAIL PROTECTED]
> Telefono: 347.63.43.231
> 
> 
> 
> --
> Prendi GRATIS l'email universale che... risparmia: http://www.email.it/f
> 
> Sponsor:
> Quest'anno, prima di partire per il mare collegati ad Oliviero.it, troverai 
>sicuramente tutto quello che ti occorre per trascorrere le Tue vacanze.
> Clicca qui: http://adv2.email.it/cgi-bin/foclick.cgi?mid=493&d=10-6
> 


-- 
Maarten Koopmans
Innovation manager  tel:   +31 30 2 305 324
Surfnet BV  fax:   +31 30 2 305 329
P.O.Box 19035   email: [EMAIL PROTECTED]
NL-3501 DA Utrecht  http://www.surfnet.nl
The netherlands

-- 
To unsubscribe from this list, please send an email to
[EMAIL PROTECTED] with "unsubscribe" in the 
subject, without the quotes.




[REBOL] Re: Function "LAUNCH" - Usage questions

2002-06-10 Thread [EMAIL PROTECTED]

Where can I find documentation or infos about it?

> REBOL has low-level socket programming via ports and set-modes
>
> --Maarten
>
> [EMAIL PROTECTED] wrote:
>
> > Thank you (sigh!).
> >
> > When a Rebol version will include a multiprocessing/multithreading
> > feature?! It is a very important feature in a programming language! True
> > multitasking! Python already does! Java already does!  And... how about
> > low level socket programming? Is Rebol an Internet programming language
> > or not?!
> >
> > Bye!
> > Thank you for your answers!
> >
> > -Alessandro-
> >
> >
> > ===
> >
> >
> >
> >>--- Gregg Irwin <[EMAIL PROTECTED]> wrote:
> >>
> >>>Hi Allesandro,
> >>>
> >>><<
> >>>I was very interested to the function "launch" (I
> >>>didn't know it).
> >>>
> >>>But I didn't find enought documentation about it.
> >>>Can someone tell me more about launch refiniments?
> >>>(this function could
> >>>be used to simulate a multiprocessing system!).
> >>>
> >>>Launch is fairly limited in practice because you
> >>>can't use it from within your scripts, only at the
> >>>console. It's handy, yes, but not for deployment
> >>>purposes. For that you need to have View/Pro or
> >>>/Command and use CALL or a native OS function.
> >>>
> >>I thought 'launch could be used by a script if it was
> >>called directly from the REBOL command line, but was
> >>not usable (or predictable, maybe) in scripts
> >>themselves launched by other scripts, from the console
> >>prompt, or from view icons.
> >>
> >>
> >>
> >>__
> >>Do You Yahoo!?
> >>Yahoo! - Official partner of 2002 FIFA World Cup
> >>http://fifaworldcup.yahoo.com
> >>--
> >>To unsubscribe from this list, please send an email to
> >>[EMAIL PROTECTED] with "unsubscribe" in the
> >>subject, without the quotes.
> >>
> >>
> >>
> >
> > 
> >
> > Alessandro Manotti
> > Presidente dell'Associazione di volontariato O.N.L.U.S. "RIUSA"
> >
> > Sito web: http://riusa.apritisesamo.net
> >   http://riusa.150m.com
> > email:[EMAIL PROTECTED]
> > mailing-list: [EMAIL PROTECTED]
> > Telefono: 347.63.43.231
> >
> >
> >
> > --
> > Prendi GRATIS l'email universale che... risparmia: http://www.email.it/f
> >
> > Sponsor:
> > Email.it Free (Internet) Access
> > Prova il Nuovo Numero Unico valido per tutta Italia a tariffa locale!!!
> > Email.it Free Access, dai più qualità alla tua navigazione
> > Clicca qui: http://adv2.email.it/cgi-bin/foclick.cgi?mid=441&d=10-6
> >
>
>
> --
> Maarten Koopmans
> Innovation manager  tel:   +31 30 2 305 324
> Surfnet BV  fax:   +31 30 2 305 329
> P.O.Box 19035 email: [EMAIL PROTECTED]
> NL-3501 DA Utrechthttp://www.surfnet.nl
> The netherlands
>
> --
> To unsubscribe from this list, please send an email to
> [EMAIL PROTECTED] with "unsubscribe" in the
> subject, without the quotes.
>
>



Alessandro Manotti
Presidente dell'Associazione di volontariato O.N.L.U.S. "RIUSA"

Sito web: http://riusa.apritisesamo.net
  http://riusa.150m.com
email:[EMAIL PROTECTED]
mailing-list: [EMAIL PROTECTED]
Telefono: 347.63.43.231



--
Prendi GRATIS l'email universale che... risparmia: http://www.email.it/f

Sponsor:
Quest’anno, prima di partire per il mare collegati ad Oliviero.it, troverai 
sicuramente tutto quello che ti occorre per trascorrere le Tue vacanze.
Clicca qui: http://adv2.email.it/cgi-bin/foclick.cgi?mid=493&d=10-6
--
To unsubscribe from this list, please send an email to
[EMAIL PROTECTED] with "unsubscribe" in the
subject, without the quotes.




[REBOL] Re: make-doc-pro: Version 1.0.3 beta update

2002-06-10 Thread SunandaDH

Here's a copy of my email that doesn't seem to have arrived after three days. 
Apologies if you got it while me and the archive didn't.

I'm backing up Robert in his recent comment that: "Adding minimal 
user-friendly syntax can help a lot"
Sunanda

<<===>>

Volker:
> instead of =url
>  iam thinking about 
>here you get all the nice stuff: http://rebol.com
>  what do you think?

Part of the problem with all these "pick the url from the data stream" 
suggestions is that it is not trivial to do. All of the following _could_ be 
URLs:

http://www.rebol.com
www.rebol.com
ftp://rebol.com/a-script.r
/a-folder/a-subfolder/a-document.txt
/a-folder/a-doc.htm#a-fragment
/x

And, for any of them in a document, they may be meant to be quoted or meant 
to be a clickable link.

Basically the only 100% accurate rule is: "it's a clickable URL if I mark it 
up as such".

Robert's =url may not be perfect as it requires the URL to be on a line by 
itself, and it needs embedded spaces to be coded as %20, but it does the job.

Sunanda.
-- 
To unsubscribe from this list, please send an email to
[EMAIL PROTECTED] with "unsubscribe" in the 
subject, without the quotes.




[REBOL] Re: RFC: make-doc-pro feature / glossary

2002-06-10 Thread Robert M. Muench

> -Original Message-
> From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]]On Behalf Of
> Volker Nitsch
> Sent: Friday, June 07, 2002 6:35 PM
> To: [EMAIL PROTECTED]
> Subject: [REBOL] Re: RFC: make-doc-pro feature / glossary

> i read a paragraph and think - hmm, is this a well known word?
> and then describe it better. so i would like to have the special glossary
> close. the "\glossary" needs a lot lines.
> glossary?: an explanation of words.
> paragraph?: a piece of related text.

So your usage pattern is to put the glossary? stuff somewhere in the script and
don't collect it in a special place? That makes sense as it follows the old C++
rule "declare just before first usage". I like it this way.

> I use make-doc primarily as text, with translation only occasianally.

Really? Just for yourself or if you communicate with others too?

> it opens faster, i always change something and so on.

I know, with IOS I thought about an desktop extension wherer you can edit a MDP
file and get the translation automatically synced to all users. The source-code
could only be on your system, or on the user's system that need to change the
text as well. Robert


-- 
To unsubscribe from this list, please send an email to
[EMAIL PROTECTED] with "unsubscribe" in the 
subject, without the quotes.




[REBOL] Re: make-doc-pro: Version 1.0.3 beta update

2002-06-10 Thread Robert M. Muench

> -Original Message-
> From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]]On Behalf Of
> Andrew Martin
> Sent: Friday, June 07, 2002 11:44 PM
> To: [EMAIL PROTECTED]
> Subject: [REBOL] Re: make-doc-pro: Version 1.0.3 beta update

> The same way browsers and Rebol handle them. A space stops the parsing of a
> URL. If there's meant to be a space in the URL, then substitute "%20" for
> the space.

This requires the users to know the encoding scheme for URLs. Further the
emitter must decide how to convert this URL encoding for the output device. For
example if I emit PDF I don't want to have %20 in the output maybe better to
underline the complete link, or wrap it in " chars. IMO there is no silver
bullet to solve this. Adding minimal user-friendly syntax can help a lot... and
that's what I'm trying to do in make-doc-pro (with being compatible to
make-doc). Robert


-- 
To unsubscribe from this list, please send an email to
[EMAIL PROTECTED] with "unsubscribe" in the 
subject, without the quotes.




[REBOL] Re: RFC: make-doc-pro feature / glossary

2002-06-10 Thread Robert M. Muench

> -Original Message-
> From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]]On Behalf Of
> Gregg Irwin
> Sent: Saturday, June 08, 2002 9:18 PM
> To: [EMAIL PROTECTED]
> Subject: [REBOL] Re: RFC: make-doc-pro feature / glossary

> Sorry if this idea came and went already, but what about a simple glossary
> section?
>
> ===Glossary

Hi, that could be on of the results after translation. For HTML I like to move
my mouse over a word and see the glossary term. For PDF I would like to have a
===Glossary section added and a hint for terms being defined in the glossary.
Robert


-- 
To unsubscribe from this list, please send an email to
[EMAIL PROTECTED] with "unsubscribe" in the 
subject, without the quotes.




[REBOL] Re: Function "LAUNCH" - Usage questions

2002-06-10 Thread Maarten Koopmans

REBOL has low-level socket programming via ports and set-modes

--Maarten

[EMAIL PROTECTED] wrote:

> Thank you (sigh!).
> 
> When a Rebol version will include a multiprocessing/multithreading
> feature?! It is a very important feature in a programming language! True
> multitasking! Python already does! Java already does!  And... how about
> low level socket programming? Is Rebol an Internet programming language
> or not?!
> 
> Bye!
> Thank you for your answers!
> 
> -Alessandro-
> 
> 
> ===
> 
> 
> 
>>--- Gregg Irwin <[EMAIL PROTECTED]> wrote:
>>
>>>Hi Allesandro,
>>>
>>><<
>>>I was very interested to the function "launch" (I
>>>didn't know it).
>>>
>>>But I didn't find enought documentation about it.
>>>Can someone tell me more about launch refiniments?
>>>(this function could
>>>be used to simulate a multiprocessing system!).
>>>
>>>Launch is fairly limited in practice because you
>>>can't use it from within your scripts, only at the 
>>>console. It's handy, yes, but not for deployment
>>>purposes. For that you need to have View/Pro or
>>>/Command and use CALL or a native OS function.
>>>
>>I thought 'launch could be used by a script if it was 
>>called directly from the REBOL command line, but was
>>not usable (or predictable, maybe) in scripts
>>themselves launched by other scripts, from the console
>>prompt, or from view icons.
>>
>>
>>
>>__
>>Do You Yahoo!?
>>Yahoo! - Official partner of 2002 FIFA World Cup
>>http://fifaworldcup.yahoo.com
>>-- 
>>To unsubscribe from this list, please send an email to
>>[EMAIL PROTECTED] with "unsubscribe" in the 
>>subject, without the quotes.
>>
>>
>>
> 
> 
> 
> Alessandro Manotti
> Presidente dell'Associazione di volontariato O.N.L.U.S. "RIUSA"
> 
> Sito web: http://riusa.apritisesamo.net
>   http://riusa.150m.com
> email:[EMAIL PROTECTED]
> mailing-list: [EMAIL PROTECTED]
> Telefono: 347.63.43.231
> 
> 
> 
> --
> Prendi GRATIS l'email universale che... risparmia: http://www.email.it/f
> 
> Sponsor:
> Email.it Free (Internet) Access
> Prova il Nuovo Numero Unico valido per tutta Italia a tariffa locale!!!
> Email.it Free Access, dai più qualità alla tua navigazione
> Clicca qui: http://adv2.email.it/cgi-bin/foclick.cgi?mid=441&d=10-6
> 


-- 
Maarten Koopmans
Innovation manager  tel:   +31 30 2 305 324
Surfnet BV  fax:   +31 30 2 305 329
P.O.Box 19035   email: [EMAIL PROTECTED]
NL-3501 DA Utrecht  http://www.surfnet.nl
The netherlands

-- 
To unsubscribe from this list, please send an email to
[EMAIL PROTECTED] with "unsubscribe" in the 
subject, without the quotes.




[REBOL] Re: Function "LAUNCH" - Usage questions

2002-06-10 Thread [EMAIL PROTECTED]

Thank you (sigh!).

When a Rebol version will include a multiprocessing/multithreading
feature?! It is a very important feature in a programming language! True
multitasking! Python already does! Java already does!  And... how about
low level socket programming? Is Rebol an Internet programming language
or not?!

Bye!
Thank you for your answers!

-Alessandro-


===


>
> --- Gregg Irwin <[EMAIL PROTECTED]> wrote:
> > Hi Allesandro,
> >
> > <<
> > I was very interested to the function "launch" (I
> > didn't know it).
> >
> > But I didn't find enought documentation about it.
> > Can someone tell me more about launch refiniments?
> > (this function could
> > be used to simulate a multiprocessing system!).
> > >>
> >
> > Launch is fairly limited in practice because you
> > can't use it from within your scripts, only at the
> > console. It's handy, yes, but not for deployment
> > purposes. For that you need to have View/Pro or
> > /Command and use CALL or a native OS function.
>
> I thought 'launch could be used by a script if it was
> called directly from the REBOL command line, but was
> not usable (or predictable, maybe) in scripts
> themselves launched by other scripts, from the console
> prompt, or from view icons.
>
>
>
> __
> Do You Yahoo!?
> Yahoo! - Official partner of 2002 FIFA World Cup
> http://fifaworldcup.yahoo.com
> --
> To unsubscribe from this list, please send an email to
> [EMAIL PROTECTED] with "unsubscribe" in the
> subject, without the quotes.
>
>



Alessandro Manotti
Presidente dell'Associazione di volontariato O.N.L.U.S. "RIUSA"

Sito web: http://riusa.apritisesamo.net
  http://riusa.150m.com
email:[EMAIL PROTECTED]
mailing-list: [EMAIL PROTECTED]
Telefono: 347.63.43.231



--
Prendi GRATIS l'email universale che... risparmia: http://www.email.it/f

Sponsor:
Email.it Free (Internet) Access
Prova il Nuovo Numero Unico valido per tutta Italia a tariffa locale!!!
Email.it Free Access, dai più qualità alla tua navigazione
Clicca qui: http://adv2.email.it/cgi-bin/foclick.cgi?mid=441&d=10-6
--
To unsubscribe from this list, please send an email to
[EMAIL PROTECTED] with "unsubscribe" in the
subject, without the quotes.




[REBOL] Re: How to check function arguments? - Syntax REBOLution ...

2002-06-10 Thread Romano Paolo Tenca

You can read:

 http://www.rebolforces.com/~ladislav/argstake.html

---
Ciao
Romano

- Original Message -
From: "Christian Ensel" <[EMAIL PROTECTED]>
To: <[EMAIL PROTECTED]>
Sent: Sunday, June 09, 2002 11:44 PM
Subject: [REBOL] Re: How to check function arguments? - Syntax REBOLution ...


> Hello Gabriele,
>
> on Sunday, 09-Jun-02, 15:12:46, Gabriele Santilli wrote:
>
> > REBOL does not support variable number of arguments because of its
> > freeform syntax.
>
> As with all rules there seems to be an expection:
>
> The list of arguments to MAKE as specified by
>
> >> source make
> == make: native [
> "Constructs and returns a new value."
> type [any-type!] "The datatype or example value."
> spec [any-type!] "The attributes of the new value."
> ]
>
> says there are exactly two arguments TYPE and SPEC, which is true in the
case
> of
>
> >> make block! 5
> == []
>
> But that given I really can't explain why
>
> >> make function! []   ; two arguments, as suggested
> ** Script Error: Invalid argument: (missing value)
> ** Near: make function! []
>
> fails and why instead of
>
> >> make function! [[ ... ] [ ... ]]; two arguments
>
> - which one should consider to be what MAKE expects of us to do - we're all
> used to write
>
> >> make function! [ ... ] [ ... ]  ; three arguments
>
> obviously violating the specification of make ...
>
> As said before, I really can't explain this to me.
> Looks as if all ANY-FUNCTION!s are equal, but some NATIVE!s are more equal
...
>
> Any ideas, somebody?
>
> Regards,
> Christian
>
> --
> To unsubscribe from this list, please send an email to
> [EMAIL PROTECTED] with "unsubscribe" in the
> subject, without the quotes.
>

-- 
To unsubscribe from this list, please send an email to
[EMAIL PROTECTED] with "unsubscribe" in the 
subject, without the quotes.




[REBOL] Re: How to check function arguments? - Syntax REBOLution ...

2002-06-10 Thread Ladislav Mecir

Hi Christian and all,

my essay http://www.rebolforces.com/~ladislav/argstake.html describes how
Rebol functions take their arguments. If you want to see some parsing
example, have a look at the APPLY function in
http://www.rebolforces.com/~ladislav/highfun.r

-L

- Original Message -
From: "Christian Ensel"

Hello Gabriele,

on Sunday, 09-Jun-02, 15:12:46, Gabriele Santilli wrote:

> REBOL does not support variable number of arguments because of its
> freeform syntax.

As with all rules there seems to be an expection:

...snipped...

As said before, I really can't explain this to me.
Looks as if all ANY-FUNCTION!s are equal, but some NATIVE!s are more equal
...

Any ideas, somebody?

Regards,
Christian



-- 
To unsubscribe from this list, please send an email to
[EMAIL PROTECTED] with "unsubscribe" in the 
subject, without the quotes.