[REBOL] Re: RFC: Unofficial Rebol User List

2000-11-27 Thread Pete Wason

Chris wrote:
> 
> Hi,
> 
> After the recent questions on this list concerning lists of Rebol
> friendly ISPs and Rebol users I began to wonder how much interest
> there would be in an unofficial website covering these subjects.
> 
> If anyone here has visited the PureAmiga section of my website
> ( http://www.starforge.co.uk/pamiga/ ) they will be aware that I
> maintain a URL list and webring for the PureAmiga mailing list.
> With this as a basis I feel confident that I could create an online
> database of Rebol friendly ISPs and Rebol users and maybe even
> create a Rebol Users Webring if interest is sufficient.
> 
> What are your opinions on this (I'd like to know before I spend
> a week putting it all together only to find out that no-one is
> interested! ;))


All great ideas. Do it!

-- 
Pete Wason, Sr. Developer http://www.onlinemerchant.com/
SureFire Commerce, Inc.
70 Wells Avenue
Newton, MA 02459Rebol: It's good fer what ails ya, baby!
-- 
To unsubscribe from this list, please send an email to
[EMAIL PROTECTED] with "unsubscribe" in the 
subject, without the quotes.




[REBOL] Re: date/time subrtaction ?

2000-11-17 Thread David Hawley

I'm a bit confused about subtraction of date/time objects. Part of the problem is that 
there seem to be 3 types invloved here:
 time
 date
and what i'll call
 date/time

The latter is returned by now and behaves differently from a date! object although

  >> type? now
  == date!

The difference is reflected in the following:

  >> dt: now
  == 16-Nov-2000/21:36:31-8:00
  >> d: now/date
  == 16-Nov-2000
  >> type? d
  == date!
  >> type? dt
  == date!

Now add 10 seconds to each:

  >> dt + 0:00:10
  == 16-Nov-2000/21:36:41-8:00

  >> d + 0:00:10
  ** Script Error: Cannot use add on date! value.
  ** Where: d + 0:00:10

So d and dt are a bit different.

Now on to subtraction:

  >> d2: dt + 1; add 1 day
  == 17-Nov-2000/21:36:31-8:00
  >> d2 - dt
  == 1 ; OK, I can live with that

but:
  >> d2: dt + 0:0:10   ; add 10 seconds
  == 16-Nov-2000/21:36:41-8:00
  >> d2 - d
  == 0

I guess I sort of expected to see d2 - d == 0:0:10

Now back to the difference between date and date/time.

It is often nice to figure out date/times based on seconds from nidnight. Is there a 
better method than the following:

  midnight: now/date
  midnight-and-3-hours: to-date rejoin [ n "/" v ]

I suppose that this might make sense:

  midnight: to-date rejoin [ now/date "/" 0:0 ]
  

--
David L. Hawley   D.L. Hawley and Associates1.503.274.2242
Software Engineer  [EMAIL PROTECTED]

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




[REBOL] Re: objects without overhead Re:

2000-10-24 Thread Ladislav Mecir

Hi Rishi,

as an inspiration, I am sending you my old class.r

Rebol [
Title: "Class"
File: %class.r
Author: "Ladislav Mecir"
Email: [EMAIL PROTECTED]
Purpose: {
A class hierarchy in Rebol
}
Category: [Advanced]
]

throw-on-error: func [[throw] blk [block!] /local result] [
if error? set/any 'blk try blk [
throw :blk
]
get/any 'blk
]

; method creator
meth: func [
{defines a user method with given spec and body}
[catch]
spec [block!]
body [block!]
/local result
] [
; try the consistence
throw-on-error [
func spec copy/deep body
]
func [self] reduce [
:func :spec 'bind/copy :body :in 'self  to lit-word! 'self
]
]

; method calling dialect:

!: func [
{method caller}
[catch]
message [block!] {
The structure of a message is as follows:

method-path
object
additional arguments according to the method spec
}
/local method-path method-name self position cls result
] [
method-path: throw-on-error [first :message]
if not path? get/any 'method-path [
method-path: throw-on-error [
to path! get/any 'method-path
]
]
method-name: first :method-path
position: next message
result: throw-on-error [do/next position]
set/any [self position] :result
method-name: throw-on-error [
in get get in :self 'class method-name
]
if not method-name [
throw make error! {no such method}
]
method-name: get method-name
method-name: method-name self
change :method-path 'method-name
do compose [(:method-path) (position)]
]

; sample class

sample-class: make object! [
; a method returning the object type
type: meth [] [
class
]
; a static value - counter
counter: 0
; a counting method
count: meth [] [
counter: counter + 1
]
reftest: meth [/ref] [
either ref [
print "Ref"
] [
print "No ref"
]
]
num: meth [] [number]
addnum: meth [other] [(! [num other]) + (! [num self])]
]

; sample objects of a sample-class

sample-object1: make object! [
class: 'sample-class
number: ! [count self]
]

probe sample-object1

sample-object2: make sample-object1 [
number: ! [count self]
]

probe sample-object2

; sample method calls
probe ! [type sample-object1]
probe ! [type sample-object2]
! [reftest sample-object2]
! [reftest/ref sample-object2]
probe ! [num sample-object1]
probe ! [num sample-object2]
probe ! [addnum sample-object1 sample-object2]
probe ! [addnum sample-object2 sample-object1]

Regards
Ladislav

> Well...I thought about this a bit and I THINK I found an elegant solution.
So I guess I'll respond to my own question...
>
> I think the solution to this problem is inner objects. Here is an example:
>
> myobject: make object! [
> -  function1: func[][..]
> -  function2: func[][..]
> -  .
> -  .
> -  make: func[var1 var2 var3][
> -return make object! [
> -  instancevar1: var1
> -  instancevar2: var2
> -  instancevar3: var3
> -
> -  instancefunc1: function1 ;copies a reference to function1 above...
> -  instancefunc2: function2
> -]
> -  ]
> ]
>
> ;;;create instance of object
> coolobj: myobject/make
> coolobj/instancfunc1   ; all instances access same function! less overhead
if many objects!!!
> .
> .
> .
> I am not sure if this would work since I have never tested it (yet). The
questions in my mind are:
> 1. are functions copied by reference or value? if by value, this would not
solve my problem
> 2. do inner objects have access to outer object words? for example, can
'instancefunc1 access 'function1 as shown above?
>
> I hope this works. If it does, it would be a very simple but elegant
solution to my problem. It would be even more elegent when modules come
around so I can keep all private words in context of myobject rather than
the actual object returned...making code very clear.
>
> Rishi
>
>
> Previously, you ([EMAIL PROTECTED]) wrote:
> > I am working on a program which requires about 1000 or so instances of
objects. It doesn't have to be OO but I like the design better that way. I
am using a function as constructor like the following example (not real
code..):
> >
> > ;I used dashes to keep formatting intact (hopefully this works)
> >
> > make_myobject: func[var1 var2 var3][
> > --return make object!

> > instancevar1: var1
> > instancevar2: var2
> > instancevar3: var3
> >
> > instancefunc1: func[][...]
> > .
> > .
> > .
> > -]
> > ]
> >
> >
> > The thing I don't like about this solution is that every instance of
this object has duplicate copies of the functions (As far as I know...please
correct me if I am wrong). This seems like a waste to me - especially if the
object has 50 or so functions. Is there any OO way in Rebol to create
multiple instances o

[REBOL] Re: data storage: object! vs. XML

2000-10-23 Thread Ryan C. Christiansen

> > since the XML must be parsed into objects anyway.
> > 
> 
> Is this a requirement of your app?
> 
> I've done quite a bit of work using XML as the external data format, just
> reading and parsing the XML and then using a library of functions/objects
> to traverse the resulting block structure, without actually converting the
> XML to objects.

Not fully decided on this yet. I imagine a parsing engine which would 
create the objects from the XML, creating reusable code in RAM 
instead of re-parsing the XML again-and-again, depending on my 
needs. Parsing the XML into objects would increase flexibility, no?

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




[REBOL] Re: Enhancement Request - /Integer and /Fraction Refinements for integers and decimals

2000-10-22 Thread Christian Ensel

Hello Andrew,

> And the equivalent for money! could be called /Dollars and /Cents.

Isn't this a bit america-centristric? I'd prefer /Mark and /Pfennig,
or /Euro and /Cent.
And Gabriele would probably prefer /Lira.
Just joking ...


Christian
[EMAIL PROTECTED]

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




[REBOL] Re: Expression evaluator (an example of parsing blocks)

2000-10-21 Thread Rishi Oswal

I think that is a great feature. Operator precedence always confused me. In Rebol, it 
is done
left-right...the way it should have been done in other languages..

rishi
- Original Message -
From: <[EMAIL PROTECTED]>
To: <[EMAIL PROTECTED]>
Sent: Saturday, October 14, 2000 4:12 AM
Subject: [REBOL] Expression evaluator (an example of parsing blocks)


> Hi all!
>
> Have you been sometimes annoyed by tha fact REBOL does not support
> operator precedence? Here's the answer:
>
> >> a: 2 b: 4 c: 3
> == 3
> >> eval [b ^ 2 - 4 * a * c]
> == -8
>
> The magic trick is:
>
> >> eval/translate [b ^ 2 - 4 * a * c]
> == [subtract power b 2 multiply multiply 4 a c]
>
> Other examples:
>
> >> eval/translate [1 / k !]
> == [divide 1 factorial k]
> >> eval/translate [a * - b]
> == [multiply a negate b]
> >> eval/translate [e ^ (i / h * (p * x - E * t))]
> == [power e multiply divide i h subtract multiply p x multiply E t]
>
> NOTE: it still needs improvements, such as error handling. They
> are "left to the reader as an exercise". :-)
>
> Enjoy!,
> Gabriele.
> --
> Gabriele Santilli <[EMAIL PROTECTED]> - Amigan - REBOL programmer
> Amiga Group Italia sez. L'Aquila -- http://www.amyresource.it/AGI/
>
> REBOL [
> Title: "Expression evaluator"
> Author: "Gabriele Santilli <[EMAIL PROTECTED]>"
> Comment: {
> Evaluates expressions taking usual operator precedence
> into account.
> 1. (...)
> 2. - [negation], ! [factorial]
> 3. ^ [power]
> 4. *, /
> 5. +, - [subtraction]
> }
> ]
>
> ; A simple iterative implementation; returns 1 for negative
> ; numbers. FEEL FREE TO IMPROVE THIS!
> factorial: func [n [integer!] /local res] [
> if n < 2 [return 1]
> res: 1
> ; should avoid doing the loop for i = 1...
> repeat i n [res: res * i]
> ]
>
> expression-parser: make object! [
> slash: to-lit-word first [ / ]
> expr-val:
> expr-op: none
> expression: [
> term (expr-val: term-val)
> any [
> ['+ (expr-op: 'add) | '- (expr-op: 'subtract)]
> term (expr-val: compose [(expr-op) (expr-val) (term-val)])
> ]
> ]
> term-val:
> term-op: none
> term: [
> pow (term-val: power-val)
> any [
> ['* (term-op: 'multiply) | slash (term-op: 'divide)]
> pow (term-val: compose [(term-op) (term-val) (power-val)])
> ]
> ]
> power-val: none
> pow: [
> unary (power-val: unary-val)
> opt ['^ unary (power-val: compose [power (power-val) (unary-val)])]
> ]
> unary-val:
> pre-uop:
> post-uop: none
> unary: [
> (post-uop: pre-uop: [])
> opt ['- (pre-uop: 'negate)]
> primary
> opt ['! (post-uop: 'factorial)]
> (unary-val: compose [(post-uop) (pre-uop) (prim-val)])
> ]
> prim-val: none
> ; WARNING: uses recursion for parens.
> primary: [
> set prim-val [number! | word!]
>   | set prim-val paren! (prim-val: translate to-block :prim-val)
> ]
> translate: func [expr [block!] /local res recursion] [
> ; to allow recursive calling, we need to preserve our state
> recursion: reduce [
> :expr-val :expr-op :term-val :term-op :power-val :unary-val
> :pre-uop :post-uop :prim-val
> ]
> res: if parse expr expression [expr-val]
> set [
> expr-val expr-op term-val term-op power-val unary-val
> pre-uop post-uop prim-val
> ] recursion
> res
> ]
> set 'eval func [expr [block!] /translate] [
> expr: self/translate expr
> either translate [expr] [do expr]
> ]
> ]
>

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




[REBOL] Re: Expression evaluator (an example of parsing blocks)

2000-10-20 Thread Gabriele Santilli

Hello Larry!

On 20-Ott-00, you wrote:

 LP> I have one quick question. Could you comment on why 'self is
 LP> required in the line

 LP>expr: self/translate expr

Because EVAL has a refinement called /TRANSLATE, so the word
"translate" inside EVAL refers to the refinement (as you can see
in the EITHER TRANSLATE... line).

It would have been wiser to just choose two different names, but I
thought that that way it can be useful to illustrate how to deal
with such a situation.

Regards,
Gabriele.
-- 
Gabriele Santilli <[EMAIL PROTECTED]> - Amigan - REBOL programmer
Amiga Group Italia sez. L'Aquila -- http://www.amyresource.it/AGI/

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




[REBOL] Re: various progress bars styles ...

2000-10-20 Thread Gabriele Santilli

Hello Petr!

On 19-Ott-00, you wrote:

 PK> -- Binary/unsupported file stripped by Listar --
 PK> -- Type: text/x-rebol
 PK> -- File: progress-bars.r

This is SELMA's revenge. ;^)

Regards,
Gabriele.
-- 
Gabriele Santilli <[EMAIL PROTECTED]> - Amigan - REBOL programmer
Amiga Group Italia sez. L'Aquila -- http://www.amyresource.it/AGI/

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




[REBOL] Re: How to get interval in tenth of sec ?

2000-10-20 Thread CRS - Psy Sel/SPO, COUSSEMENT Christophe, CPN

Thanks all for the replies I got.

it's quite unusal to post a reply to self but I think I got the solution to
the earlier mention problem: just use the 'wait function with the right
interval.

 forever [wait 0,1 print now/time]
9:16:16
9:16:16
9:16:16
9:16:16
9:16:17
9:16:17
9:16:17
9:16:17
9:16:17
9:16:17
9:16:17
9:16:17
9:16:17
9:16:17
9:16:18
9:16:18

As there are 10 calls/sec, the result is what I searched for.
Now it's easy to build an interval func.

Hope this helps someone !

Kind regards, ;-)

Christophe




> -Original Message-
> From: [EMAIL PROTECTED] [SMTP:[EMAIL PROTECTED]]
> Sent: woensdag 18 oktober 2000 15:47
> To:   [EMAIL PROTECTED]
> Subject:  [REBOL] How to get interval in tenth of sec ?
> 
> 
> Hi list:
> 
> In the application i'm now developping, I need a mean to time a response
> interval to an item.
> I could use the classical :
> 
> start-time: now/time
> delta-time: now/time - start-time
> 
> but this produce a interval in seconds...
> 
> I should need an interval in tenth of second !
> 
> Does REBOL/Core 2.3.0.3.1 support any function like CPU ( ) in some other
> language ?
> 
> Does anybody have any solution to this problem ?
> 
> Thanks in advance !!!
> 
> ;-) Christophe Coussement
-- 
To unsubscribe from this list, please send an email to
[EMAIL PROTECTED] with "unsubscribe" in the 
subject, without the quotes.




[REBOL] Re: objects without overhead

2000-10-19 Thread Ole Friis

Hi , 17-Oct-2000 you wrote:

>The thing I don't like about this solution is that every instance of
>this object has duplicate copies of the functions
[...]

Just define a "parent" object containing all of your functions, then create
your "used" objects by cloning this object. The "used" objects then won't
include the functions, but as the "parent" object is the prototype for the
"used" objects, then you can still use your functions through these objects.

Example (not tested):

parent: make object! [
  func1: func [a] [print a]
  func2: func [a b] [print [a b]]
]

child1: make parent [
  var1: "This is a variable in a child object"
  c-func1: func [a] [func1 join a var1]
]

child2: make parent [
  var2: "This is another variable in another child object"
  c-func2: func [a b] [func2 var2 join a b]
]

Well, I guess you get the idea.

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




[REBOL] Re: FTP and Absolute Directories

2000-10-19 Thread Gabriele Santilli

[EMAIL PROTECTED] wrote:

> Some time ago I posted a question asking how I could ftp to a server and go to
> a directory that was not below my home directory.

Did you try ftp://user:pass@site/../../ ?

Regards,
   Gabriele.
-- 
Gabriele Santilli <[EMAIL PROTECTED]> - Amigan - REBOL programmer
Amiga Group Italia sez. L'Aquila -- http://www.amyresource.it/AGI/
-- 
To unsubscribe from this list, please send an email to
[EMAIL PROTECTED] with "unsubscribe" in the 
subject, without the quotes.




[REBOL] Re: New to the PC (fwd)

2000-10-19 Thread list



-- Forwarded message --
Date: Thu, 19 Oct 2000 03:31:01 +0200
From: Fantam <[EMAIL PROTECTED]>
To: "[EMAIL PROTECTED]" <[EMAIL PROTECTED]>
Subject: Re: [REBOL] New to the PC

I use Textpad (shareware). It does syntax highlighting for Rebol (you have to
install a syntax plug-in someone created and posted on this list a while ago).
You can d/l it at http://www.textpad.com/

> Hello All:

> I've just got myself a windows machine.  My Amiga has had problems
> (Simm sockets are messed up), so I was hoping someone would know of  a
> good editor to use on Win95 (preferably free, as I hope to get my
> Amiga back up soon).

> Thanks to any and all that help!

> Regards,
> David C.

> P.S. - Linux isn't an option, as my Bios is flooky on the pc.

-- 
mailto:[EMAIL PROTECTED]



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




[REBOL] Re: List Processing Changes

2000-10-19 Thread Andrew Martin

To reduce fragmentation of the Rebol Community, I've deleted the eGroups
lists:
[EMAIL PROTECTED]
[EMAIL PROTECTED]
[EMAIL PROTECTED]
[EMAIL PROTECTED]
Thank you for joining these lists. Note that you don't have to
unsubscribe.

Please note that these other lists:
[EMAIL PROTECTED]- Discussing Rebol Defects list.
[EMAIL PROTECTED]  - Discussing Web Dialects in Rebol
are still in existence.

Thank you.

Andrew Martin
ICQ: 26227169
http://members.nbci.com/AndrewMartin/
-><-


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




[REBOL] Re: REBOL FOR DUMMIES! (fwd)

2000-10-19 Thread list



-- Forwarded message --
Date: Wed, 18 Oct 2000 18:01:27 -0400 (EDT)
From: Brian C. Robinson <[EMAIL PROTECTED]>
To: [EMAIL PROTECTED]
Subject: Re: [REBOL] REBOL FOR DUMMIES!

On Wed, 18 Oct 2000 [EMAIL PROTECTED] wrote:

> REBOL FOR DUMMIES by Ralph Roberts (five-star general in the
> REBOLution!) is now being shipped by REBOL Press Online -- weeks ahead
> of availability from Amazon, B&N, or the corner bookstore.
> 
I'm curious why the second book on the REBOL language is in the
For Dummies line?  I don't think many developers take these books
seriously regardless of their content.

"Why is any object we don't understand always called a thing?" - Bones
| JA2 FAQ: come.to/ja2faq | JADG Mailing List: www.onelist.com/group/jadg |

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




[REBOL] Re: How to get interval in tenth of sec ? Re: (fwd)

2000-10-19 Thread list



-- Forwarded message --
Date: Thu, 19 Oct 2000 08:58:10 +0200
From: "CRS - Psy Sel/SPO, COUSSEMENT Christophe, CPN" <[EMAIL PROTECTED]>
To: [EMAIL PROTECTED]
Subject: RE: [REBOL] How to get interval in tenth of sec ? Re:

Larry,

Thanks you for the answer, I will go for a Java or Javascript solution for
now.

I hope RT will release the enhancement soon.

Capitaine C. COUSSEMENT 
 Forces Armées Belges 
 Centre de Recrutement et de Sélection 
 Section de Recherche Psychologique
 Project Officer Computer Aided Testing
 Bruynstraat 
 B-1120 BRUSSELS (N-O-H) 
 BELGIUM 
 *** 
 e-mail:  [EMAIL PROTECTED] 
 *** 


> -Original Message-
> From: [EMAIL PROTECTED] [SMTP:[EMAIL PROTECTED]]
> Sent: woensdag 18 oktober 2000 19:18
> To:   [EMAIL PROTECTED]
> Subject:  [REBOL] How to get interval in tenth of sec ? Re:
> 
> Hi Cristophe,
> 
> The short answer is NO.
> 
> 
> Currently REBOL/Core/View can only return the system clock in seconds.
> With
> Command, you can access a C runtime DLL to get better resolution. Better
> time resolution has been requested on this mail-list, but I don't know if
> it
> is on the RT "to do" list.
> 
> -Larry
> 
> - Original Message -
> From: <[EMAIL PROTECTED]>
> To: <[EMAIL PROTECTED]>
> Sent: Wednesday, October 18, 2000 6:46 AM
> Subject: [REBOL] How to get interval in tenth of sec ?
> 
> 
> >
> > Hi list:
> >
> > In the application i'm now developping, I need a mean to time a response
> > interval to an item.
> > I could use the classical :
> >
> > start-time: now/time
> > delta-time: now/time - start-time
> >
> > but this produce a interval in seconds...
> >
> > I should need an interval in tenth of second !
> >
> > Does REBOL/Core 2.3.0.3.1 support any function like CPU ( ) in some
> other
> > language ?
> >
> > Does anybody have any solution to this problem ?
> >
> > Thanks in advance !!!
> >
> > ;-) Christophe Coussement
> >

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




[REBOL] Re: Block Creation Re:

2000-10-19 Thread Carl Read

Thanks for all the replies on this everyone - I'm a little the wiser
now.

It was in a function I noticed the difference and I can see how it'd
be useful to be able to create a new block with the first call of a
function while having the subsequent calls not clear the block's
contents.

This is what I was actually trying to do...

block: [[[]]]

(for inserting stuff into later), and while the following works as I
wanted...

block: to-block "[[]]"

I notice that this doesn't...

block: to-block [[[]]]

Because, I assume, the inner blocks are not created anew?

Carl Read.

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




[REBOL] Re: Bang the REBOL Drum Re:

2000-10-18 Thread alanwall

Hello [EMAIL PROTECTED]

On 17-Oct-00, [EMAIL PROTECTED] wrote:
> Hi Paul,
> 
> For a quick intro and some handy shell scripts, you can point them to
> Jeff's recent article at
> http://www.unixreview.com/development/articles/0009ds.shtml
> 
> 
> I see QNX are going to be at ACE2K http://www.ace2k.net . I'll be running
> a stall there and banging the REBOL drum too. Melbourne REBOLs, why not
> pop in and say hello? I'll be happy to answer any QNX'rs questions about
> REBOL at the exhibition too.
> 
> 
I just installed QNX RTP on my windows box and am having a hard time
installing Rebol.I'm new to unix so not sure of the command line to
install.Had a unix book but lost during my last move :( Thanks!
Regards
-- 
Money is truthful. If a man speaks of his honour, make him pay cash.
-- Unknown
JMS Trustee http://www.jms.org
HP=http://www.sonic.net/~alanwall/
First computer solar powered vic-20
AmigaQNX-notAmigaNG=no good
computers for people not suits
sent via Yam ver2 on AmigaForever ver3
Be a Rebel get [EMAIL PROTECTED]
UIN#=9391028




[REBOL] Re: Bang the REBOL Drum Re:

2000-10-18 Thread blazs

Hello Allen

On 18-Oct-00, [EMAIL PROTECTED] wrote:
> Hi Paul,
> 
> For a quick intro and some handy shell scripts, you can point them
> to Jeff's recent article at
> http://www.unixreview.com/development/articles/0009ds.shtml
> 
> 
> I see QNX are going to be at ACE2K http://www.ace2k.net . I'll be
> running a stall there and banging the REBOL drum too. Melbourne
> REBOLs, why not pop in and say hello? I'll be happy to answer any
> QNX'rs questions about REBOL at the exhibition too.

I'll be there as well at the CAUS (Canberra Amiga Users Society) stand
=).
> 
> 
> Cheers,
> 
> Allen K
> Rebol Forces..
> 
> 
Catch ya at the show :).
Blaz
CAUS




[REBOL] FW: Mathematical Operations in REBOL Re:

2000-10-17 Thread rebol

Hi Doug,

go to http://www.rebol.org/math/index.html and pick up a copy of Eric Long's
decimal.r. He writes:
Purpose: Contains functions for the manipulation of decimal values, packaged
into the REAL object. These provide full support for native binary
floating-point file IO, compatible with C,
   FORTRAN, etc. REBOL decimal and money values may also be saved and
loaded with no roundoff error. This package is necessary because the standard
REBOL representation of
   decimal values may round off one or two significant digits, and the
rounding of money values is an even greater source of error. This script
contains two more objects, IEEE and
   EMPIRICAL, which provide several functions useful for exploring how
decimal values are represented as double floating point numbers, and for
testing the inexactness of the REBOL
   comparison functions.

Direct download link:
http://www.rebol.org/math/decimal.r

This may be exactly what your friend is looking for.

Elan

[EMAIL PROTECTED] wrote:

> A colleague forwarded this set of comments/questions to me
> and I am forwarding to the REBOL list...
>
> > When performing mathematical calculations,
> > I've come across some interesting results, particularly with the modular
> > division ( // ) operation.
> >
> > For example, if I perform
> > >> e: 1.22 // 0.01
> > in REBOL, e will equal 9.92E-3.
> > Although the answer is 0.01, or 1E-2, I can type
> > >> e = 0.01 and true
> >
> > will be returned.
> >
> > While accepting 9.92E-3 is sufficient in most cases,
> > I may be in trouble if I wanted to convert the value of e to a string, for
> > example.
> > Is there anyway to make this calculation return display 1E-2 exactly?
> >
> > I am using REBOL/Core Version 2.3.0.3.1.
> >
> > Thanx,
> > -C. Hampton




[REBOL] Re: List names

2000-10-15 Thread carl

On 15-Oct-00, Andrew Martin wrote:

> Rishi, please forgive me for editing your writing, but I found it
> difficult to read.

> Rishi wrote:
>> In my mind, [EMAIL PROTECTED] is a place where the only
>> things discussed are programming tips, help, solutions, etc.

> That sounds good. I'd like the name of the rebol-developers@egroups
> list to be better though. How about these:
>[EMAIL PROTECTED]
>[EMAIL PROTECTED]
>[EMAIL PROTECTED]
>[EMAIL PROTECTED]
>[EMAIL PROTECTED]- I quite like this one.
>[EMAIL PROTECTED]
>[EMAIL PROTECTED] - Sounds more like a
> consultancy.
>[Your suggestion here.]

I'm coming in a bit late to this discussion it seems, but I take it
the above are alternative suggestions to [EMAIL PROTECTED] ?  If
so, then how about Rebol-General as I feel the other Lists (such as
Core and View) are where people are more likely to go for help.  

>The name has to instantly say to the person who's reading about
> it and who's thinking, 'what's it all about?' [EMAIL PROTECTED]
> doesn't do it (neither did [EMAIL PROTECTED] either), but it does serve
> as a name for the [EMAIL PROTECTED] replacement.
>Once we've decided on a better name, I'll tranfer people's email
> from this list, [EMAIL PROTECTED], to the new list
> [EMAIL PROTECTED]

>> Some people were complaining that there was too much advocacy in
>> main list and wanted a separate list just for development
>> discussions.

> As I wrote before, [EMAIL PROTECTED] doesn't sound like a
> list for that purpose, sounding instead like a name for a government
> pressure group. How about these:
>[EMAIL PROTECTED] - Sounds more like the one
> above!
>[EMAIL PROTECTED]
>[EMAIL PROTECTED]- I quite like this one!
>[EMAIL PROTECTED]
>[Your suggestion here.]

Well, I'd suggest Rebol-General would cover this too.

>> I don't think rebol-core and rebol-view are good subdivisions.
>> Everything
>> that applies to rebol/core applies to rebol/view. rebol/core is a
>> subset. I also think everyone in rebol/command would be interested
>> in rebol/view since that will probably end up being subset in
>> future.

> I think you're quite right. This also agree with pekr, I believe. I,
> too, would like to be able to have a Rebol/View with /Command
> incorporated.

I personally favour them staying seperate as, if nothing else, it
helps to break up the emails you receive into some sort of order. 
It's only new users who wouldn't know where Core ends and View
begins, and the New list's for them and will no doubt cover all
topics.  It's not as though we have to join one or other of the
lists.  Those interested in View and Command will most certainly also
join Core, though there may be some who're only interested in Core
and some only in View and Core.  I didn't join Command for instance
as I don't see myself getting it any time soon.

Also, regarding Rebol-Defects ...  This sounds more like it's related
to the design of the language than just bugs, while I believe the
list's main focus is for creating a bug-list, isn't it?  If so, then
Rebol-Bugs makes more sense to me.

> Ryan wrote:
>> I think just Core, View, and this one (List) is probably optimum
>> from my
>> perspective, but the others lists didn't seem unreasonable. Myself,
>> I am no longer very interested in Core discussions. I may even drop
>> this one, and just subscribe to View. I like the List, its just a
>> lot emails to deal with.

I feel the same way, and I'd been thinking there should be at least a
seperate newbies' list before the eGroups suggestion was made.  The
old list would've been a bit daunting to someone who'd never
programmed before.

> Rishi wrote:
>> Personally, I'd rather just have one rebol list (like this one)
>> where we discuss everything rebol related. I just don't want
>> fragmentation and have to jump around to a bunch of different
>> lists...

> I could alter the description of:
>[EMAIL PROTECTED]
>[EMAIL PROTECTED]
>Rebol-Command@egroups
>to emphasize the specific nature of these lists, and to be more
> an announcement list, for when new versions of these producets are
> available from Rebol, and for specific question and answers solely
> about those products.
>That way, Ryan can subscribe to [EMAIL PROTECTED] and drop
> the others, as that it is his declared intent.

> Andrew Martin
> Rebol brainstorming...
> ICQ: 26227169
> http://members.nbci.com/AndrewMartin/
> -><-

Finally, thanks for running with this Andrew.  It's appreciated. 
Also, I know someone who finally joined a REBOL list when they heard
the New one existed, so they may help to increase the number of REBOL
users too.

Carl Read.





[REBOL] Re: Rebol Bug-List Re:

2000-10-15 Thread g . santilli

Hello [EMAIL PROTECTED]!

On 13-Ott-00, you wrote:

 j> Does the /New /Fixing /Fixed trichotomy imply that a bug
 j> report would migrate between directories as its status
 j> changes? This would imply that I couldn't, for example,
 j> bookmark a bug report and return periodically (or via a REBOL
 j> 'bot ;-) to check for changes in status.

Moving the files across directories is not a good idea IMHO.

 j> Would it be simpler to have a "status" datum for each report,
 j> and have a variety of list/link files to categorize them in
 j> various useful ways (platform, status, who reported, version
 j> in which it appeared, version in which it was
 j> exterminated...)?

I think so, too.

Regards,
Gabriele.
-- 
Gabriele Santilli <[EMAIL PROTECTED]> - Amigan - REBOL programmer
Amiga Group Italia sez. L'Aquila -- http://www.amyresource.it/AGI/




[REBOL] Re Email setup question

2000-10-12 Thread RobertVa



If you don't have 'REBOL Extended Definitions' 
loaded do following
 
    do %rebol.r
 
when functions are loaded do:
 
>>set-user
 
and answer questions asked
 
 
Robert

  - Original Message - 
  To: [EMAIL PROTECTED] 
  Cc: From: [EMAIL PROTECTED] 
  Sent: Thursday, October 12, 2000 4:37 
  PM
  Subject: [REBOL] Email setup 
  question
  Can someone tell me why I get this error when trying to 
  send mail through aCGI form?Sending Email to [EMAIL PROTECTED] ** User 
  Error: No network serverfor smtp is specified. ** Where: smtp-port: open 
  [scheme: 'smtp] if email?email works from rebol directly though. I 
  deleted the "User.r" to force anew setup, no go. Could it be that it fails 
  because I typed in an IPaddress instead of a resolved SMTP 
  name?Best regardsSharriff Ainamed.iq 
  information & quality in healthcare AG
  
  

  
  
  
  
  Link is external to the Privacyx.com 
  System


[REBOL] Re: [REBOL Helpdesk] assigned #4659

2000-10-11 Thread lmecir

Hi Bo,

Compare:

Example #1:
a: [1 2]
remove back tail a
b: skip a 2
index? b

== 2

Example #2:
a: [1 2]
b: skip a 2
remove back tail a
index? b

** Script Error: Out of range or past end.
** Where: index? b

>From that I am concluding, That Rebol behaviour is inconsistent, because
both cases should yield the same result. My suggestion is as follows:

old-index?: :index?
index?: function [
{Returns the index number of the current position in the series.}
series [series! port!]
] [result] [
if error? result: try [old-index? :series] [result: old-index? series:
tail :series]
result
]

Now the result of Example#2:

== 2

Andrew could enhance Rebol patches, I think.

Regards
Ladislav

>
> Ladislav,
>
> Do you see this as being a bug?  If so, why?  Also, what behavior
> would you rather have occur?
>
> Awaiting your answer!
>
> REBOL Support
> --
>







[REBOL] Re: View Panel GUI Contest

2000-10-08 Thread kolla

On Sun, 8 Oct 2000 [EMAIL PROTECTED] wrote:

> Can the REBOL/View Panel be more modern in graphical design but remain just
> as functional and efficient?

Heh great! Nice to see yet another GUI fall into the hands of überkool 
graphical designers with no clue on HCI whatsoever.

Cheers!


-- kolla, whatever happened to KISS? Oh, it doesnt sell! :)




[REBOL] Re: New REBOL/Core Manual Re:(3)

2000-10-08 Thread carl

On 08-Oct-00, [EMAIL PROTECTED] wrote:

>> At 09:29 PM 10/5/00 -0400, you wrote:
>>> On Mon, 2 Oct 2000 [EMAIL PROTECTED] wrote:
>>> 
 The new REBOL/Core 2.3 Manual is now available from
>> www.REBOL.com.

> What's the URL?  Looked but couldn't see it in the
> documentation section.

http://www.rebol.com/core.pdf

The link's on the Developers' page.  And "HTML coming soon..."

Carl Read.

> --
> Graham Chiu




[REBOL] Re: debug help Re:(2)

2000-10-07 Thread g . santilli

Hello [EMAIL PROTECTED]!

On 07-Ott-00, you wrote:

 r> Has anybody ran an index.r as a CGI? If not, can someone try
 r> to run an index.r as a CGI on thier server? Here is the one I
 r> am using.

[...]

Try adding a Content-Length header. This should make the server
happier, too. :-)

Regards,
Gabriele.
-- 
Gabriele Santilli <[EMAIL PROTECTED]> - Amigan - REBOL programmer
Amiga Group Italia sez. L'Aquila -- http://www.amyresource.it/AGI/




[REBOL] Re: Rebol web servers Re:

2000-10-07 Thread g . santilli

Hello [EMAIL PROTECTED]!

On 06-Ott-00, you wrote:

 j>  Certainly you could add mime types and all sorts of
 j>  stuff. There's also (Ingo Hohmann's) YaRWeS (Yet another
 j> rebol web
 j>  server -- did I get that right?) that had a bunch more

That was mine. I was in the process of rewriting it, but ran short
of time, and decided to drop it when I saw REBOL/Apache. Now that
REBOL/Apache seems to have vanished, a REBOL webserver could be
useful again...

...unfortunately I'm too busy right now...

Regards,
Gabriele.
-- 
Gabriele Santilli <[EMAIL PROTECTED]> - Amigan - REBOL programmer
Amiga Group Italia sez. L'Aquila -- http://www.amyresource.it/AGI/




[REBOL] Re: New REBOL/Core Manual Re:(2)

2000-10-06 Thread carl

Cool - paper is good.

I've the little "REBOL Core Guides" and it's often the first place I
look when trying to remember the name of a native word or some such.

And how soon after View leaves Beta is the View/VID Guide to appear? 
Same
day?  Same week?  ...? (;

On 07-Oct-00, [EMAIL PROTECTED] wrote:

> Yes, we're looking into this and have found a printer that will do
> the job for a pretty low price. We'll keep the margin low as well
> and get it offered in the very near future.

> Dan

>> Is there any chance that this manual will be published in
>> paper form? If so I'm ready to buy it. If you need a good printer
>> that can do very short runs at a good price let me know. I happened
>> across a company that can do runs as low as 50 for quite a
>> reasonable price. If this is something you'd like to look into let
>> me know and I'll send you the information.




[REBOL] Bug? Same? on recursive blocks crashes Rebol Re:

2000-10-06 Thread joel . neely

Unaccustomed as I am to speaking in public... ;-)

[EMAIL PROTECTED] wrote:
> 
> Larry wrote:
> > Here is a related fun puzzle ;-)
> >
> > >> b: [1 2]
> > == [1 2]
> > >> b/2: b
> > == [1 [...]]
> 
> And what happens when:
> same? b b/2
> is done? This:
> 
> REBOL caused a stack fault in module REBOL.EXE at 015f:00435703.
> Registers:
> EAX=00c04838 CS=015f EIP=00435703 EFLGS=00010297
> EBX=0073db2f SS=0167 ESP=005a2000 EBP=005a202c
> ECX=0013 DS=0167 ESI=00c04838 FS=4387
> EDX=002f ES=0167 EDI=00c04838 GS=
> Bytes at CS:EIP:
> 56 57 8b 70 08 8b 40 04 c1 e6 04 03 70 08 8b 44
> Stack dump:
> 004355b4 00c04838 00c04838  00c04838 00c04838 0073db2f 
>    005a2074 0043574a 00c04838 00c04838 
> 
> Is this a bug? I've send it to feedback, just in case.
> 

Part of my definition of "high-level language" is the clause, "and if
you do something it doesn't like (regardless of how dumb or obscure it
MIGHT be), it won't blow up in your face".

By that definition, at least, this is a bug.

Nicht Wahr?

-jn-




[REBOL] Bug? Same? on recursive blocks crashes Rebol Re:

2000-10-06 Thread Petr . Krenzelok



[EMAIL PROTECTED] wrote:

> Larry wrote:
> > Here is a related fun puzzle ;-)
> >
> > >> b: [1 2]
> > == [1 2]
> > >> b/2: b
> > == [1 [...]]
>
> And what happens when:
> same? b b/2
> is done? This:

I just wonder, when if ever will such bugs be resolved? They are so
essential. It seems to me that rebol's aproach "everything's-a-reference"
gets pretty complicated sometimes and that it's hard to keep concepts clean
sometimes. It's strange to see notes as Elan's in his book about 2.2 and
above unstable behavior of extended contexts. I am just curious if GC bugs
reported were resolved 

... still missing bug database presence on some place ...

-pekr-

>
>
> REBOL caused a stack fault in module REBOL.EXE at 015f:00435703.
> Registers:
> EAX=00c04838 CS=015f EIP=00435703 EFLGS=00010297
> EBX=0073db2f SS=0167 ESP=005a2000 EBP=005a202c
> ECX=0013 DS=0167 ESI=00c04838 FS=4387
> EDX=002f ES=0167 EDI=00c04838 GS=
> Bytes at CS:EIP:
> 56 57 8b 70 08 8b 40 04 c1 e6 04 03 70 08 8b 44
> Stack dump:
> 004355b4 00c04838 00c04838  00c04838 00c04838 0073db2f 
>    005a2074 0043574a 00c04838 00c04838 
>
> Is this a bug? I've send it to feedback, just in case.
>
> Andrew Martin
> ICQ: 26227169
> http://members.nbci.com/AndrewMartin/
> -><-




[REBOL] Re: [REBOL Helpdesk] #4608

2000-10-05 Thread Al . Bri

> Bug! - 'second on object containing ONE hash! has TWO hash! !!

>> o: make object! [b: make block! [] b2: make block! [] b3: make block! []]
>> print mold second o
[
make object! [
b: []
b2: []
b3: []
] [] [] []]
>>
>> insert tail o/b 1
== []
>> print mold second o
[
make object! [
b: [1]
b2: []
b3: []
] [1] [] []]
>> insert tail o/b2 2
== []
>> print mold second o
[
make object! [
b: [1]
b2: [2]
b3: []
] [1] [2] []]

A similar thing also happens with an object! containing block!s. Perhaps
it's fault with 'second and 'object! ?
Andrew Martin
ICQ: 26227169
http://members.nbci.com/AndrewMartin/
-><-





[REBOL] Re: List! series [Was: blank]

2000-10-04 Thread gmassar

I followed Elan's suggestion to try out list! series. Here is what I
did:

>> list: make list! [1 2 3 4]
== make list! [1 2 3 4]
>> first list
== 1
>> remove list
== make list! [2 3 4]
>> first list
** Script Error: Out of range or past end.
** Where: first list

What!!!

>> list
== make list! []
 
Oh, the series is completely empty!

Can anybody explain why remove all elements in the list instead of just
the first element? Remove block! series just one element at the head.
Why different?

[EMAIL PROTECTED] wrote:
> 
> Hi Sharriff,
> 
> 1. Thanks for the link to the SocketServer site.  Interesting stuff.
> 2.Theoretically (I haven't actually timed it)
> LIST! is faster when it comes to adding and removing elements. If you have a
> lot of add/remove operations on a series than a value of type list! should be
> faster.
> HASH! is faster when it comes to looking up elements. If you need to speed up
> searches then HASH! should be much faster. I expect that the speed of looking
> up elements in hashes is offset by the time it initially takes to construct a
> hash! and to add and remove elements in a hash.
> Be careful when navigating in list series. Indeces do not work the same way
> they do in blocks. Try out these examples:
> >> list: make list! [1 2 3 4]
> >> block: make block! [1 2 3 4]
> >> first block
> >> first list
> >> remove block
> >> remove list
> >> first block
> >> first list
> 
> [EMAIL PROTECTED] wrote:
> 
> > It´s stated somewhere that HASH! and LIST! types are better for data
> > retieval, by what factor and why exactly? are there any special sort or
> > retieve commands or functions that are not documented? I habe´nt found any
> > I´m using Blocks to try to implement a user list of 40-50 users.
> >
> > Sharriff Aina
> > med.iq information & quality in healthcare AG




[REBOL] Re: New View version 0.10.38.3.1 Re:

2000-10-04 Thread alanwall

Hello [EMAIL PROTECTED]

On 04-Oct-00, [EMAIL PROTECTED] wrote:
> Ryan:
>  I had problems loading before and found out that if you already have a
> 'View directory, it will not load. To correct, you must delete or move
> your previous view directory and then try again.
> 
> Hope this helps,
> 
> Joe
> 
> -Original Message-
> From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]]
> Sent: Wednesday, October 04, 2000 3:03 PM
> To: [EMAIL PROTECTED]
> Subject: [REBOL] New View version 0.10.38.3.1
> 
> 
> The new version of view 0.10.38.3.1 wont install properly on my win-98
> machine, anybody else having this problem?
> 
> --Ryan
> 
>
What I did is rename rebol.exe in View to rebol-old.exe and then it would
install 
Regards
-- 
If you wish to learn the highest truths, begin with the alphabet.
-- Unknown
JMS Trustee http://www.jms.org
HP=http://www.sonic.net/~alanwall/
First computer solar powered vic-20
AmigaQNX-notAmigaNG=no good
computers for people not suits
sent via Yam ver2 on AmigaForever ver3
Be a Rebel get [EMAIL PROTECTED]
UIN#=9391028




[REBOL] Re:

2000-10-04 Thread rebol

Hi Sharriff,

1. Thanks for the link to the SocketServer site.  Interesting stuff.
2.Theoretically (I haven't actually timed it)
LIST! is faster when it comes to adding and removing elements. If you have a
lot of add/remove operations on a series than a value of type list! should be
faster.
HASH! is faster when it comes to looking up elements. If you need to speed up
searches then HASH! should be much faster. I expect that the speed of looking
up elements in hashes is offset by the time it initially takes to construct a
hash! and to add and remove elements in a hash.
Be careful when navigating in list series. Indeces do not work the same way
they do in blocks. Try out these examples:
>> list: make list! [1 2 3 4]
>> block: make block! [1 2 3 4]
>> first block
>> first list
>> remove block
>> remove list
>> first block
>> first list


[EMAIL PROTECTED] wrote:

> It´s stated somewhere that HASH! and LIST! types are better for data
> retieval, by what factor and why exactly? are there any special sort or
> retieve commands or functions that are not documented? I habe´nt found any
> I´m using Blocks to try to implement a user list of 40-50 users.
>
> Sharriff Aina
> med.iq information & quality in healthcare AG




[REBOL] Re: Parsing question Re:(2)

2000-10-04 Thread rebol

Hello [EMAIL PROTECTED],

Here's a parse rule that does the trick:

my-table-rule: [
4 [thru "" thru ""]
1 [thru "" copy my-text [thru "" to ""]]
to end
]

"to end" isn't strictly nessesary, but will make parse return true if the text was 
succesfully copied.



Best regards
Thomas Jensen



On 04-Oct-00, [EMAIL PROTECTED] wrote:

> okay maybe I was being too generic.
> 
> Example, parsing a web page to locate the fifth table.  This basically
> involves looking for the fifth occurrence of "" and then the second
> occurrence of "" (as there is an embedded table in one of the
> cells).
> 
> 
> 
> 
> 
> 
> 
> 
> 
> 
> 
> 
> 
> 
> 
> The content I'd like to be copied is ""
> (don't ask why I'd want this)
> 
> Hope that clears up what I'm trying to do. Cheers,
> 
> 
> Jamie





[REBOL] Re: Problem with try [ open/direct/binary tcp://... ] Re:(6)

2000-10-03 Thread rebol

Hello [EMAIL PROTECTED],


On 03-Oct-00, [EMAIL PROTECTED] wrote:

-- snip --

> I'm having fun with mine, thank you, but I'll let you know if I get stuck ;) 

ok :)

> Too bad Gnutella's sucking so bad lately...

yep

> I'm finding that REBOL's a pretty nice tool to get close to the protocol.  
> Out of curiosity, how do you reverse byte order, for things like the length 
> header?  And I havn't seen an elegant way to concatenate binary! type data.  
> Join would be nice.
> 
>>> probe join #{012345} [ #{0123} ]
> #{012345237B303132337D}
> 
>>> ; This makes me cringe 
>>> probe to-binary join to-string #{012345} [ to-string #{6798} ]
> #{0123456798}
> == #{0123456798} 

yeah, REBOLs build-in binary capabilities are a bit strange sometimes :-/
## to binary! 100   
== #{313030}
(same as: to binary! "100")

I use these functions:

int-to-bin: func [int /little-endian /local bin] [
bin: load join "#{" [to-hex int "}"]
either little-endian [
head reverse bin
] [
bin
]
]

bin-to-int: func [bin /little-endian /local int] [
bin: either little-endian [
head reverse copy bin
] [
bin
]
int: (bin/1 * (2 ** 24)) + (bin/2 * (2 ** 16)) + (bin/3 * (2 ** 8)) + bin/4
]



Best regards
Thomas Jensen





[REBOL] Re: Problem with try [ open/direct/binary tcp://... ] Re:(4)

2000-10-02 Thread rebol

Hello [EMAIL PROTECTED],

Actually you can almost use your original function, you just got to be carefull not to 
evaluate the error! value.
(As Andrew pointed out).
Some REBOL values defaults to being evaluated on retrival, functions and errors are 
examples. Others don't - blocks, etc.

to safely pass error values around you could use a colon in front of the word.

Here's a slightly modified Connect:

Connect: Func [ ip port ] [
error? Gp: try [
Open/direct/binary probe To-url join "tcp://" [ Ip ":" port ]
  ]
if not error? :gp [
insert gp "GNUTELLA CONNECT/0.4^/^/"
  print to-string data: copy gp
]
return :gp
 
]

Note the additional colons and the error? in the second line.
Now you can do stuff like:

## error? connect "localhost" 1000
tcp://localhost:1000
== true


BTW.
I once started on a REBOL implementation of the Gnutella protocol, so if you're 
interested in some marshalling functions, etc - just let me know... 


Best regards
Thomas Jensen

On 02-Oct-00, [EMAIL PROTECTED] wrote:

>> 
>> e wrote:
>>> It looks like both would work, according to 'help try'...
>>> DESCRIPTION:
>>>  Tries to DO a block and returns its value or an error.
>> 
>>> gp: try [ open/... ]
>>> and
>>> try [ gp: open/... ]
>>> 
>>> should be equivalent, no?
> 
> Let me follow with what I think is going on, and you can correct me...
> 
>> You're slightly misreading the description. Have a look at the simple
>> example below:
>> 
 try [1 / 0]
>> ** Math Error: Attempt to divide by zero.
>> ** Where: 1 / 0
> 
> This actually reduces to an error, no surprise
> 
 error? try [1 / 0]
>> == true
 error? err: try [1 / 0]
>> == true
> 
> as demonstrated here...
> But if I didn't catch the error with 'error? it would ab-end?
> 
 probe err
>> ** Math Error: Attempt to divide by zero.
>> ** Where: 1 / 0
 err: none
>> == none
 error? try [err: 1 / 0]
>> == true
 probe err
>> none
>> == none
> 
> I think I get it... When the expression is reduced down, if the result is
> type error!, it ab ends.  So I could have said:
> 
> if not error? try [gp: open/direct/binary probe join tcp:// [ip ":" port]] [
>insert gp "GNUTELLA CONNECT/0.4^/^/"]
> 
> And indeed, it works... Man this language is addictive!!!
> 
> 
> 






[REBOL] Compiler for Rebol ? Re:

2000-10-02 Thread chris . double

> Even if it were feasible to build a REBOL-onto-JVM compiler of
 > comparable quality to Kawa, I wonder whether the brainpower might be
 > more profitably spent on other REBOL promotion and support issues:
 > documentation, more tutorials, building a "standard library" of
 > widely-needed and reusable objects/functions, etc.

 Personally I agree. I thing it would be better to spend time on
 using/developing the current REBOL than building another. One problem
 with two not-quite-the-same implementations is having to keep them in
 sync with each other.

 Similar to the JVM is the microsoft .NET platform. Many languages have
 been ported to .NET but due to difficulties most of the languages have
 had to have subtle changes or not implement the more difficult parts
 of the languages (like call/cc for example).

 > Thanks for the very interesting link!  I'll plan to read more on what
 > they're doing with Kawa.

 You're welcome!

 Cheers,
 Chris.





[REBOL] Compiler for Rebol ? Re:(14)

2000-10-01 Thread joel . neely

Let me clarify a previous statement that probably was misleading:

[EMAIL PROTECTED] wrote:
> 
> 2)  Java draws a sharp distinction between code and data.  REBOL,
> as a pure von Neumann language, refuses to recognize that
> distinction.  It is trivial to write REBOL code that modifies
> itself, or that creates a new function (or just a block) at
> run-time, and subsequently evaluates/executes that newly
> constructed expression.  I know of no reasonable mechanism in the
> JVM that allows running JVM bytecodes to manufacture new content
> for the runtime constant pool (which is where symbolic references
> to classes, methods, method signatures, etc. are stored).
> 
> An example of an unreasonable mechanism would be for the running
> code to compose an entirely new class file on the fly, then
> invoke the class loader on that new class file.  I believe the
> overhead of such an approach would be intolerably high for any
> practical uses.
> 

It's not actually necessary to write the class file to disk and load
it back from disk.  A ClassLoader can take bytecode from an array
in memory.

That detail wasn't my main point -- which was that manufacturing
new classes on the fly would be a terribly inefficient way to
handle the REBOL concept

florp: make object! [
; etc...
]

glompfh: make florp [
; more etc...
]

However, I don't want to risk making bogus arguments, in fact or
appearance.

-jn-

--
; Joel Neely  [EMAIL PROTECTED]  901-263-4460  38017/HKA/9677
REBOL []  print to-string debase/64 decompress #{
789C0BCE0BAB4A7176CA48CAB53448740FABF474F3720BCC
B6F4F574CFC888342AC949CE74B50500E1710C0C2400}




[REBOL] Compiler for Rebol ? Re:(2)

2000-10-01 Thread joel . neely

[EMAIL PROTECTED] wrote:
> 
> > Those are VERY different.  And, IMHO, the first would be extremely
> > difficult (if not totally infeasible), while the second would likely
> > be too slow for any realistic use.
> 
> Have you seen Kawa? The scheme compiler that compiles to JVM and
> executes the byte code on the fly [1].
> 

Not before your post.  Thanks!  I've been looking at their site since
receiving the URL you provided.  I'm quite impressed with what they've
done.

>
> It would seem to face the same sorts of problems as a REBOL-on-JVM
> would face and it works quite nicely.
> 

I guess it depends on one's definition of "quite nicely".  My own
definition of "nicely-working" REBOL-on-JVM is quite simple (and
quite strict!):  it must be totally equivalent in functionality to
REBOL as supplied by RT.  One should be able to pick up any working
REBOL script and compile/execute it in the alternate environment
with no changes and no feature unsupported.

Bear in mind that there are already many versions of LISP/Scheme.
I suspect that the shock to the LISP/Scheme community of stepping
from N version to N+1 versions would be smaller than the shock to
the REBOL community of stepping from 1 version to 2.

Further, there is already a large body of literature using the
Scheme language (including the seminal SICP).  Having more options
for running programs in a widely-publicized language is a good
thing, but that's not the most burning issue for REBOL, IMHO.

In addition, I view Scheme as a significantly simpler language
than REBOL.  I should also add at this point that the "internals"
of Scheme are FAR better documented than what is currently
available for REBOL -- regardless of whether this is because of
RT policy, trade secrets, work-in-progress issues, or just the fact
that Carl and the other folks at RT deserve at least three or four
hours of sleep a week!  ;-)

Finally, I'm not challenging the theoretical posibility of doing
REBOL on a JVM, but I have serious questions about how practical
it would be, depending on one's objectives.

>
> [1] http://www.gnu.org/software/kawa/kawa.html
> 

Having looked briefly through that site, I am impressed by the
work that's been done thus far, but it appears to fall short of
the (admittedly hard-nosed) criterion I stated above.  Consider the
partial list of exceptions and caveats quoted from the site above:

Also, call-with-current-continuation is only "upwards" (?).
I.e. once a continuation has been exited, it cannot be invoked.
These restricted continuations can be used to implement
catch/throw (such as the examples in R4RS), but not co-routines
or backtracking. 

Here, a feature of the language can't be used in Kawa to do some
things it can do in standard Scheme.

Kawa now does general tail-call elimination, but only if you use
the flag --full-tail-calls. (Currently, the eval function itself
is not fully tail-recursive, in violation of R5RS.) The
--full-tail-calls flag is not on by default, partly because it is
noticably slower (though I have not measured how much), and
partly I think it is more useful for Kawa to be compilatible with
standard Java calling conventions and tools...

I assume that "compatible" was meant by the mangled word in the next-
to-last line; if so, compatibility with Jave was deemed useful enough
to influence the default behavior of this implementation.

Even without --full-tail-calls, if the compiler can prove that
the procedure being called is the current function, then the tail
call will be replaced by a jump. This means the procedure must be
defined using a letrec, not a define (because the compiler does
not know if someone might re-define a global definition), and
there must be no assignments (using set!) to the procedure
binding. 

Note the parenthesized remark that "the compiler does not know if
someone might re-define a global definition", a perfectly reasonable
thing to do in REBOL.

If you define a macro with defmacro, you (currently) cannot use
the macro in the same compilation as the definition.

A fairly severe restriction, IMHO.

The current Kawa compiler is rather simple-minded, and in many
places only allows simple types that the compiler can evaluate
at compile-time. More specifically, it only allows simple type
names that map to primitive Java types or java classes. 

Another example of a Java-oriented language compromise.

This next one needs some explanation.  The rules for valid names in
Scheme are different (and much more liberal) than the rules for valid
names in Java.  Kawa "mangles" (their word, not mine) Scheme names
into the more limited options allowed by Java.  With that background:

Note that this mapping may map different Scheme names to the same
Java name. For example `string?', `String?', `is-string',
`is-String', and `isString' are all mapped to the same Java
identifier `isString'. Code that uses such

[REBOL] Reading encrypted pages with REBOL??? Re:

2000-10-01 Thread chris . double

> IIRC the reason is size of SSL protocol - several times of size of
 > Core :-)
 >

 Using OpenSSL (http://www.openssl.org) it is not too difficult to add
 SSL support to an existing sockets package. I added SSL support to my
 Lisp Socket package in very few lines [1]. This included using SSL
 through a generic proxy. I've also done the same with Dylan, adding
 SSL support to the existing Dylan sockets library [2].

 If you can call call/link external libraries to include OpenSSL
 (Rebol/Command for example) you could might be able to add the support
 yourself in a few hours.

 Note that I've only done this on Windows - not other OS's - so it may
 be more involved than that.

 The basic steps once you've got a socket connected using the standard
 OS calls were to use the OpenSSL calls:

   method = sslv23_client_method();
   ctx = ssl_ctx_new(method);
   handle = ssl_new(ctx);
   ssl_set_fd( handle, socket_descriptor);
   ssl_connect( handle );

 Once the above is done you use the ssl_write and ssl_read functions
 instead of the OS send and recv functions, passing the 'handle' above,
 not the socket descriptor:

   ssl_write(handle, buffer, length);
   ssl_read(handle, buffer, length);

 When closing the socket you first need to do some SSL cleanup:

   ssl_shutdown(handle);
   closesocket(socket_descriptor);
   ssl_free(handle);
   ssl_ctx_free(ctx);


 That's all there is too it. The source to my Lisp version is at my
 site if anyone wants to try a REBOL vesion.

 [1] http://www.double.co.nz/cl
 [2] http://www.double.co.nz/dylan

 Chris.






[REBOL] Compiler for Rebol ? Re:

2000-10-01 Thread chris . double

> Those are VERY different.  And, IMHO, the first would be extremely
> difficult (if not totally infeasible), while the second would likely
> be too slow for any realistic use.

Have you seen Kawa? The scheme compiler that compiles to JVM and
executes the byte code on the fly [1].

It would seem to face the same sorts of problems as a REBOL-on-JVM
would face and it works quite nicely.

[1] http://www.gnu.org/software/kawa/kawa.html

Chris.
--
http://www.double.co.nz/dylan





[REBOL] Re: Repeat pattern Re:(2)

2000-10-01 Thread rebol

Hello [EMAIL PROTECTED],

Try this:


REBOL []

table-rule: [thru ""]
table-rule-copy: [thru "" copy text to ""]
tables-rule: [
11 table-rule
1 table-rule-copy
to end
]

parse read %test.html tables-rule

print text

a test file is attached.

Note that if you'd like to handle stuff like "", you'd need to modify 
the rules a bit:
(not testet)

table-rule: [thru "" copy text to ""]


Best regards
Thomas Jensen


On 01-Oct-00, [EMAIL PROTECTED] wrote:

> Thanks but if you don't want copy text between 1 and 11 but only on the 12th
> is it possible ?
> 
> - Message d'origine -
> De : <[EMAIL PROTECTED]>
> À : <[EMAIL PROTECTED]>
> Envoyé : dimanche 1 octobre 2000 19:53
> Objet : [REBOL] Repeat pattern Re:
> 
> 
>> On Sun, 01 Oct 2000, you wrote:
>>> Let suppose this rule:
>>> 12 [thru "" copy text to ""]
>>> 
>>> How to modify the syntax if you want to do it not 12 times but only the
>>> 12th time ?
>> 
>> Not tested but...
>> 
>> counter: 0
>> tables: []
>> parse mypage [some [thru " copy text to ""
>> (if (counter // 12) = 0 [append tables
> text]
>>  counter: counter + 1)
>>   ]
>> ]
>> 
> 





test01
test02
test03
test04
test05
test06
test07
test08
test09
test10
test11
test12
test13





[REBOL] Compiler for Rebol ? Re:(10)

2000-10-01 Thread jhagman

Quoting [EMAIL PROTECTED] ([EMAIL PROTECTED]):
> 
> The new experimental versions of REBOL/Linux/x86 come with libtermcap
> statically linked, so there should be no more conflicts with libc5/6.

Great!

-- 
Jussi HagmanCS in Åbo Akademi University
Studentbyn 4 D 33   [EMAIL PROTECTED]
20540 Åbo   [EMAIL PROTECTED]
Finland




[REBOL] Re: Beer time...

2000-09-30 Thread petr . krenzelok


- Original Message -
From: <[EMAIL PROTECTED]>
To: <[EMAIL PROTECTED]>
Sent: Sunday, October 01, 2000 3:05 AM
Subject: [ALLY] Beer time...


> View is nearly complete with this release.  There is still some work to do
on edit text, and a general cleanup sweep needs to happen soon.  However,
I'm quite happy with where it is today.  Packs a lot of punch for 360K.
>
> The next big focus for View is to get the Express features into it:
encryption, authentication, certification, notification, and
synchronization.  A lot of 'tions, but you'll see an Express icon pop up in
the next release useful stuff.

Huh, what? :-) I thought Express is commercial product. What's more -
shouldn't such functions become part of Core too? OK, so you will add
features to /View, which will make our lives easier. That's great.

... Let me ask about Core technology too. Now as you are nearly done with
View (in real no sw product is ever finished :-), maybe you could find a
little bit of a free time and tell us, what's planned for REBOL in let's say
one year term. It would be nice to introduce some other advancement for
Core, as improved parser (parsing opened ports for handling bug files,
etc...), refinement propagation :-) (old one :-), dialect propagation (pekr
TM :-)), load, read with /dirs /files or simply some stuff to speed certain
operations up, etc or at least, when aproximately are modules going to
be available?

... there are alway two levels of stuff related to languages advancement.
Advancement by adding new classess, functionality etc., and advancement to
language and its functionality itself. I always liked to check, what's
coming with new versions of products in technology itself ...

> > As you can see from the webcam that there's a beer bust and band
happening across the street from REBOL.  It's Ukiah's Read Tail Ale so,
now that 0.10.35 is done, I need a brew.


Ah, OK, so, hurry up, just started new view and have few comments :-) As I
just returned from JimBeam party, I am too lazy to send it to feedback ;-)

- edit-text %somefile.r does nothing and returns to console. You have to
type do-events in console to proceed, and then file-requester appears,
ignoring the fact the name of file was already submitted. If you don't
select anything and close file-requester, it returns an arror ...

- request-list buggy too - second invocation of request list ignores new
block of data, untill you restart rebol (haven't checked how to reinitialize
it though). It could also use arrow keys for navigation 

- thanks for fixing date requestor. I also noticed smal note about more
copying of fields. So using references aproach seems to be more complicated
when creating more complex stuff? :-) Seems the same to me as you described
threads - they share the stuff and sometimes it is complicated to trace down
the "strange" behavior ...

>
> Cheers,

Cheers, yuck, 4:15 am here 8-)
-pekr-
>
> -Carl
>




[REBOL] Re: REBOL, AMIGA/TAO & MICRO$OFT DOT-NET (Long!) Re:(2)

2000-09-29 Thread carl

On 30-Sep-00, [EMAIL PROTECTED] wrote:

> - Original Message -
> From: <[EMAIL PROTECTED]>
> To: <[EMAIL PROTECTED]>
> Sent: Saturday, September 30, 2000 2:00 AM
> Subject: [REBOL] Re: REBOL, AMIGA/TAO & MICRO$OFT DOT-NET (Long!)

>> On 30-Sep-00, [EMAIL PROTECTED] wrote:

>>> This one is for all you AMIGANS out there! Petr?

>>> Whilst perusing the Amiga website yesterday & reading about "The
>>> Amiverse" Amiga Digital Environment & it's various layers &
>>> foundation technologies, I came across the following
>>> sentence..

>>> "In addition, Amiga is working on a revolutionary common
>>> language that unites command line, scripting, control and
>>> serious application development. "

>>> My immediate thoughts were this smells like REBOL.

>> I assume this is what's going under the code-name "Sheep"? Anyway,
>> while the above may remind you of REBOL, to most Amiga users its
>> sounds like an extended ARexx.  ARexx is a language to allow
>> applications to communicate and control each other and has been
>> part of the Amiga OS since Workbench 2.  (circa 1990?)

> You are both wrong here. Sheep is the name of new scripting language
> for Amiverse, and it's being done by Vouter, author of famous
> AmigaE. There is no relation to REBOL. REBOL is multiplatform, but
> Sheep will be more like arrex, as system integration matters ...

So, doesn't...

"In addition, Amiga is working on a revolutionary common language that
unites command line, scripting, control and serious application
development."

refer to Sheep?




[REBOL] Re: REBOL, AMIGA/TAO & MICRO$OFT DOT-NET (Long!)

2000-09-29 Thread carl

On 30-Sep-00, [EMAIL PROTECTED] wrote:

> This one is for all you AMIGANS out there! Petr?

> Whilst perusing the Amiga website yesterday & reading about "The
> Amiverse" Amiga Digital Environment & it's various layers &
> foundation technologies, I came across the following sentence..

> "In addition, Amiga is working on a revolutionary common language
> that unites command line, scripting, control and serious application
> development. "

> My immediate thoughts were this smells like REBOL.

I assume this is what's going under the code-name "Sheep"?  Anyway,
while the above may remind you of REBOL, to most Amiga users its
sounds like an extended ARexx.  ARexx is a language to allow
applications to communicate and control each other and has been part
of the Amiga OS since Workbench 2.  (circa 1990?)

> I've been reading snippets about the new Amiga plans for the last
> year or so, things like Amino / Aqua, Phoenix Consortium to the new
> Amiga/Tao platform & software development kit etc.

> How strong are the ties between REBOL & the new AMIGA environment ?

> Are REBOL independent or subsidiary in the whole Amiga
> scheme of things?

Independent, I'm pretty sure.  The current Amiga Inc. have only
existed since the beginning of this year.  (Gateway owned Amiga
before that, and still own the Amiga patents.)  REBOL (going by
what's been said on this list of late) is now around four years old.

> Is it because QNX will compete for the same space as Amiga/Tao?
> or was just because with loads going on at REBOL just now
> with /Command, working on /Express, new developments to
> /Core & /View that a reliable working QNX version of /View
> was just not a high enough priority?

Core is available for both the new Amiga and QNX RTP.  And View isn't,
as it isn't for the Mac.  No favoritism here as far as I can see. 
I'm sure RT would like View on as many platforms as possible, as I'm
sure they'd like it finished and out of Beta by now too.  The later
probably has quite a high prioity - hopefully... (:

Someone said here that REBOL's not on the latest RedHat Linux either.
Perhaps they've decided they'd rather not have it on OS
distributions to stop accusations of them favouring one platform over
another?

> If REBOL truly are independent then having /View & later /Multimedia
> available across all & every platform is going to lead to having to
> maintain a truly enormous code base to cover every range of
> CPU + OS + Graphics Layer.

> Think about the whole multitude of possible permutations &
> combinations.

> A subset might be as follows;

> Intel 86 + MS Windows + GDI / Win32's
> PPC + Mac OS X + Aqua
> Intel 86 + BE OS + Be Media Layer
> PPC + BE OS + Be Media Layer
> Intel 86 + Linux + XFree86
> Sparc + Linux + XFree86
> PPC + Linux + XFree86
> Intel 86 or Sparc or PPC etc + Linux + MicroWindows
> Intel 86 or Sparc or PPC etc + Linux + QT Embedded
> Every CPU + Tao Elate + Amiga Foundation Layers
> Every CPU + QNX + Photon Micro GUI

> Add in Solaris, Palm, Symbian, FreeBSD, Unix as well
> as NETBSD which runs on every platform known to man
> including ports to the Sega Dreamcast & Sony Playstation
> then the list of combinations becomes huge.

> Can REBOL independently support all this menagerie of
> hardware & software ?

Why not?  I assume there's just a bottom layer to REBOL that accesses
the OS it's running on.  This bottom layer is all they'd need to
re-write for each new OS that appears.  They can port Core pretty
quickly going by the 40+ platforms it's already on.  How quickly View
will be able to ported after they finish it remains to be seen, but
doesn't it occure to you that putting REBOL on new platforms quickly
is probably part of its design specs?

> Open Source maybe the only way viable to support every platform with
> REBOL, that way platform developers & enthusiasts could be
> responsible for maintaining & developing REBOL like technology on
> their chosen platform. Carl Sassenrath & a consortium of parties
> with major interests in REBOL as a technology could develop & write
> standards & specifications for REBOL, whilst platform specific
> implementation is left to each platform group.

> Aside from REBOL, JAVA now stands as the most popular Language
> currently in use on the planet, with massive resources devoted to it
> in industry & education, I don't see this changing anytime soon.

> Whilst it may not be our cup of tea, it's obviously massively
> popular & will continue to be a significant technology for modern
> software development.

Which is all well and good, so how come Java's not on the Classic
Amiga yet?  (Other than that RT poached Holger away from us, but I'm
sure he's having way more fun with REBOL than he was with the Amiga
Java port, even if he's not allowed to sleep any more.:)

And where's the Classic Amiga port of Mozilla?  It's Open Source,
isn't it?  Should be a breeze to port compared to reverse-engineering
an unfinished language such as REBOL, shouldn't it?

Open

[REBOL] Compiler for Rebol ? Re:(10)

2000-09-29 Thread brian . hawley

[EMAIL PROTECTED] wrote:
[some skip]
>Of course, Carl's recent mention of the mysterious 'compile keyword
>implies something like this is taking place behind the scenes (and
>could then ultimately be exposed).

I remember that message. There were smileys all over it.

Carl was joking about a compile function. If you thought
something like that mysteriously existed, I guess Carl's
joke backfired. Oh well :(

Brian Hawley




[REBOL] Reading encrypted pages with REBOL??? Re:(2)

2000-09-28 Thread ptretter

I am very interested in this subject as I to prefer some functions with
HTTPS.  Until then I use my IIS server for all HTTPS fucntions. Anybody got
the scoop on this as its important in my opinion for RT overall stradegy.

-Original Message-
From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]]
Sent: Thursday, September 28, 2000 10:02 AM
To: [EMAIL PROTECTED]
Subject: [REBOL] Reading encrypted pages with REBOL??? Re:


No, we use https:// all the time for many EDS web sites
but No, rebol cannot use read on https:// or
you cannot use load/markup https://

Also, https:// can be used for all types of html data,
not just e-commerce credit-card entry forms.

However, you can use:
read or
load/markup http:// which is very useful for "re-purposing data"

Holger has commented on this before, and it sounds
like it will "be-a-while" before rebol/core has the
ability to read https:// (secure pages).

-Original Message-
From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]]
Sent: Thursday, September 28, 2000 10:30 AM
To: [EMAIL PROTECTED]
Subject: [REBOL] Reading encrypted pages with REBOL???


One of our customers using the /Command order forms I wrote
(https://abooks.safeserver.com/orders/command.html), wanted to read the form
into REBOL, i.e.:

a: read https://abooks.safeserver.com/orders/command.html

It never occurred to me that anyone would want to (since the forms were
designed for browsers) and, of course, it doesn't work since REBOL evidently
cannot read encrypted web pages yet. Or can it? Is there a way to access the
https format?

Thanks,

--Ralph Roberts




[REBOL] Antwort: Compiler for Rebol ? Re:(17)

2000-09-28 Thread joel . neely

Thanks, Larry!  You're absolutely right...

I ran into this a while back in the context of the following kind of
thing:

something: [print x]
foreach x some-block [do something]

but the knowledge hasn't made it from my memory to my typing fingers! ;-)

-jn-

[EMAIL PROTECTED] wrote:
> 
> Hi Joel
> 
> Just a small clarification. You wrote:
> 
> >> searchname: func [who [string!] /local k v] [
> [foreach [k v] foo [
> [if v/name = who [return v]
> []
> []
> 
> Actually the declaration of k and v as local vars to the searchname function
> is unnecessary as in your example they are never used.  The foreach function
> binds the words in it's first arg (also k and v in your example) as local to
> it's own context. The outer k and v are unused. Here is a short example:
> 
> >> f: func [/local k][
> [k: 1
> [foreach [k]["a" "b"][print k]
> [print k
> []
> >> f
> a
> b
> 1
> >>
> 
> Cheers
> -Larry

-- 
; Joel Neely  [EMAIL PROTECTED]  901-263-4460  38017/HKA/9677
REBOL []  print to-string debase decompress #{
789C0BCE0BAB4A7176CA48CAB53448740FABF474F3720BCC
B6F4F574CFC888342AC949CE74B50500E1710C0C2400}




[REBOL] Antwort: Compiler for Rebol ? Re:(16)

2000-09-28 Thread larry

Hi Joel

Just a small clarification. You wrote:


>> searchname: func [who [string!] /local k v] [
[foreach [k v] foo [
[if v/name = who [return v]
[]
[]

Actually the declaration of k and v as local vars to the searchname function
is unnecessary as in your example they are never used.  The foreach function
binds the words in it's first arg (also k and v in your example) as local to
it's own context. The outer k and v are unused. Here is a short example:

>> f: func [/local k][
[k: 1
[foreach [k]["a" "b"][print k]
[print k
[]
>> f
a
b
1
>>

Cheers
-Larry






[REBOL] Compiler for Rebol ? Re:(9)

2000-09-28 Thread holger

On Thu, Sep 28, 2000 at 07:14:53PM +0300, [EMAIL PROTECTED] wrote:
> And for my part, no I was not up for the task either and had
> libtermcap installed once, but that has been long gone. I surely
> wondered about the problem for a long time. I would suggest REBOL to
> include a warning to the readme on this. It seems that a lot of people
> have debian installed with the libtermcap.

The new experimental versions of REBOL/Linux/x86 come with libtermcap
statically linked, so there should be no more conflicts with libc5/6.

-- 
Holger Kruse
[EMAIL PROTECTED]




[REBOL] Reading encrypted pages with REBOL??? Re:(2)

2000-09-28 Thread petr . krenzelok


- Original Message -
From: <[EMAIL PROTECTED]>
To: <[EMAIL PROTECTED]>
Sent: Thursday, September 28, 2000 5:02 PM
Subject: [REBOL] Reading encrypted pages with REBOL??? Re:


> No, we use https:// all the time for many EDS web sites
> but No, rebol cannot use read on https:// or
> you cannot use load/markup https://
>
> Also, https:// can be used for all types of html data,
> not just e-commerce credit-card entry forms.
>
> However, you can use:
> read or
> load/markup http:// which is very useful for "re-purposing data"
>
> Holger has commented on this before, and it sounds
> like it will "be-a-while" before rebol/core has the
> ability to read https:// (secure pages).

IIRC the reason is size of SSL protocol - several times of size of Core :-)
Maybe /Serve will solve it for you ...

-pekr-
>
> -Original Message-
> From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]]
> Sent: Thursday, September 28, 2000 10:30 AM
> To: [EMAIL PROTECTED]
> Subject: [REBOL] Reading encrypted pages with REBOL???
>
>
> One of our customers using the /Command order forms I wrote
> (https://abooks.safeserver.com/orders/command.html), wanted to read the
form
> into REBOL, i.e.:
>
> a: read https://abooks.safeserver.com/orders/command.html
>
> It never occurred to me that anyone would want to (since the forms were
> designed for browsers) and, of course, it doesn't work since REBOL
evidently
> cannot read encrypted web pages yet. Or can it? Is there a way to access
the
> https format?
>
> Thanks,
>
> --Ralph Roberts




[REBOL] Compiler for Rebol ? Re:(8)

2000-09-28 Thread jhagman

Quoting [EMAIL PROTECTED] ([EMAIL PROTECTED]):
> [EMAIL PROTECTED] wrote:
> > 
> > Quoting [EMAIL PROTECTED] ([EMAIL PROTECTED]):
> > 
> > > Carl's support for MS operating systems doesn't keep me from
> > > using any of several varieties of Unix/Linux (except Debian, but
> > > that's another issue!), MacOS, etc.
> > 
> > What's wrong with Debian? I am just being curious because that is the
> > distribution I am using...
> > 
> > - Jussi
> > 

> THIS time, the box set up for the mtg was running Debian.  Both the
> public beta of /View and the current rlse of /Core blew up instead
> of running. 

Yes, that's the demo effect! :) I hope you tested rebol on that
machine _before_ the demo... 

> I didn't report it at the time because the box was
> Debian Unstable, and assumed that maybe the guy who set it up was
> just a little too close to the edge.  
>
> Since then, I've seen traffic on this list indicating that others have
> had problems with REBOL on Debian, so perhaps my experience wasn't so
> unique or box-owner-dependent after all???

Yes, problem was the guy running the box, not Debian not even it's
unstableness. The root of the problem lies in rebol using an _ancient_
library called termcap. Debian does not have this library in it's
normal distribution but in _oldlibs_ as it is very old it is compiled
against libc5. As other libraries and rebol are compiled against libc6
and those two don't mix the crash occurs. 

The guy running the box just has not removed the old libtermcap. He
surely has no programs depending on it anymore. The workaround is to
remove the libtermcap and make link from libncurses to libtermcap.

So, it is not Debian's fault that the guy wanted to keep an old libc5
library installed. Sure Debian is somewhat harder to install than
RedHat. But it has some other virtues (atleast for power users and
opensource enthusiasts).

And for my part, no I was not up for the task either and had
libtermcap installed once, but that has been long gone. I surely
wondered about the problem for a long time. I would suggest REBOL to
include a warning to the readme on this. It seems that a lot of people
have debian installed with the libtermcap.


Yours,
Jussi 


-- 
Jussi HagmanCS in Åbo Akademi University
Studentbyn 4 D 33   [EMAIL PROTECTED]
20540 Åbo   [EMAIL PROTECTED]
Finland




[REBOL] Reading encrypted pages with REBOL??? Re:

2000-09-28 Thread doug . vos

No, we use https:// all the time for many EDS web sites
but No, rebol cannot use read on https:// or
you cannot use load/markup https://

Also, https:// can be used for all types of html data,
not just e-commerce credit-card entry forms.

However, you can use:
read or
load/markup http:// which is very useful for "re-purposing data"

Holger has commented on this before, and it sounds
like it will "be-a-while" before rebol/core has the
ability to read https:// (secure pages).

-Original Message-
From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]]
Sent: Thursday, September 28, 2000 10:30 AM
To: [EMAIL PROTECTED]
Subject: [REBOL] Reading encrypted pages with REBOL???


One of our customers using the /Command order forms I wrote
(https://abooks.safeserver.com/orders/command.html), wanted to read the form
into REBOL, i.e.:

a: read https://abooks.safeserver.com/orders/command.html

It never occurred to me that anyone would want to (since the forms were
designed for browsers) and, of course, it doesn't work since REBOL evidently
cannot read encrypted web pages yet. Or can it? Is there a way to access the
https format?

Thanks,

--Ralph Roberts




[REBOL] Antwort: Antwort: Antwort: Compiler for Rebol ? Re:(16)

2000-09-28 Thread Sharriff . Aina


..Whoa! you laid it down so nicely it seems painfully simple, I really have
to RTFM, not once but "LOOP 5" times  ;-)
I would do some reading now on all what you´ve explained to me..sorry to
have been a bother to you.

Thanks Jeff

..uhm Mr. Sassenrath? if you´re reading this list : someone said somewhere
that REBOL was addictive, he was right...PLEASE make an EXEC  function free
for CORE ( I think everyone on this list agrees with me? )

Sharriff Aina
med.iq information & quality in healthcare AG





[REBOL] Antwort: Antwort: Compiler for Rebol ? Re:(16)

2000-09-28 Thread joel . neely

[EMAIL PROTECTED] wrote:
> 
> Thanks Jeff!! one question:
> 
> the "local" value "k", what is it piroüose exactly , its not beineg
> breferenced at all
>

Hey, I did say I'd left something as an exercise!  ;-)

> 
>>> buildxref: func [/local xref k v] [
> [xref: copy []
> [foreach [k v] foo [
> [append xref v/name
> [append/only xref v
> []
> [xref
> []
> 

If the second argument of  foreach  is a list of words, then they take
consecutive values from the block that is the second argument.

>> foo: [1 "a" 2 "b" 3 "c" 4 "d"]
== [1 "a" 2 "b" 3 "c" 4 "d"]
>> foreach [n s] foo [print s]
a
b
c
d
>> foreach [n s] foo [print n]
1
2
3
4
>> foreach [n s] foo [print [n "->" s]]
1 -> a
2 -> b
3 -> c
4 -> d
>>

So, all I was saying in  buildxref  was "Walk through  foo , treating
it as a collection of pairs.  Call the left-hand element  k  and the
right-hand element  v  while looking at each pair.  Now, here's what
to do with each pair..."  It just happens that the simplified version
if cross-referencing I showed in that example didn't use the left-hand
element.

There are other ways to skin this cat.  For example, using  forskip  as
illustrated by:

>> skipfoo: next foo
== ["a" 2 "b" 3 "c" 4 "d"]
>> forskip skipfoo 2 [print first skipfoo]
a
b
c
d
== false
>> skipfoo: foo
== [1 "a" 2 "b" 3 "c" 4 "d"]
>> forskip skipfoo 2 [print first skipfoo]
1
2
3
4
== false
>> skipfoo: foo
== [1 "a" 2 "b" 3 "c" 4 "d"]
>> forskip skipfoo 2 [print [first skipfoo "->" second skipfoo]]
1 -> a
2 -> b
3 -> c
4 -> d
== false
>>

Both of these approaches can be used with groupings of more then two
elements at a time.  For instance, if I had a block containing ID#,
name, and phone number for a bunch of employees (I'll not bother to
make up sample data for this one), one could list all of the names
by saying either (*WARNING* *UNTESTED CODE FRAGMENT*)

foreach [emp-id emp-name emp-phone] emp-data-block [
print emp-name
]

or

emp-temp-block: next emp-data-block
forskip emp-temp-block 3 [print first emp-temp-block]

or (a TOTALLY UNSATISFACTORY solution, in my opinion)

emp-data-block: next emp-data-block
forskip emp-data-block 3 [print first emp-data-block]
emp-data-block: head emp-data-block

The first of these three (at least to my eye) seems to do the best
job of making clear that I'm dealing with  emp-data-block  as a
collection of triples, and making clear exactly what I'm doing with
(what parts of) each triple.

-jn-


PS:  Since I've already blabbered on for this long, I might as well
 include one solution to the open issue I raised in the earlier
post in this thread -- creating an index/crossreference to your
original block that lets me start with a name and get at both the
key and value block from the original data structure:

== false
>> foo: [
[ admin [
[name "Sharriff Aina"
[  password "gong"
[email [EMAIL PROTECTED]
[  dept "Administration"
[  view "yes"
[  ]
[
[  sharriff [
[  name "Sharriff Aina"
[  password "jungle"
[  email [EMAIL PROTECTED]
[  dept "Administration"
[  view "yes"
[]
[]
== [
admin [
name "Sharriff Aina"
password "gong"
email [EMAIL PROTECTED]
dept "Admini...

>> buildxref: func [orig [block!] /local xref k v] [
[xref: copy []
[foreach [k v] orig [
[append xref v/name
[append/only xref reduce [k v]
[]
[xref
[]

>> fum: buildxref foo
== ["Sharriff Aina" [
admin [
name "Sharriff Aina"
password "gong"
email sharriff.ain...

>> first select fum "Sharriff Aina"
== admin

This version uses both the key and value elements of each pair.

Of course, I can't let this drop without assigning more homework
(old teaching habits die hard  ;-), so let's notice that the
name "Sharriff Aina" occurs more than once in your original data.
Wouldn't it be nice to have a version of  buildxref  that made a
crossreference structure that paired each name with a block of
key/value pairs, for all entries in the original data where the
name appeared?

-- 
; Joel Neely  [EMAIL PROTECTED]  901-263-4460  38017/HKA/9677
REBOL []  print to-string debase decompress #{
789C0BCE0BAB4A7176CA48CAB53448740FABF474F3720BCC
B6F4F574CFC888342AC949CE74B50500E1710C0C2400}




[REBOL] Antwort: Antwort: Compiler for Rebol ? Re:(15)

2000-09-28 Thread Sharriff . Aina


Thanks Jeff!! one question:

the "local" value "k", what is it piroüose exactly , its not beineg
breferenced at all


   >> buildxref: func [/local xref k v] [
[xref: copy []
[foreach [k v] foo [
[append xref v/name
[append/only xref v
[]
[xref
[]



Sharriff Aina
med.iq information & quality in healthcare AG
Gutenbergstr. 42
41564 Kaarst
tel.: 02131-3669-0
fax: 02131-3669-599
www.med-iq.de




[REBOL] Antwort: Compiler for Rebol ? Re:(15)

2000-09-28 Thread joel . neely

Well, Sharriff, it depends on what you want to select...

Using cut-n-paste from your original note:

>> foo: [
[ admin [
[ name "Sharriff Aina"
[  password "gong"
[email [EMAIL PROTECTED]
[  dept "Administration"
[  view "yes"
[  ]
[
[sharriff [
[  name "Sharriff Aina"
[  password "jungle"
[  email [EMAIL PROTECTED]
[  dept "Administration"
[  view "yes"
[]
[]
== [
admin [
name "Sharriff Aina"
password "gong"
email [EMAIL PROTECTED]
dept "Admini...

>> select foo 'admin
== [
name "Sharriff Aina"
password "gong"
email [EMAIL PROTECTED]
dept "Administration"
view "yes"
]

>> select foo "admin"
== none

>> select foo admin
** Script Error: admin has no value.
** Where: select foo admin

Note that all of your "key" values are of type  word!  and NOT of
type  string!  which means you must use a literal word or an
expression that evaluates to a value of type  word!  in order to
get a match.

OTOH, if you want to search by name, you can either write
a function to search the nested blocks, as in

>> searchname: func [who [string!] /local k v] [
[foreach [k v] foo [
[if v/name = who [return v]
[]
[]

>> searchname "Sharriff Aina"
== [
name "Sharriff Aina"
password "gong"
email [EMAIL PROTECTED]
dept "Administration"
view "yes"
]

OTOH, (wait a minute... I don't have three hands!  Can somebody
give me a hand?  ;-) if you're going to do lots of searching in
that data structure, it's worthwhile to pre-build another data
structure that can serve as an index or cross-reference to the
original one:

>> buildxref: func [/local xref k v] [
[xref: copy []
[foreach [k v] foo [
[append xref v/name
[append/only xref v
[]
[xref
[]

>> fum: buildxref
== ["Sharriff Aina" [
name "Sharriff Aina"
password "gong"
email [EMAIL PROTECTED]
dept "A...

>> select fum "Sharriff Aina"
== [
name "Sharriff Aina"
password "gong"
email [EMAIL PROTECTED]
dept "Administration"
view "yes"
]

Modifying either of the above to return both the key and value from
the ORIGINAL block (e.g., getting back BOTH the key  'admin  and the
block of associated data), is a minor tweak that is left to the
reader.

(That's academicspeak for

"I don't have time to type it right now."

but feel free to ask if you want any followup!  ;-)

-jn-


[EMAIL PROTECTED] wrote:
> 
> Just when I thought my problems were solved..sorry to bother you guys again
> 
> [
>  admin [
> name "Sharriff Aina"
>   password "gong"
> email [EMAIL PROTECTED]
>   dept "Administration"
>   view "yes"
>   ]
> 
>   sharriff [
>   name "Sharriff Aina"
>   password "jungle"
>   email [EMAIL PROTECTED]
>   dept "Administration"
>   view "yes"
> ]
> ]
> 
> a "SELECT" or "FIND" always results in a " NONE" how do I iterate? the path
> "test-path: admin/name" for example works. I would to be able to search the
> database given the first name (login name) of the user with a function...
> 
> Thanks and much appreciation for your help
> I´ll get the hang of this one day, this is my second REBOL week!
> 
> Sharriff Aina
> med.iq information & quality in healthcare AG




[REBOL] Antwort: Compiler for Rebol ? Re:(14)

2000-09-28 Thread Sharriff . Aina


Just when I thought my problems were solved..sorry to bother you guys again

[
 admin [
name "Sharriff Aina"
  password "gong"
email [EMAIL PROTECTED]
  dept "Administration"
  view "yes"
  ]

  sharriff [
  name "Sharriff Aina"
  password "jungle"
  email [EMAIL PROTECTED]
  dept "Administration"
  view "yes"
]
]


a "SELECT" or "FIND" always results in a " NONE" how do I iterate? the path
"test-path: admin/name" for example works. I would to be able to search the
database given the first name (login name) of the user with a function...

Thanks and much appreciation for your help
I´ll get the hang of this one day, this is my second REBOL week!


Sharriff Aina
med.iq information & quality in healthcare AG





[REBOL] Compiler for Rebol ? Re:(13)

2000-09-27 Thread joel . neely

Hi, Andrew!

[EMAIL PROTECTED] wrote:
> 
> > No flaming from me; just puzzled head-scratching.  It's not clear to me
> > that REBOL and Java are conceptually close enough to be ABLE to compile
> > REBOL directly into Java bytecode.
> 
> Im taking a guess here, but it seems you are thinking at a much higher
> level than I am.
> Theoretically conversion from REBOL to bytecode doesnt require any
> syntactic/semantic resemblance to Java, merely a mapping of REBOL
> functions to bytecode sequences.
> 

I'm sorry, but I must disagree.  The JVM and its bytecode were specifically
designed for the Java language; many of their features are directly related
to requirements, features, and concepts of the Java language.  By the same
token, concepts NOT part of the Java world-view would be VERY difficult to
map directly to JVM bytecode.  The "mere" mapping of REBOL functions to
JVM bytecode is not very "mere" where REBOL has a concept missing from
Java.

Let me give just a couple of brief examples:

1)  Java uses a class-model style of OO programming, in which one defines
a "class" (at compile time) as a kind of factory or classification
entity, then creates objects (at run time) by asking the class to construct
an "instance" of itself.  REBOL uses neither the class/instance distinction
nor the compile-time/run-time distinction.

2)  Java draws a sharp distinction between code and data.  REBOL, as a pure
von Neumann language, refuses to recognize that distinction.  It is
trivial to write REBOL code that modifies itself, or that creates a new
function (or just a block) at run-time, and subsequently evaluates/executes
that newly constructed expression.  I know of no reasonable mechanism in the
JVM that allows running JVM bytecodes to manufacture new content for the
runtime constant pool (which is where symbolic references to classes,
methods, method signatures, etc. are stored).

An example of an unreasonable mechanism would be for the running code to
compose an entirely new class file on the fly, then invoke the class loader
on that new class file.  I believe the overhead of such an approach would
be intolerably high for any practical uses.

3)  Java is a strongly-typed language.  JVM bytecodes for such common actions
as comparing two values depend on advance (i.e., compile-time) knowledge
of the types of the values being compared.  Different opcodes are used for
comparing two integers than for comparing two doubles, for example.  Also,
invoking a Java method (e.g., via the INVOKEVIRTUAL opcode) requires a
reference to the constant pool which provides a method signature (which
includes identification of the types of all arguments).  REBOL, by contrast,
can punt on the entire issue of function argument types, leaving that issue
to be handled implicitly by each operator or explicitly by the high-level
code.

Based on the above (among other issues), the REBOL code:

block1: [a: 1  b: does [print a]  z: func [x] [a < x]]
block2: [a: 2.3  c: does [print ["fee has" a]]]

foo: make object! block1
fee: make foo block2
fum: make object! append copy block1 [
z: func [x] [either number? x [a > x] [false]]
]

poses a number of significant challenges to any attempt to render it into
equivalent JVM bytecode.

>
> Further, this conversion would be somewhat simplified by the fact that
> the bytecodes are much more finite than the language that it is compiled
> from (an analogy: c -> RISC assembler), creating less mapping
> possibilities, making it a simpler conversion process.
> 

I don't understand this sentence at all.

Bytecodes typically deal with more fine-grained, operationally oriented 
concepts than high-level programming languages.  The translation process
is only "a simpler conversion" (than compilation to object code for some
physical computer?) if the defining concepts of the source language and
the byte code are nicely aligned.

>
> Im afraid that I am new to both languages and cant adequately go into
> detail on the points you raised...BUT:
> 
> > It would certainly be possible to create a REBOL interpreter written
> > in Java, but that's not what I understood you to be suggesting (and
> > my experience with Java suggests that it would run like a pig on
> > tranquilizers...)
> 
> This process would entail roughly the steps I am talking about!
> ...albiet at the language level, not the bytecode level (but you can
> always go from lang->bytecode so...)
>

Different concepts.

>
> By an interpreter I take it you mean parsing REBOL code and mapping
> REBOL commands to JAVA commands and executing them?
>

No.  The distinction I'm drawing is between

a)  Writing a compiler (in whatever lanaguage -- that's irrelevant)
that reads REBOL source code and produces standard Java class files
which can be executed using a standard JVM.  That's I was discussing
in the first section above.

b)  Writing a REBOL intepreter IN Java  -- i.e., a Java program that
reads REBOL source code, pars

[REBOL] Compiler for Rebol ? Re:(14)

2000-09-27 Thread petr . krenzelok


- Original Message -
From: <[EMAIL PROTECTED]>
To: <[EMAIL PROTECTED]>
Sent: Wednesday, September 27, 2000 5:21 PM
Subject: [REBOL] Compiler for Rebol ? Re:(13)


> On 9/28/2000 at 12:22 AM [EMAIL PROTECTED] wrote:
> > By an interpreter I take it you mean parsing REBOL code and mapping
> REBOL commands to JAVA commands and executing them?
>
> A working example of this product category might be the jPhython
> project < http://jpython.org/ >.
>
> Like REBOL, Python is an interpreted scripting language. jPython does
> what you might expect, interpret Python code and spit out bytecodes to
> the JVM, much like cPython would interpret Python and spit machine code
> to the processor.
>
> There's not a snowball's chance of this happening, but if it did, it
> would mean you could encapsulate REBOL scripts within Java programs.
>
> Of course, there may be performance trade-offs, since many JVM's are
> pokey. Using a high-performance Java configuration, people have matched
> benchmarks between jPython and cPython (the conventional C
> implementation). Though, in practice, jPhython is said to be 2.5x
> slower than the mature cPython compiler.

You will have the smallest jvm with Tao (read some reviews at
www.amigasdk.com), and if REBOL/View will run with tao, you run with Java
:-) ...

-pekr-
>
> -Ted.




[REBOL] Compiler for Rebol ? Re:(13)

2000-09-27 Thread news . ted

On 9/28/2000 at 12:22 AM [EMAIL PROTECTED] wrote:
> By an interpreter I take it you mean parsing REBOL code and mapping
REBOL commands to JAVA commands and executing them?

A working example of this product category might be the jPhython
project < http://jpython.org/ >. 

Like REBOL, Python is an interpreted scripting language. jPython does
what you might expect, interpret Python code and spit out bytecodes to
the JVM, much like cPython would interpret Python and spit machine code
to the processor. 

There's not a snowball's chance of this happening, but if it did, it
would mean you could encapsulate REBOL scripts within Java programs. 

Of course, there may be performance trade-offs, since many JVM's are
pokey. Using a high-performance Java configuration, people have matched
benchmarks between jPython and cPython (the conventional C
implementation). Though, in practice, jPhython is said to be 2.5x
slower than the mature cPython compiler.

-Ted.




[REBOL] Compiler for Rebol ? Re:(12)

2000-09-27 Thread handy

> No flaming from me; just puzzled head-scratching.  It's not clear to me
> that REBOL and Java are conceptually close enough to be ABLE to compile
> REBOL directly into Java bytecode.

Im taking a guess here, but it seems you are thinking at a much higher level
than I am.
Theoretically conversion from REBOL to bytecode doesnt require any
syntactic/semantic resemblance to Java, merely a mapping of REBOL functions
to bytecode sequences.

Further, this conversion would be somewhat simplified by the fact that the
bytecodes are
much more finite than the language that it is compiled from (an analogy:
c -> RISC assembler),
creating less mapping possibilities, making it a simpler conversion process.

Im afraid that I am new to both languages and cant adequately go into detail
on the points you raised...BUT:

> It would certainly be possible to create a REBOL interpreter written
> in Java, but that's not what I understood you to be suggesting (and
> my experience with Java suggests that it would run like a pig on
> tranquilizers...)

This process would entail roughly the steps I am talking about! ...albiet at
the language level, not the bytecode level (but you can always go from
lang->bytecode so...)  By an interpreter I take it you mean parsing REBOL
code and mapping REBOL commands to JAVA commands and executing them?
Does this not represent a roughly adequate conversion process?  That is,
store the commands as opposed to executing them (and maintain a variable's
dynamic nature), and then compile the resulting source (it would be shocking
source - probably all linear)?  Then were home & hosed ... compile to
bytecode and to native machine code (if need be - yes i am aware of the
design violations this incurrs but ... :)
Although I do admit it would be extremely hard to achieve dynamic generation
and resultant execution of code ... eg #1 on your list ... hmmm :)

AndrewH




[REBOL] Antwort: Antwort: Compiler for Rebol ? Re:(11)

2000-09-26 Thread Sharriff . Aina


>can easily be extended to REBOL/View and REBOL/Core should we decide to do
>this at some point.

Sounds okay, but whats with the "should we decide to..." I take this as as
chance that a wrapper for Core might not see the light of day. All the same
it still won´t stop some Rebol guru from implementing something of the
sort. The necessity is definately there when one writes applications on
which a firm/individual bases its/his/her market value on...



Sharriff Aina
med.iq information & quality in healthcare AG
Gutenbergstr. 42
41564 Kaarst
tel.: 02131-3669-0
fax: 02131-3669-599
www.med-iq.de




[REBOL] Compiler for Rebol ? Re:(12)

2000-09-26 Thread gmassar

Why not a rebol converter, also? The converter converts any Rebol
scripts to some standard language such as ANSI C or ISO Pascal
(preferrable). Then use a fast compiler to compile the converted code.
You got high-speed executables!

Note: we already have JCC and PY2PAS, Java converter to C and Python
converter to Pascal (Free Pascal) respectively.

Links:
  http://www.geocities.com/CapeCanaveral/Hangar/4040/jcc.html
  http://www.spam.ee/~andreie/software/py2pas/english-index.html

Geo...

[EMAIL PROTECTED] wrote:
> 
> why not a rebol plugin, instead ?
> so your favorite browser would have a rebol interpreter inside and so the
> ability to run .r script on the client side...




[REBOL] Compiler for Rebol ? Re:(12)

2000-09-26 Thread bciceron


why not a rebol plugin, instead ?
so your favorite browser would have a rebol interpreter inside and so the
ability to run .r script on the client side...




[REBOL] Compiler for Rebol ? Re:(11)

2000-09-26 Thread joel . neely

No flaming from me; just puzzled head-scratching.  It's not clear to me
that REBOL and Java are conceptually close enough to be ABLE to compile
REBOL directly into Java bytecode.  Some REBOL features could be dealt
with by defining support classes in Java, with appropriate method calls
as the Java equivalent of REBOL words/phrases.  However, there are
REBOL features for which I don't see an obvious JVM representation.
For example:

1) REBOL's refusal to distinguish between data and code, whick allows
   one to construct a block and then  do  that block,

2) REBOL's ability to manipulate contexts,

3) REBOL's class-less view of objects...

It would certainly be possible to create a REBOL interpreter written
in Java, but that's not what I understood you to be suggesting (and
my experience with Java suggests that it would run like a pig on
tranquilizers...)

-jn-

[EMAIL PROTECTED] wrote:
> 
> (im not sure if this has already been talked about but ...)
> 
> You know what would be really cool?  If the Rebol compiler compiled to Java
> bytecodes!
> 
> ...now hold your horses...
> 
> Apart from the obvious platform benefits (which i *know* rebol already has):
> 1) Theres already a lot of support for Java and all related technologies
> 2) Rebol could utilise some of the Java popularity<->support to bring rebol
> into the mainstream
> 3) There are native language compilers for Java bytecodes >:)  (eg GCJ)
> 
> -- But its just an idea ... why can i sense a flame coming my way? :)
> 
> AndrewH
>




[REBOL] Antwort: Compiler for Rebol ? Re:(11)

2000-09-26 Thread Al . Bri

Sharriff Aina wrote:
> I can see it coming, somebody would write a wrapper or compiler for REBOL
one day.

I don't know about the compiler, but the wrapper is available from Rebol
now! Read what Bo sent to me:


(Regarding REBOL Helpdesk #4466)

Andrew,

Here is a snippet from our REBOL/Command press release:

  Ukiah, CA - September 21, 2000 - REBOL Technologies today announced the
availability of REBOL/Command 1.0, a commercial extension to its leading
Internet application development product REBOL/Core 2.3. REBOL/Command 1.0
enables developers to extend their REBOL language-based applications by
integrating them with popular platform-specific libraries, tools, 3rd party
applications and databases. REBOL/Command Runtime, which will be released
next month, will enable developers to encapsulate their REBOL applications
for distribution to their customers.

By 'encapsulate', we mean that you can write a script and distribute it with
the REBOL/Command binary.  The source code to the script cannot be seen and
the binary cannot run any scripts other than the one that is encapsulated
with it and the scripts that are called from within that script.  It will
most likely be sold on a number-of-units-distributed license.  This same
scheme
can easily be extended to REBOL/View and REBOL/Core should we decide to do
this at some point.

If you have any additional questions/comments/suggestions, please let us
know!



Note the "Encapsulate" part.

Andrew Martin
ICQ: 26227169
http://members.nbci.com/AndrewMartin/
http://members.xoom.com/AndrewMartin/
-><-




[REBOL] Compiler for Rebol ? Re:(7)

2000-09-26 Thread ptretter

I believe the best option for the masses would be to just be able to make
native! those functions that expose the performance or characteristic of the
finished script.  Seems the easiest approach and should accomplish the goal.
Maybe the make native! function would have some algorithm that unlock the
code that the programmer only knows.  Do I sounds out of my mind here?

Paul Tretter

-Original Message-
From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]]
Sent: Sunday, September 24, 2000 11:08 AM
To: [EMAIL PROTECTED]
Subject: [REBOL] Compiler for Rebol ? Re:(6)



> As long as his support for   As long as his support for
> that environment doesn't that approach doesn't
> FORCE ME to use it when IFORCE ME to use it when I
> choose not to.   choose not to.

Right, thats my opinion too, but by using compile to hide the source we
would
loose the ability to acces code at runtime of compiled code.
Coming from CommonLisp I think this would be very bad - we would
give away a really important feature!


> Carl's support for MS operating systems doesn't keep me from
> using any of several varieties of Unix/Linux (except Debian, but
> that's another issue!), MacOS, etc.

I never said something against this fact.

> > I hope this explaines a little bit more what I wanted to say.
>
> And, of course, all of the above discussion ignores other quite
> legitimate reasons for wanting some sort of pre-processed form
> of code:  performance (which you mentioned in an earlier post),
> reduced run-time overhead (no need to parse/translate/compile,
> potentially fewer moving parts in the distributed product,
> potentially simpler set up, etc.), simpler/faster distribution
> ("object" is typically smaller than "source", making it faster
> to download/copy/install, etc.)

Yes that's the point!
_I_ would prefer using compilation (native, bytecode or whatever)
for making the code more efficient and smaller. But I do _not_ want to
loose runtime accessibility to the code.

Regards,
Jochen Schmidt




[REBOL] Re: a GC bug of the second kind Re:

2000-09-26 Thread blazs

Hello [EMAIL PROTECTED]

On 25-Sep-00, [EMAIL PROTECTED] wrote:
> 
>> Jeff already signaled, that List! and Hash! datatypes are being
>> fixed. I
> succeeded to track down the behaviour to the following:
>> 
>> h: make hash! 0
>> insert h copy "0123456789"
>> h
>> recycle
>> insert h copy "0123456789"
>> CRASH!
>> 
>> just in case you didn't know...
> 
> It does the same in this Rebol version:
> 
> REBOL/View 0.10.34.3.1 23-Sep-2000
> Copyright 2000 REBOL Technologies.  All rights reserved.
>>> 
> 
> REBOL caused an invalid page fault in module MSVCRT.DLL at
> 015f:78010cc8. Registers:
> EAX=00ff CS=015f EIP=78010cc8 EFLGS=00010206 EBX=006e03c4
> SS=0167 ESP=0069fc00 EBP=0069fc2c ECX=0003 DS=0167 ESI=bad1bad1
> FS=72cf EDX=0805 ES=0167 EDI=bad1bad1 GS= Bytes at CS:EIP:
> 88 07 47 49 0f 84 57 03 ff ff eb f4 8b 44 24 04 Stack dump:
> 0072da9c 0043058c bad1bad1  0808 006b20e4 0072da9c
> 004349c7 006e29d0 00c00270 0069fc70 0069fc70 0043055a 0072da9c
> 006b20e4 00743088
> 
> Andrew Martin
> ICQ: 26227169
> http://members.nbci.com/AndrewMartin/
> http://members.xoom.com/AndrewMartin/
> -><-
> 

The Amiga version produced the following result:
>> h: make hash! 0
== make hash! []
>> insert h copy "0123456789"
== make hash! []
>> recycle
>> insert h copy "0123456789"
== make hash! ["0123456789"]
>> rebol/version
== 0.10.31.1.1
>> 

No crash here =] ... looks like a problem with the memory handling of
Windoze?

Regards
Blaz




[REBOL] Antwort: Compiler for Rebol ? Re:(10)

2000-09-26 Thread Sharriff . Aina


I can see it coming, somebody would write a wrapper or compiler for REBOL
one day.

Sharriff Aina
med.iq information & quality in healthcare AG
Gutenbergstr. 42
41564 Kaarst
tel.: 02131-3669-0
fax: 02131-3669-599
www.med-iq.de




[REBOL] Compiler for Rebol ? Re:(10)

2000-09-26 Thread handy

(im not sure if this has already been talked about but ...)

You know what would be really cool?  If the Rebol compiler compiled to Java
bytecodes!

...now hold your horses...

Apart from the obvious platform benefits (which i *know* rebol already has):
1) Theres already a lot of support for Java and all related technologies
2) Rebol could utilise some of the Java popularity<->support to bring rebol
into the mainstream
3) There are native language compilers for Java bytecodes >:)  (eg GCJ)

-- But its just an idea ... why can i sense a flame coming my way? :)

AndrewH

- Original Message -
From: <[EMAIL PROTECTED]>
To: <[EMAIL PROTECTED]>
Sent: Monday, September 25, 2000 11:05 PM
Subject: [REBOL] Compiler for Rebol ? Re:(9)


> Under the heading compare and contrast, I would offer the following
> clips from the Python FAQ-o-Matic. While a popular topic for
> speculation, I don't believe whether or how the REBOL interpreter
> precompiles code has never been clarified. Of course, Carl's recent
> mention of the mysterious 'compile keyword implies something like this
> is taking place behind the scenes (and could then ultimately be
> exposed).
>
> ---
>
> 6.13. Can Python be compiled to machine code, C or some other language?
>
> Not easily. Python's high level data types, dynamic typing of objects
> and run-time invocation of the interpreter (using eval() or
> exec) together mean that a "compiled" Python program would probably
> consist mostly of calls into the Python run-time system,
> even for seemingly simple operations like "x+1".
>
> Several projects described in the Python newsgroup or at past Python
> conferences have shown that this approach is feasible,
> although the speedups reached so far are only modest (e.g. 2x). JPython
> uses the same strategy for compiling to Java
> bytecode. (Jim Hugunin has demonstrated that in combination with
> whole-program analysis, speedups of 1000x are feasible for
> small demo programs. See the website for the 1997 Python conference.)
>
> Internally, Python source code is always translated into a "virtual
> machine code" or "byte code" representation before it is
> interpreted (by the "Python virtual machine" or "bytecode
> interpreter"). In order to avoid the overhead of parsing and
> translating
> modules that rarely change over and over again, this byte code is
> written on a file whose name ends in ".pyc" whenever a
> module is parsed (from a file whose name ends in ".py"). When the
> corresponding .py file is changed, it is parsed and translated
> again and the .pyc file is rewritten.
>
> There is no performance difference once the .pyc file has been loaded
> (the bytecode read from the .pyc file is exactly the same
> as the bytecode created by direct translation). The only difference is
> that loading code from a .pyc file is faster than parsing and
> translating a .py file, so the presence of precompiled .pyc files will
> generally improve start-up time of Python scripts. If desired,
> the Lib/compileall.py module/script can be used to force creation of
> valid .pyc files for a given set of modules.
>
> Note that the main script executed by Python, even if its filename ends
> in .py, is not compiled to a .pyc file. It is compiled to
> bytecode, but the bytecode is not saved to a file.
>
> If you are looking for a way to translate Python programs in order to
> distribute them in binary form, without the need to
> distribute the interpreter and library as well, have a look at the
> freeze.py script in the Tools/freeze directory. This creates a
> single binary file incorporating your program, the Python interpreter,
> and those parts of the Python library that are needed by
> your program. Of course, the resulting binary will only run on the same
> type of platform as that used to create it.
>
> 4.93. How do I compile a Python application to a stand-alone program?
>
> Even though there are Python compilers being developed, you probably
> don't need a real compiler, if all you want is a
> stand-alone program. There are three solutions to that.
>
> One is to use the freeze tool, which is included in the Python source
> tree as Tools/freeze. It converts Python byte code to C
> arrays. Using a C compiler, you can embed all your modules into a new
> program, which is then linked with the standard Python
> modules.
>
> On Windows, another alternative exists which does not require a C
> compiler. Christian Tismer's SQFREEZE
> (http://starship.python.net/crew/pirx/) appends the byte code to a
> specially-prepared Python interpreter, which will find the byte
> code in executable.
>
> Gordon McMilli

[REBOL] Re: Philosophical (was "UnRebolish") commentary

2000-09-26 Thread joel . neely

> [EMAIL PROTECTED] wrote:
> ... Do not
> attempt to do anything more serious than a napkin sketch of this
> method without the supervision of an adult or perhaps an attending
> physician unless you wish to go numerically mad with something akin to
> a division by zero.
> 

ROTFL!

>
> Thanks for the feedback, ...
>

Thanks for the question!

>
> it was most enlightening and informative.
> 

... and fun!  AFAIAC, it provided a welcome break from a very
frustrating network infrastructure problem.  Also, by concidence,
it arrived the same day I found the following link:

http://www.cs.utexas.edu/users/EWD/

to a page bearing the title

In Pursuit of Simplicity
  the manuscripts of
  Edsger W. Dijkstra

[If you don't want to bother with reading the remainder of this
 note, please feel free to skip it.  But PLEASE don't skip the
 opportunity to look through the collection of papers under the
 above page!]


For those who've had the pleasure of reading his EWD series, this
site is a MAJOR treat.  Dijkstra is a world-class thinker and
writer in computing science whose entire career is been marked
by the pursuit of simplicity and elegance in the description and
design of algorithms and proofs.

Although his writings are off the beaten track, and though he
uses his own notation for some things, and though he can be very
intellectually demanding (all of which remind me of REBOL),
almost everything he has written has hidden rewards to the reader
who is patient enough to work through it.


His contributions to programming include such crown jewels as:

* invention of the "semaphore", now widely used as a means of
  synchronizing concurrent threads/processes,

* the eponymous algorithm for finding the shortest path
  between two points in a graph, 

* the first clear description of using a stack to support
  procedure scoping/entry/exit (created during early
  implementation efforts for Algol 60!),

* a lovely, minimalist, nondeterministic programming notation
  used for the design and proof of programs (a small part of
  which I implemented in REBOL a few months back with great
  assistance from the members of this list -- the EWD/if and
  EWD/do selection and iteration structures).

He is probably best known to the larger programming community
as the author of the letter published under the title,
"go to Considered Harmful" in the Communications of the ACM,
which (for good or ill) is usually credited as the spark that
ignited the "structured programming" movement (although he should
not be blamed for all of the things that have been done under the
cover of that banner!)


His career-long pursuit of beauty as a prime criterion of quality
in programming strikes me as wholly aligned with what I perceive
as "the spirit of REBOL" (and I'm not saying that just to
achieve ob-REBOL-relevance ;-)  In particular, let me recommend
that you give a close (and patient! ;-) reading to

http://www.cs.utexas.edu/users/EWD/MCReps/MR34.PDF

which -- although written in 1961 (!) -- states forcefully that
it is the responsibility of a programming language to assist
the programmer in clearly stating reliable algorithms, and that
this responsibility is more fundamental than simply minimizing
CPU cycles or memory bytes.  [Over-simplified araphrase, and any
errors therein, are my fault.]

Dijkstra's forceful, uncomprimising, artistic personality and
attitude appear almost quixotic (in the fullest sense! ;-),
especially when he tackles none-too-subtly the behavior of
IBM (the Microsoft of the 60s and 70s).  His article entitled,
"How do we tell truths that might hurt?", available at

 http://www.cs.utexas.edu/users/EWD/ewd04xx/EWD498.PDF

(from 1975) is a collection of pointed sayings including:

"The problems of business administration in general
 and data base management in particular are much too
 difficult for people that think in IBMerese, com-
 pounded with sloppy English."

"Many companies that have made themselves dependent
 on IBM-equipment (and in doing so have sold their
 soul to the devil) will collapse under the sheer
 weight of the unmastered complexity of their data
 processing systems."

and (the last quotation -- I promise!) one that deserves to
be tatooed on the forehead of every programmer (and inside
the eyelids of every programming language designer!)

"The tools we use have a profound (and devious!)
 influence on our thinking habits, and, therefore,
 on our thinking abilities."

The experience of over 25 years' of exposure to Dijkstra's ideas
is one of the most fundamental reasons why I appreciate REBOL as
much as I do -- and probably also why I sometimes come off as
such a curmudgeon!  I'd be flattered if either caused someone
to think of Edsger!

-jn-




[REBOL] Re: Console size...

2000-09-26 Thread Johan . Forsberg . 6117

Hello Malte,

On 26-Sep-00, [EMAIL PROTECTED] wrote:
> Escape code for retrieving console-size doesn't work anymore does
> it? So, is there an alternate way of getting those values except
> waiting for input from the console port? (Which seems to be waiting
> in vain as of now..)

I had the same problem, but isolated it to my using 'copy on the
console port to retrieve the result. 'read-io worked better, but
'copy started working again when I added the /no-wait switch to
'open. I don't think this refinement was there before, perhaps the
behaviour of 'open has changed recently? I seem to remember that
using 'read-io is discouraged by RT, so that way is probably better.


> Specifying on which x and y values to print still work, but is quite
> unuseful without the knowledge of the console's size..

I don't think the colsope port's behaviour has changed, my old
scripts work again using /no-wait on 'open, anyway.
--

Johan Forsberg




[REBOL] Re: XML parsing / XMLRPC Re:

2000-09-25 Thread rebol

Hello Chris,

On 25-Sep-00, you wrote:

>> Hello everybody,
>> 
>> I've uploaded a few scripts that adds some XMLRPC functionality to REBOL
>> XML parsing function to my (brand new!) REBOL section at
> http://www.obscure.dk/rebol/
> 
> Hey cool! Now we've got two XML-RPC libs for REBOL ;-)

Cool! Maybe we should exchange notes :-)

> Mine (client and cgi-based server) lives and breathes at:
> http://www.langreiter.com/space/RXR

Just had a peek, pretty cool!
I'll look closer into it later.

> Now, shouldn't we try to implement SOAP together?

I really havn't looked much into SOAP, but it seems pretty cool.
I'm going to be rather busy at work this week, but after that, maybe we could discuss 
this again ?

> Bye and congrats,
> Chris


Best regards
Thomas Jensen





[REBOL] Compiler for Rebol ? Re:(7)

2000-09-25 Thread joel . neely

[EMAIL PROTECTED] wrote:
> 
> Quoting [EMAIL PROTECTED] ([EMAIL PROTECTED]):
> 
> > Carl's support for MS operating systems doesn't keep me from
> > using any of several varieties of Unix/Linux (except Debian, but
> > that's another issue!), MacOS, etc.
> 
> What's wrong with Debian? I am just being curious because that is the
> distribution I am using...
> 
> - Jussi
> 

I arranged to make a presentation a few weeks ago to the local Linux
users' group.  That group meets after hours in the local headquarters
of a national-scale company, with employees of that company bringing
their own boxen into the auditorium and setting up network, video
projection, etc. before each mtg.

I had previously done a presentation on REBOL (well received BTW) using
a box running RedHat 6.whatever.  THIS time, the box set up for the mtg
was running Debian.  Both the public beta of /View and the current rlse
of /Core blew up instead of running.  I tap-danced furiously, and did a
few minutes on XML.  I didn't report it at the time because the box was
actually running Debian Unstable, and assumed that maybe the guy who
set it up was just a little too close to the edge.  Also, it wasn't my
box (and I was on the stage...) so I couldn't spend too much time
poking around.

Since then, I've seen traffic on this list indicating that others have
had problems with REBOL on Debian, so perhaps my experience wasn't so
unique or box-owner-dependent after all???

-jn-




[REBOL] Compiler for Rebol ? Re:(6)

2000-09-25 Thread jhagman

Quoting [EMAIL PROTECTED] ([EMAIL PROTECTED]):
 
> Carl's support for MS operating systems doesn't keep me from
> using any of several varieties of Unix/Linux (except Debian, but
> that's another issue!), MacOS, etc.

What's wrong with Debian? I am just being curious because that is the
distribution I am using...

- Jussi

-- 
Jussi HagmanCS in Åbo Akademi University
Studentbyn 4 D 33   [EMAIL PROTECTED]
20540 Åbo   [EMAIL PROTECTED]
Finland




[REBOL] jREBOL (was Compiler for Rebol ? Re:(9))

2000-09-25 Thread hopeless

> In REBOL's case, I'd also mention that Java has support for many
> mundane features, like printing, that REBOL now lacks, not to mention
> other niceities like PDA sychronization. So if there were a
> jREBOL.class, and I ran into a feature-gap, I could put a Java wrapper
> around it and move forward.
>
> There would also be the part about distributing my application in Java
> bytecode, to hide the source.
>
> -Ted.

Indeed.  There is such a huge amount of API's available for Java that it
seems such a shame to ignore it. On the other hand jPython (AFAIK) is mostly
used for scripting java objects, in particular for embedded scripting within
aplications and for testing purposes.  i.e. Python->Java.  Whether REBOL is
suitable for this role I doubt.

But with REBOL you can do things like parsing and internet functionality
much easier than in Java so typically it would be useful doing Java->REBOL.
This is slightly different to the typical uses of JPython (let me know if
I'm completely wrong on this one).  The solution suggested a while back
involved running a REBOL server and using TCP/IP sockets to communicate from
Java to REBOL.  Imaginative but still ugly and possibly slow (I'll be trying
it out soon hopefully).  Ideally a Java Native Interface to REBOL would be
nice but platform-specific so we can discount it.  Perhaps there is no
better way ;-(

Jamie




[REBOL] Compiler for Rebol ? Re:(9)

2000-09-25 Thread news . ted

Under the heading compare and contrast, I would offer the following
clips from the Python FAQ-o-Matic. While a popular topic for
speculation, I don't believe whether or how the REBOL interpreter
precompiles code has never been clarified. Of course, Carl's recent
mention of the mysterious 'compile keyword implies something like this
is taking place behind the scenes (and could then ultimately be
exposed).

---

6.13. Can Python be compiled to machine code, C or some other language?

Not easily. Python's high level data types, dynamic typing of objects
and run-time invocation of the interpreter (using eval() or
exec) together mean that a "compiled" Python program would probably
consist mostly of calls into the Python run-time system,
even for seemingly simple operations like "x+1". 

Several projects described in the Python newsgroup or at past Python
conferences have shown that this approach is feasible,
although the speedups reached so far are only modest (e.g. 2x). JPython
uses the same strategy for compiling to Java
bytecode. (Jim Hugunin has demonstrated that in combination with
whole-program analysis, speedups of 1000x are feasible for
small demo programs. See the website for the 1997 Python conference.) 

Internally, Python source code is always translated into a "virtual
machine code" or "byte code" representation before it is
interpreted (by the "Python virtual machine" or "bytecode
interpreter"). In order to avoid the overhead of parsing and
translating
modules that rarely change over and over again, this byte code is
written on a file whose name ends in ".pyc" whenever a
module is parsed (from a file whose name ends in ".py"). When the
corresponding .py file is changed, it is parsed and translated
again and the .pyc file is rewritten. 

There is no performance difference once the .pyc file has been loaded
(the bytecode read from the .pyc file is exactly the same
as the bytecode created by direct translation). The only difference is
that loading code from a .pyc file is faster than parsing and
translating a .py file, so the presence of precompiled .pyc files will
generally improve start-up time of Python scripts. If desired,
the Lib/compileall.py module/script can be used to force creation of
valid .pyc files for a given set of modules. 

Note that the main script executed by Python, even if its filename ends
in .py, is not compiled to a .pyc file. It is compiled to
bytecode, but the bytecode is not saved to a file. 

If you are looking for a way to translate Python programs in order to
distribute them in binary form, without the need to
distribute the interpreter and library as well, have a look at the
freeze.py script in the Tools/freeze directory. This creates a
single binary file incorporating your program, the Python interpreter,
and those parts of the Python library that are needed by
your program. Of course, the resulting binary will only run on the same
type of platform as that used to create it. 

4.93. How do I compile a Python application to a stand-alone program?

Even though there are Python compilers being developed, you probably
don't need a real compiler, if all you want is a
stand-alone program. There are three solutions to that. 

One is to use the freeze tool, which is included in the Python source
tree as Tools/freeze. It converts Python byte code to C
arrays. Using a C compiler, you can embed all your modules into a new
program, which is then linked with the standard Python
modules. 

On Windows, another alternative exists which does not require a C
compiler. Christian Tismer's SQFREEZE
(http://starship.python.net/crew/pirx/) appends the byte code to a
specially-prepared Python interpreter, which will find the byte
code in executable. 

Gordon McMillian offers with Installer
(http://starship.python.net/crew/gmcm/distribute.html) a third
alternative, which works
similar to SQFREEZE, but allows to include arbitraty additional files
in the stand-alone binary as well. 

---

A while back, someone asked about a Java implementation of REBOL. The
idea was dismissed in general since the REBOL binary is available for
all Java platforms (and then some), and an imaginative Java to REBOL
workaround was posted. Here's how the JPython group <
http://jpython.org > justified their project: 

--

Embedded scripting - Java programmers can add the JPython libraries to
their system to allow end users to write simple or complicated scripts
that add functionality to the application. Since JPython is certified
100% Pure Java, it can be added to an application without fear of
compromising its ability to run on all Java platforms. 

Interactive experimentation - JPython provides an interactive
interpreter that can be used to interact with Java packages or with
running Java applications. This allows programmers to experiment and
debug any Java system using JPython. 

Rapid application development - Python programs are typically 2-10X
shorter than theequivalent Java program. This translates directly to

[REBOL] Re: Over 40 Platforms make for good press, but.... Re:(5)

2000-09-24 Thread carl

On 25-Sep-00, [EMAIL PROTECTED] wrote:

> Tell me.  What killer app, what "must have" will any
> new OS bring that won't be ported by Gates and others
> within weeks as they did with browsers, e-mail,
> servers etc.?  But with one HUGE difference.  The new
> OS starts off with 0% of the market share, while the
> others, 100 %.

But a new OS that can run cross-platforn apps, (Java, REBOL, any
number of others in the future), won't be starting off with 0% market
share, will it?




[REBOL] Re: Unsubcribe - but how?

2000-09-24 Thread carl

On 25-Sep-00, [EMAIL PROTECTED] wrote:

> Sorry for this, but:

> How do I unsubscribe from this list. I've tried all the usual
> things, and I don't even get a reply.

This is the Welcome email I received.  I assume unsubscribe still
works as stated...

---8<---

Welcome to the REBOL email list.

Thanks for joining in the discussion.  This email
list is run by a REBOL script named SELMA: Simple
Email List-Managing Applet.

Here is some helpful information:

Commands to REBOL SELMA are given on the subject
line of your message. These commands are currently
supported:

  help - get this information
  suggest - make a suggestion about the list
  selma-source - get the current source code to SELMA
  get msg N - send yourself message #N
  subscribe - add yourself to the list
  unsubscribe - remove yourself from the list

No other commands are provided at this time.

-SELMA




[REBOL] Compiler for Rebol ? Re:(6)

2000-09-24 Thread siegel

At 05:31 p.m. 24/09/00 +0200, you wrote:

>Have you ever tried the 5.2 release? (A whole bunch of changes)

It's a 40 mb download (I think). the last one was arduous. This is Mexico. 
Then comes Cancun, which is at the end of the line, believe me. I keep 
meaning to get the CD, but other things come first  -- like a new 
harddrive. we run a tight ship here at Siegel & Children Third World Slave 
Labor Writing Industries SA de CV.


--
JULES SIEGEL Apdo 1764 Cancun Q. Roo 77501
http://www.cafecancun.com Fax1.530.706.8739 Tel 1.52.98 83.36.29




[REBOL] Compiler for Rebol ? Re:(8)

2000-09-24 Thread lmecir

Well, let me throw in some thoughts.

I think, that the debate started to look more abstract than I prefer. My
comments are:

1) Rebol is IMHO designed with the runtime code accessibility in mind
(inspired by Lisp), so I do not think, there's an easy way to convert that
feature to its opposite.

2) I prefer the speed when compilation is considered, the source code
protection is only a minor effect surely achievable by more direct means
(discussed by Joel some time ago).
2a) When I look at the development in processor speeds (GHz looking as
standard for year 2001 processors) and the neverstopping need to increase
processor speeds, it is surely less preferable to write programs 100 or more
times slower than C in some cases, so the speed is something any language
including Rebol could use.
2b) Rebol with its mutable values used to store code radically differs even
from Lisp, that uses immutable series for that AFAIK. That fact has
immediate consequences - Self Modifying Code looks as standard - even some
basic Rebol constructs are modifying, eg:

2ba) Use - modifies its (code) block argument (this causes even "unexpected"
behaviour when recursive functions are called) and causes its code block
argument very hard to compile when speed is the goal

2bb) Make object! - modifies its (code) block argument - see above

2bc) Bind - modifying, as opposed to Bind/copy, which behaves better

2bd) any mutables contained in the code aren't protected against change - no
compilation advantage

2be) the code block can easily modify itself - a feature making compilation
almost impractical

Not trying to criticize, just to discuss the possibilities. What do you
think?
Ladislav

- Original Message -
From: <[EMAIL PROTECTED]>
To: <[EMAIL PROTECTED]>
Sent: Sunday, September 24, 2000 7:24 PM
Subject: [REBOL] Compiler for Rebol ? Re:(7)


> [EMAIL PROTECTED] wrote:
> >
> > Right, thats my opinion too, but by using compile to hide the
> > source we would loose the ability to acces code at runtime of
> > compiled code. Coming from CommonLisp I think this would be
> > very bad - we would give away a really important feature!
> >
>
> I don't want to belabor this point unnecessrily (I probably
> have!), but I do NOT agree with casting this issue as a value
> judgement over an option which other languages provide the
> developer.
>
> If you (or your company) takes the policy position that you
> will never buy/license any software that comes without source,
> that's your right!  (And if that means that you therefore can't
> use some products because they don't come with that option...
> well, you had the choice, so you get the consequences.)
>
> EQUALLY IMPORTANT IS THE DEVELOPERS RIGHT TO CHOOSE...
>
> If some developer creates a product for which he/she chooses not
> to distribute the source, that's his/her right!  (And if that
> means that she/he loses some sales to people who require source
> as a precondition... well, she/he had the choice, so she/he gets
> the consequences.)
>
> EITHER WAY, that's what free markets are about.
>
> But to pre-empt EITHER the consumers' or developers' rights to
> choose how they will do business by creating a development
> environment (or a political environment or an economic one...)
> that gives all the rights of choice to one party (or by
> institutionalizing that party's choice so that it isn't even
> a choice any longer) is to prevent the market from working
> such things out on a case by case basis -- which I believe to
> be the fairest mechanism in the long run.
>
> >
> > > Carl's support for MS operating systems doesn't keep me from
> > > using any of several varieties of Unix/Linux (except Debian, but
> > > that's another issue!), MacOS, etc.
> >
> > I never said something against this fact.
> >
>
> You didn't, and I didn't mean to imply that you had.
>
> I was using the "choice of O/S" issue (which I think we all
> agree is a Good Thing) to try to illustrate why I think the
> "choice of distribution form" is also a Good Thing.
>
> >
> > _I_ would prefer using compilation (native, bytecode or whatever)
> > for making the code more efficient and smaller.
> >
>
> And I wholeheartedly support any steps which allow you that choice!
>
> >
> > But I do _not_ want to loose runtime accessibility to the code.
> >
>
> And that, also, is your choice.  You have a perfect right to make
> that a condition of doing business with you.  However, I don't
> support making that a constraint on how everybody can conduct their
> affairs, when they are NOT doing business with you.  That's THEIR
> choice!
>
> -jn-
>
>
>





[REBOL] Compiler for Rebol ? Re:(7)

2000-09-24 Thread joel . neely

[EMAIL PROTECTED] wrote:
> 
> Right, thats my opinion too, but by using compile to hide the
> source we would loose the ability to acces code at runtime of
> compiled code. Coming from CommonLisp I think this would be
> very bad - we would give away a really important feature!
>

I don't want to belabor this point unnecessrily (I probably
have!), but I do NOT agree with casting this issue as a value
judgement over an option which other languages provide the
developer.

If you (or your company) takes the policy position that you
will never buy/license any software that comes without source,
that's your right!  (And if that means that you therefore can't
use some products because they don't come with that option...
well, you had the choice, so you get the consequences.)

EQUALLY IMPORTANT IS THE DEVELOPERS RIGHT TO CHOOSE...

If some developer creates a product for which he/she chooses not
to distribute the source, that's his/her right!  (And if that
means that she/he loses some sales to people who require source
as a precondition... well, she/he had the choice, so she/he gets
the consequences.)

EITHER WAY, that's what free markets are about.

But to pre-empt EITHER the consumers' or developers' rights to
choose how they will do business by creating a development
environment (or a political environment or an economic one...)
that gives all the rights of choice to one party (or by
institutionalizing that party's choice so that it isn't even
a choice any longer) is to prevent the market from working
such things out on a case by case basis -- which I believe to
be the fairest mechanism in the long run.

> 
> > Carl's support for MS operating systems doesn't keep me from
> > using any of several varieties of Unix/Linux (except Debian, but
> > that's another issue!), MacOS, etc.
> 
> I never said something against this fact.
>

You didn't, and I didn't mean to imply that you had.

I was using the "choice of O/S" issue (which I think we all
agree is a Good Thing) to try to illustrate why I think the
"choice of distribution form" is also a Good Thing.

> 
> _I_ would prefer using compilation (native, bytecode or whatever)
> for making the code more efficient and smaller.
>

And I wholeheartedly support any steps which allow you that choice!

>
> But I do _not_ want to loose runtime accessibility to the code.
> 

And that, also, is your choice.  You have a perfect right to make
that a condition of doing business with you.  However, I don't
support making that a constraint on how everybody can conduct their
affairs, when they are NOT doing business with you.  That's THEIR
choice!

-jn-




[REBOL] REALLY DISCOVER THE POWER OF REBOL Re:(4)

2000-09-24 Thread mailinglists

Hello,

I'm not much of a programmer, but I've been following Rebol since it was
Lava, and I like the direction it (or RT, or Carl) is taking us.
Currently I'm enjoying Elan's book very much (great writing style,
Elan!), and even though I haven't yet found my a good project for Rebol,
I did manage to whip up a CGI-driven Instant Messenger (sorry folks,
it's dead now =).

I agree with Elan, that Rebol and RT will take us to new directions,
silly as it may sound, I had the chance to play around with a Casio
e-105 running WinCE. It holds great promise for the future, even though
it's very limited right now, these "intelligent" machines will become
very important (excuse the naive tone), and I certainly think embedded
is the future. Even though Rebol is not small enough for embedded now
(it needs an OS), remember what embedded meant ten years ago? Wrist
watches have more RAM nowadays! ;o)

So where is Rebol taking us today? Probably glue highway, for now at
least. But what about tomorrow? Peer-to-peer, wireless, embedded? Who
knows? (If you do, send me an email! ;o)

I guess what I'm trying to say is: Carl won't f*ck something up in four
years that took him 20 years to develop. Don't forget the enthousiasm
you have for Rebol, couldn't possibly compare for Carl's... =)

Good luck to all,
Rachid

- Original Message -
From: <[EMAIL PROTECTED]>
To: <[EMAIL PROTECTED]>
Sent: Thursday, September 21, 2000 23:03
Subject: [REBOL] REALLY DISCOVER THE POWER OF REBOL Re:(3)


> It is a strange beast, indeed.
>
> RT depends on developers to create applications to show that
> REBOL is a viable alternative.
>
> Meanwhile, developers of the open source persuasion see tractor
> application development as RT's responsibility, feeling REBOL itself
> could be maintained by the open source community.
>
> This argument seems to crop up in relation to all sorts of products
> nowadays. It seems "open source" as a marketing element is here to
> stay. Somehow products that are "open source" have become
> attractive to customers in the same way shampoos are attractive
> when they have not been tested on laboratory animals.
>
> Only time will tell whether or not open source software like operating
> systems and programming languages will become the standard vs.
> commercial, closed source options.
>
> I tend to think open source operating systems and programming
> languages WILL become the standard because of how we use them.
> Like electricity, gasoline, etc., they are becoming resources which
> need to be standardized. I see an inherent mistrust of closed source
> products amongst many developers because a closed source
> product can be taken away as quickly as it is given. It's kind of like
> not wanting to commit to a relationship with someone who hides
> things from you. This is how I perceive this behavior, at least.
>
> -Ryan
>
> >Things like Javascript have splintered badly, but that's
> > because they were not Open Source, and vendors implemented their own
> > closed source in different ways. All that happens is that people
like
> > Elan, Gabrial, Lemir, and Joel don't waste time ruminating about how
REBOL
> > is implemented. Rather, they can contribute working code to the
project.
> > Carl would still control what goes into the kernal. But Carl doesn't
want
> > that to happen, and so it won't. Pity, because it might free up some
of
> > his developers to create real-life reference applications, and then
maybe
> > more people would put REBOL to work.
> >
> > -Ted.
> >
>
>
>




[REBOL] Compiler for Rebol ? Re:(6)

2000-09-24 Thread tim

Hi:
I see that we have taken a thread more about
strategy and marketing here, and I hope
rebol team people are reading this.
Interesting thing coming up here... I think.
Koffice (KDE answer to Microsoft Office)
is supposed to provide hooks to a number of
languages, rather than a proprietory VBA
as does MS-Office.

Perhaps Carl and folks should consider looking
into this and perhaps trying to make sure that
Koffice provides such "hooks" for rebol.
I could sure "dig it".

It is reasonable to speculate that in the next
year, in the area that I live in we will see a number
of networks of small organizations running
Windows on top of Linux through something
like Win4Lin. With KOffice there would then
be a cheaper alternative to Microsoft's expensive
Office license. It then follows that a considerable
amount of small-module programming would happen.
I'm already putting together General Purpose modules
for Ms-Access using VBA. I'd rather be doing that
in rebol!
:)
-Tim

[EMAIL PROTECTED] wrote:

> On 9/24/2000 at 6:50 AM [EMAIL PROTECTED] wrote:
> > I think that if there were full attention to these details it would
> be very  successful, as there is a lot to like about the product. It is
> surprisingly useful for web page design, for example, but the weird
> aspects made me leave it after a while.
>
> StarOffice's greatest strength and weakness is the tight integration
> between applications. On one hand, the applications can work together
> in surprizing and useful ways. On the other, it works against the idea
> of someone assembiling their own "best of breed" suite of applicatoins.
> But it would seem a good choice where people are trying hard to
> standardize their corporate desktops.
>
> To give the devil its due, I think the Win32 desktop is a marvelous
> example of integrating applications into a useful work environment.
> (Now, if only the underlying OS wasn't broken.)
>
> -Ted.




[REBOL] Compiler for Rebol ? Re:(6)

2000-09-24 Thread jsc


> As long as his support for   As long as his support for
> that environment doesn't that approach doesn't
> FORCE ME to use it when IFORCE ME to use it when I
> choose not to.   choose not to.

Right, thats my opinion too, but by using compile to hide the source we would
loose the ability to acces code at runtime of compiled code.
Coming from CommonLisp I think this would be very bad - we would
give away a really important feature!


> Carl's support for MS operating systems doesn't keep me from
> using any of several varieties of Unix/Linux (except Debian, but
> that's another issue!), MacOS, etc.

I never said something against this fact.

> > I hope this explaines a little bit more what I wanted to say.
>
> And, of course, all of the above discussion ignores other quite
> legitimate reasons for wanting some sort of pre-processed form
> of code:  performance (which you mentioned in an earlier post),
> reduced run-time overhead (no need to parse/translate/compile,
> potentially fewer moving parts in the distributed product,
> potentially simpler set up, etc.), simpler/faster distribution
> ("object" is typically smaller than "source", making it faster
> to download/copy/install, etc.)

Yes that's the point!
_I_ would prefer using compilation (native, bytecode or whatever)
for making the code more efficient and smaller. But I do _not_ want to
loose runtime accessibility to the code.

Regards,
Jochen Schmidt




[REBOL] Re: Over 40 Platforms make for good press, but.... Re:(2)

2000-09-24 Thread g . santilli

Hello [EMAIL PROTECTED]!

On 24-Set-00, you wrote:

 r> I recently emailed rebol regarding support for R/View on qnx
 r> rtp. They basically said probably, but they haven't decided

They HAVE to port /View on RTP, why else did they partecipate to
the Phoenix consortium?

I'd like to have an intent version too, but while RTP is a reality
(two days away!), the AmigaOE is still rather mysterious. (And I'm
saying that having bought the Amiga SDK.)

I should get the free CD,
Gabriele.
-- 
Gabriele Santilli <[EMAIL PROTECTED]> - Amigan - REBOL programmer
Amiga Group Italia sez. L'Aquila -- http://www.amyresource.it/AGI/




[REBOL] Compiler for Rebol ? Re:(5)

2000-09-24 Thread jsc

On Sun, 24 Sep 2000, you wrote:
> At 07:08 a.m. 24/09/00 -0400, you wrote:
> >This is one reason Sun's StarOffice isn't taking the corporate world by
> >storm -- there isn't a lot of desktop support in place for the product,
> >and that's where people spend the real bucks - training and customization.
>
> I tried it. It's kind of clunky and weird but intriguing. Some of the
> labels are still in a foreign language. First I thought it was German, but
> I think it's Norwegian. The default spell check language is Norwegian. It
> does strange things, such as substituting "/" if you type "--", and it's
> hard to find out why or how to change it.

Hm.. it maybe because I'm German (and StarDivision was a German Vendor) but 
I've nto seen such behavior in last releases.
Have you ever tried the 5.2 release? (A whole bunch of changes)
I like the high grade of integration. Furthermore it has the best 
formula-editor I ever seen in a wordprocessor.

Regards
Jochen Schmidt




[REBOL] Compiler for Rebol ? Re:(5)

2000-09-24 Thread news . ted

On 9/24/2000 at 6:50 AM [EMAIL PROTECTED] wrote:
> I think that if there were full attention to these details it would
be very  successful, as there is a lot to like about the product. It is
surprisingly useful for web page design, for example, but the weird
aspects made me leave it after a while.

StarOffice's greatest strength and weakness is the tight integration
between applications. On one hand, the applications can work together
in surprizing and useful ways. On the other, it works against the idea
of someone assembiling their own "best of breed" suite of applicatoins.
But it would seem a good choice where people are trying hard to
standardize their corporate desktops. 

To give the devil its due, I think the Win32 desktop is a marvelous
example of integrating applications into a useful work environment.
(Now, if only the underlying OS wasn't broken.)

-Ted.




[REBOL] Compiler for Rebol ? Re:(5)

2000-09-24 Thread joel . neely

[EMAIL PROTECTED] wrote:
> 
> On Sun, 24 Sep 2000, you wrote:
... 
> > BOTTOM LINE:  As has been pointed out in the recent "40 platforms"
> > thread, there's a real marketplace out there.  While Carl and
> > company would be within their legal/moral/whatever rights to stop
> > supplying REBOL for w95/98/nt/2k (just to use a hypothetical and
> > totally unlikely example ;-), I'd consider that an impractical
> > decision if the goal is to get REBOL widely adopted.  Similarly,
> > although I applaud/appreciate the legions of excellent developers
> > who contribute to the open source movement, and am a grateful
> > beneficiary of their labors, I question the practicality of
> > refusing to address the concerns of developers who wish to have
> > some other means of distribution than pure source code -- for a
> > variety of reasons.
> 
> I think I have to explain a little more what I meant.
> I did not say RT should stop supplying Win.. Platforms with their
> fantastic tools!!! It is important for RT and  the REBOL-Comunity
> that REBOL evolves to a widely used language.
> What I said was much more general than it obviously seemed.
> 

My reference to msxxx was only an analogy.  Let me try to do better
at drawing the parallel:

Regardless of what I think ofRegardless of what I think of a
the Windows environment, there   Closed-Source approach, there
are many people who prefer itare many people who prefer it
or who have constraints that or who have constraints that
force them to use it.force them to use it.

Any language that fails to   Any language that fails to
address their desires/needs  address their desires/needs
will limit its acceptance.   will limit its acceptance.

Regardless of my personalRegardless of my personal
views on that environment, I views on that approach, I
believe the language designerbelieve the language designer
should consider the desires/ should consider the desires/
needs of the group above, or needs of the group above, or
risk limiting his language's risk limiting his language's
growth and acceptance.   growth and acceptance.

As long as his support for   As long as his support for
that environment doesn't that approach doesn't
FORCE ME to use it when IFORCE ME to use it when I
choose not to.   choose not to.

Carl's support for MS operating systems doesn't keep me from
using any of several varieties of Unix/Linux (except Debian, but
that's another issue!), MacOS, etc.

If Carl chose to give us a way to compile, tokenize, convert-to-
byte-code, or whatever, as a way to deliver executable REBOL
scripts in a form that does not immediatly disclose the source
code (whatever the reaons!), that wouldn't keep anyone who wished
to do so from supplying source code.

>
> What I wanted to say is
> 
>"Hey Guys look at your Software! Is it REALLY SO
> special, sophisticated and valuable that it have to be
> protected?"
> 

A perfectly fair question for a discussion such as this.  But
I don't think anyone else has to answer it to my satisfaction
before being allowed to protect it.

What I wanted to say to RT is

"Hey guys!  Is it really so important to force all
 developers to give out their source code that you
 won't provide any alternatives?"

>
> I hope this explaines a little bit more what I wanted to say.
> 

And, of course, all of the above discussion ignores other quite
legitimate reasons for wanting some sort of pre-processed form
of code:  performance (which you mentioned in an earlier post),
reduced run-time overhead (no need to parse/translate/compile,
potentially fewer moving parts in the distributed product,
potentially simpler set up, etc.), simpler/faster distribution
("object" is typically smaller than "source", making it faster
to download/copy/install, etc.)

and so on...

Thanks!

-jn-




[REBOL] Compiler for Rebol ? Re:(5)

2000-09-24 Thread joel . neely

[EMAIL PROTECTED] wrote:
> 
> On 9/23/2000 at 4:14 PM [EMAIL PROTECTED] wrote:
> > 1)Self-employed curmudgeons like myself.
> > 2)Programmers for large organizations, like  government,
> municipalities.
> 
> And then there's  someone like me, a self-employed curmudgeon who
> contracts with larger organizations, who says "wow" or "is it"
> depending on whether it's for me or another organization.
> 

And then there are just plain cranky old goats like me, who will
in a typical day/week be using HP-UX, Solaris, Linux, MacOS, and
a growing list of "W" variations -- who is TOTALLY FED UP with
having to write the same code more than once, whether its for
day-pay, private consulting, volunteer work, personal enjoyment,
self-education, or whatever.

Which is why any tool that is not supported on every platform I
routinely use (or may [have to] use in the future) is of little
interest to me.  (Even though circumstances may force me to be
"flexible" on occasion ;-)

-jn-




[REBOL] Compiler for Rebol ? Re:(4)

2000-09-24 Thread siegel

At 07:08 a.m. 24/09/00 -0400, you wrote:

>This is one reason Sun's StarOffice isn't taking the corporate world by 
>storm -- there isn't a lot of desktop support in place for the product, 
>and that's where people spend the real bucks - training and customization.

I tried it. It's kind of clunky and weird but intriguing. Some of the 
labels are still in a foreign language. First I thought it was German, but 
I think it's Norwegian. The default spell check language is Norwegian. It 
does strange things, such as substituting "/" if you type "--", and it's 
hard to find out why or how to change it.

I think that if there were full attention to these details it would be very 
successful, as there is a lot to like about the product. It is surprisingly 
useful for web page design, for example, but the weird aspects made me 
leave it after a while.


--
JULES SIEGEL Apdo 1764 Cancun Q. Roo 77501
http://www.cafecancun.com Fax1.530.706.8739 Tel 1.52.98 83.36.29




[REBOL] Compiler for Rebol ? Re:(2)

2000-09-24 Thread news . ted

On 9/24/2000 at 10:19 AM [EMAIL PROTECTED] wrote:
> yet piracy of the "code" isn't really a problem

Has it ever been a real "problem"? (Damages you could prove.) Or just a
bogey-man?

-Ted.






[REBOL] Compiler for Rebol ? Re:(3)

2000-09-24 Thread news . ted

On 9/24/2000 at 1:15 AM [EMAIL PROTECTED] wrote:
> IMHO I think it is ridiculous to think that "Open Source" projects
can be cloned by each newbie-programmer.

This is an important point. What many people who write code overlook is
that the marketplace still considers software applications an
investment (as opposed to a disposable commodity). They are not just
buying the software product that is shipping today, but the support and
upgrades that go with it. The reason so many products are going open
source now is because people realize that the source really isn't worth
that much. The world is full of source. The value is with the
organization or community that distributes and supports the software.
Source is a commodity; Products are an investment. 

If MS released the source for Excel, people would still rather buy the
official distribution for $50 or $100 then pay less from an unknown
source. This is one reason Sun's StarOffice isn't taking the corporate
world by storm -- there isn't a lot of desktop support in place for the
product, and that's where people spend the real bucks - training and
customization. 

-Ted.




[REBOL] Compiler for Rebol ? Re:(4)

2000-09-24 Thread news . ted

On 9/23/2000 at 4:14 PM [EMAIL PROTECTED] wrote:
> 1)Self-employed curmudgeons like myself.
> 2)Programmers for large organizations, like  government,
municipalities.

And then there's  someone like me, a self-employed curmudgeon who
contracts with larger organizations, who says "wow" or "is it"
depending on whether it's for me or another organization. 

-T/

*** REPLY SEPARATOR  ***


MTCW:
Where I live, I know two kinds of programmers:
1)Self-employed curmudgeons like myself.
2)Programmers for large organizations, like
   government, municipalities.

When I talked to members of 1) about rebol,
they said things like "wow", "cool", "check it out!".

When I talked to members of 2) about rebol,
those folks asked questions like: "Is it compilable?"
and "Is it embeddable?".

For what it is worth...
Tim

>






[REBOL] DIALECT IN REBOL: why advanced documentation so poor in Rebol ? Re:

2000-09-24 Thread rebol

At 04:18 PM 9/23/00 +0200, you wrote:
>Since I am evaluating the language, I am mostly interested about its
>advanced features. Although there are hundreds of pages of very good
>documentation about the basic syntax of Rebol it really lacks documentation
>about the most advanced features which Rebol advertise on like its
>dialecting features. I can't see where it is documented ?
>
>Thanks.

The best example for a dialect is VID, the Visual Interface Dialect that
accompanies REBOL/View (experimental). Review the documentation and
investigate the source code. That should give you some idea of dialecting.




;- Elan [ : - ) ]
author of REBOL: THE OFFICIAL GUIDE
REBOL Press: The Official Source for REBOL Books
http://www.REBOLpress.com
visit me at http://www.TechScribe.com





[REBOL] Compiler for Rebol ? Re:(4)

2000-09-23 Thread jsc

On Sun, 24 Sep 2000, you wrote:
> Hi, Jochen!
>
> [EMAIL PROTECTED] wrote:
> > I think CodeSecurity through compiling is nonsense.
>
> Bit harsh.  Not nonsense, just not a perfect solution against a
> well-equipped, knowledgeable attacker.

Hm my harsh tone seems to be a real problem ... ;-)
But I think compared with the other thread this is much lesser
harsh ! ???

> > ... not to make sure nobody can read your secrets.
>
> How about, "To make it difficult enough that fewer will do so,
> and to reduce the risk of alterations (accidental or otherwise)
> of the source which can create stability/support problems."

To ensure the risk of alterations we could also use checksums
with our scripts. So that a script can abort after checking it's checksum.
This will help out with accidental alterations. (Compiled code
can also crash when modified!)
The problem with "other" (user?) alterations is a bit more difficult.
As a vendor I would reject all warranty-claims if a client modifies
the product. To check this we could again use checksums of the
distributed files.

> > If someone really is interested in your code - a compiler doesn't
> > protect you.
>
> If that someone is sufficiently skilled and has sufficient resources
> and time, agreed.  But not everyone fits those criteria.

This is why I said that it is a sign that the code isn't worth the whole
protecting-thing if theres no one that throws in the ressources to
reverseengineer it.

> > Open Source is a important quality-characteristic...
>
> Open source development (if properly managed) is certainly an
> effective process for producing high-quality code.  Even the
> Forrester group agrees with that (much to my amazement!)
>
> > If I charge a software-team to develop a special software for me,
> > I certainly want the source too! Such a software will cost me
> > ~ 100$ per man-hour!!!
>
> And if you're paying them to develop custom software for you, it
> is certainly reasonable for you to establish as a condition of the
> contract that you get the source (or at least have access to it in
> the event of a failure on their part).
>
> However, there's more to the software market than bright people
> such as yourself contracting with high-priced developers for the
> construction of custom code.

It was only a example - I work as Softwaredeveloper at a softwarevendor
that creates e. g. software for airports,Air Information Services, 
traveling-agencies and more.
Most of our profit is made through custom applications. 100$ per man-hour
is not to much for such work. Most projects cost in the range of some
100k$.

>
> BOTTOM LINE:  As has been pointed out in the recent "40 platforms"
> thread, there's a real marketplace out there.  While Carl and
> company would be within their legal/moral/whatever rights to stop
> supplying REBOL for w95/98/nt/2k (just to use a hypothetical and
> totally unlikely example ;-), I'd consider that an impractical
> decision if the goal is to get REBOL widely adopted.  Similarly,
> although I applaud/appreciate the legions of excellent developers
> who contribute to the open source movement, and am a grateful
> beneficiary of their labors, I question the practicality of
> refusing to address the concerns of developers who wish to have
> some other means of distribution than pure source code -- for a
> variety of reasons.

I think I have to explain a little more what I meant.
I did not say RT should stop supplying Win.. Platforms with their fantastic
tools!!! It is important for RT and  the REBOL-Comunity that REBOL evolves
to a widely used language.
What I said was much more general than it obviously seemed.

IMHO there exist NO OS I really like.
UN*X is the worst OS - besides all the other ;-)

I've dreams of what a OS should look like. But no Vendor seems to try to
evolve in those directions.

As you certainly agree the net is one of the most important things in the
future. We are in the beginnings - There is _much_ more possible.

The Problem is that the Microsoft-Way (And the Apple Way too!!!) hinders
the development of that future. They develop Desktop OSs why should they
work toward a more networked future???
Sun is in another situation. They sell servers - so they try to let the 
network grow more. But there are other reasons why Sun hinders the 
development too.


In relation to to the Open Source topic:
IMHO most developers should more think of what source they can protect
than what sources to Open. This  sounds irritating but if they open most of 
their code by default and only some little (real valuable) code is protected
this would led to a much better situation.
What I wanted to say is 

   "Hey Guys look at your Software! Is it REALLY SO
special, sophisticated and valuable that it have to be protected?"

I hope this explaines a little bit more what I wanted to say.

Regards,
Jochen Schmidt




[REBOL] Re: Over 40 Platforms make for good press, but.... Re:(2)

2000-09-23 Thread carl

On 24-Sep-00, [EMAIL PROTECTED] wrote:

> It just depends who your targeting. The 1% "other"
> category or everybody else.

> It's not about which is better, but which is actually
> being used.

> I remember drooling over an Atari 800 with a whopping
> 8k of RAM (expandable to 16k if you had the extra
> $400.)with a casette deck for a drive, but couldn't
> afford it.  Same story with the first Mac's.  Ended up
> going the clone route like everybody else.  Even
> Amiga's looked nice, but just didn't have the status
> quo.  

> When was the last time you walked into a computer shop
> and saw folks bying Amigas and Ataris? Or more
> importantly, software for them?

> Gotta go with the status quo.  That is, if your in the
> business of selling your scripts.  If not, then who
> cares.  Put it on EPOC32... whatever the hell that is.

That's an attitude that might make sense if you believe the future
will just be like the present, and I'd probably agree with you if the
roads were still full of black Model Ts, but they're not and so I
won't.

I don't see a future with just a few OSs having 90% of the market, but
dozens of them and in every device imaginable.  And of course,
they'll all be chattering to each other over the Net.  This is why
cross-platform matters.  The future is probably no OS with more than
20% of the market - when you include phones in the market...

Like you I also drooled over an Atari 800, but bought a ZX81 instead. 
Had two Commodore 64s since then, three Amigas...  And you know what?
 I'm sick of leaving my programs behind with each change of platform,
or having them become useless because of an OS upgrade.  I'm also
sick of having to learn new programming languages with every switch
of platform.  REBOL's probably a nice language, (give me time:), but
if it wasn't cross-platform I wouldn't be here.

As to EPOC32, it's the Psions's OS.  See...  http://www.psion.com/ 
They look kinda nice and kinda fun and are apparently quite popular. 
Give me a good reason why they should be ignored?




  1   2   3   4   5   6   7   8   9   10   >