[REBOL] New to the PC Re:

2000-10-17 Thread RChristiansen

Use EditPlus

http://www.editplus.com

It is shareware, but the demo is fully functional.

 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.
 





[REBOL] script not terminating, continues to replicate Re:(2)

2000-10-06 Thread RChristiansen

A) You are not using a REBOL/view to serve this cgi, yes?

I am using /Core 2.3 for Solaris on Sparc.

B) You are using an expired experimental? 

It is not an experimental version of /Core.

So is the #! line pointing to the correct REBOL?

Yes. The script is in the same directory as the binary.

How is this invoked, through an IMG tag?

The script is invoked using an exec statement which is invoked by an 
include statement.

I see that it is ending with .cgi.  Perhaps another copy of
it is lying around in another directory getting invoked
erroneously? 

nope.




[REBOL] script not terminating, continues to replicate Re:(4)

2000-10-06 Thread RChristiansen

The strange thing about it is that I had been running the script for 
months without knowing it was causing any problem. The hosting 
service claims they had warned me about it before, but I cannot 
recall any prior communications. I was experiencing much heavier hit 
volumes when they decided to make me pull the script (since two of 
the major BeOS news sites are down and I am one of the last few 
standing until BeNews and BeGroovy come back online.) Perhaps 
the higher hit volumes just exacerbated the problem.

   So, this script had been working when tested?  
 
   Adding QUIT to the end?
 
   The script as it appears to me, as a regular CGI, shouldn't
   behave that way, so I'd conjecture there's something about
   the SSI method that causing the problem.  Wish I could be
   more helpful. 
 
   -jeff




[REBOL] shifting characters in rejoin

2000-10-04 Thread RChristiansen

I have created a function which returns something strange when I use 
rejoin.

The function is called build-html.r which builds a markup statement. 
Here is the console result. Notice the closing bracket for the opening 
tag is strangely moved to the end of the rejoined string:

 do %build-html.r
Script: "Untitled" (none)
== font class="author"Ryan C. Christiansen/font


Your input would be helpful.  -Ryan

Here is the script:

REBOL []

author: make object! [
name: "Ryan C. Christiansen"
email-address: [EMAIL PROTECTED]
stylesheet-info: make object! [
tag-style: "font"
class-name: "author"
]
]

build-html: func [
"Build an HTML page element including the data to be displayed 
and the markup language surrounding the data."
data [object!] "the data to be marked up"
][
open-tag: build-tag [(data/stylesheet-info/tag-style) class 
(data/stylesheet-info/class-name)]

close-tag: rejoin [{/} data/stylesheet-info/tag-style {}]

markup-string: rejoin [open-tag data/name close-tag]

markup-string

]

build-html author




[REBOL] distributed collaborative support application

2000-09-22 Thread RChristiansen

Here's an idea for a breakthrough REBOL application (forgive me if 
this already exists, since I do not normally go shopping for these 
sorts of things):

I work for a support services company and we use several tools to 
operate the support center. We have a problem tracking application 
which includes contact management and reporting features. We also 
use e-mail, of course, and the telephone. Increasingly, we are using 
chat programs to facilitate communications between our support 
desk and our escalation contacts.

Imagine a support application which features the following:

-problem tracking, including work history, problem coding, contact 
management, and reporting accessible through the LAN, WAN, and 
Internet
-integrated e-mail functions
-integrated chat functions
-integrated file sharing functions to share documents with off-site or 
alternate-site technicians
-CGI interface which allows field technicians to access and update 
problems from the field using a laptop or even a Palm device




[REBOL] What should we bake? Re:

2000-09-22 Thread RChristiansen

With companies like Register.com enticing everyone and their 
brother, dog, and grandmother to "register" their own domain, there 
will be increased demand for simple Web site building solutions.

Tools like Microsoft Front Page are not the answer because the user 
still needs to use FTP and to understand too many other things 
about building a Web site. It is not simple enough.

The simplest Web site building solution is a server-side application 
with a Web-based control panel. My vision is the following...

1. A user goes to a page on the Web where they can use the Web 
site building tool. After selecting which site functionalities they would 
like to include, they enter their credit card number, etc., and then 
move on to the site building process.

2. The user chooses the overall structure and layout and design of 
the site from a set of templates. Each template has a set of major 
regions where the user can choose to "plug in" the elements of a 
Web page, including photographs, chat interfaces, tables of links, 
journals, diaries, etc., etc.

3. The user finishes and clicks "Done."

When the user is building the site, the program behind the interface 
could be building a REBOL script which executes upon visiting the 
user's URL and dynamically builds the page. The script is built using 
REBOL "plug-ins," functions designed to display a specific site 
element or designed to call upon some other functionality.

Of course, the application should be using Cascading Style Sheets 
for better style control and the application would have to be tested 
against multiple browsers in multiple environments for the most 
consistent rendering possible.




[REBOL] Some ideas to collaborative environments Re:

2000-09-22 Thread RChristiansen

 Question:
 Would it be better to use a central-server for the collaborative
 envrionment like "ICQ" or should we use a more decentralized approach.
 (E.g. by using IRC to find the other participants and then create direct
 connections?)

Depends on how it would be used.

If the application would be used as to create a sort of "ad hoc" 
collaborative environment, then the decentralized approach is 
appropriate.

But if the application would be used to create planned environments, 
then a centralized approach is best. The application would be hosted 
by an Application Service Provider, which everyone with a big pipe 
wants to be nowadays.

-Ryan




[REBOL] parse or Re:(7)

2000-09-21 Thread RChristiansen

Joel-

Thanks for the parsing routine. There are still a few things about it 
that I need to look at a few more times for me to understand it 
perfectly, but I was able to make a re-usable function out of your 
routine. (I also changed some of the 'words because I like my scripts 
to read like "plain English.") The function follows...

REBOL []

parse-paragraphs: func [
"Parse a document into a block of paragraphs."
document [string!] "the document to be parsed"
][

paragraph-block: copy []
current-paragraph:  copy ""
stopper:  charset {.?!:}
non-stopper:  complement stopper
fragment: copy ""

sent: [
copy fragment [any non-stopper stopper]
(append current-paragraph fragment)
[{^/} (append paragraph-block current-paragraph current-
paragraph: copy "")
|{"^/} (append paragraph-block append current-paragraph {"} 
current-paragraph: copy "")
| none
]
]

paragraph: [
(paragraph-block: copy []  current-paragraph: copy "")
any sent end
(if 0  length? current-paragraph [append paragraph-block 
current-paragraph])
]

parse/all document paragraph

paragraph-block
]


 To make up for my omission (and my lack of time/energy last night),
 the following is a scheme for using  parse  to attack the paragraphing
 problem you posted.  I know it doesn't handle every possible case, but I
 think it can be generalized in a fairly obvious way.
 
 Enjoy!
 
 -jn-




[REBOL] The Industry Needs REBOL But Thinks it Wants Perl Re:(7)

2000-09-21 Thread RChristiansen

How did you handle unruly students typing out of turn? (assuming 
there may have been unruly students. Trolls are always possible.)

The possibilities for a productive online classroom are increasing, 
even for those persons stuck with low bandwidth. On the BeOS, we 
have BeShare, which is a file-sharing program (similar to Napster, but 
for any kind of file) but it is also a chat room where you can see who 
is connected at all times. It is a great community building tool 
because people pop in all of the time with questions, which they get 
answered (or at least responded to) much more quickly than they 
could receive responses from an e-mail discussion list.

Of course, there are coding projects going on at BeShare quit often 
and the file-sharing aspects of BeShare help out with that quite a bit.

BTW, BeShare is open source as well as the server software called 
MUSCLE. So far, MUSCLE servers have been compiled for the 
BeOS, Linux, and FreeBSD.

I may start a REBOL collaboration on BeShare some day to increase 
the interest in REBOL. I need to brush up on my own skills first, 
however.

-Ryan

 I used to teach online during early 90's. I taught C/C++ courses
 at CALC (Computer Aided Learing Center) using Genie network
 (similar to AOL or Compuserve). We used Roundtable (similar to
 chat room) for our classes. At one time, we had 60 students
 attending one class. What a fun to see so many online at once. I
 instructed them to raise their hands by sending just an
 exclamation mark. That way I had a queue of students jotted
 down. Each student has a chance to ask the teach. I didn't give
 lectures but just answer questions students might raise during
 the classes. The "lectures" were given in form of written texts.
 They could download those notes weekly. I assigned them with
 weekly projects. I was able to evaluate and grade their
 programming skills by looking at their projects they developed
 with what they learned during the course. Textbooks was used for
 the classes. (I am not a tutorial writer.)





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

2000-09-21 Thread RChristiansen

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] parse or

2000-09-20 Thread RChristiansen

 paragraphs: {First paragraph.^/Second "paragraph."^/Third 
paragraph.}
== {First paragraph.
Second "paragraph."
Third paragraph.}
 probe parse paragraphs [{.^/} | {."^/}]
false
== false
 probe parse paragraphs ({.^/} or {."^/})
** Script Error: Cannot use or~ on string! value.
** Where: ".^/" or {."

So how DO I parse by a value OR another value?

-Ryan




[REBOL] parse or Re:(2)

2000-09-20 Thread RChristiansen

 paragraphs: {First paragraph.^/Second "paragraph."^/Third paragraph.}
 parse paragraphs [some [thru {.^/}  | thru {."^/} | thru "." end]]

This returns "true"

But what if I'm trying to parse a report and wish to make each 
paragraph a separate string within a block?

 paragraphs: {First paragraph.^/Second "paragraph."^/Third 
paragraph.}
== {First paragraph.
Second "paragraph."
Third paragraph.}

 paragraphs-breakdown: []
== []

 foreach paragraph parse paragraphs [some [thru {.^/}  | thru {."^/} | 
thru "." end]] [append paragraphs-breakdown paragraph]
** Script Error: foreach expected data argument of type: series.
** Where: foreach paragraph parse paragraphs [some [thru ".^/" | thru 
{."} | thru "." end]]


Doesn't work.

Sorry if I'm being a pain, but when I read the "parse rules" 
documentation it doesn't make any sense to me. I can't see the 
usefulness of returning "true" in this situation.

 
   -jeff
 
  == {First paragraph.
  Second "paragraph."
  Third paragraph.}
   probe parse paragraphs [{.^/} | {."^/}]
  false
  == false
   probe parse paragraphs ({.^/} or {."^/})
  ** Script Error: Cannot use or~ on string! value.
  ** Where: ".^/" or {."
  
  So how DO I parse by a value OR another value?
  
  -Ryan
 





[REBOL] parse or Re:(5)

2000-09-20 Thread RChristiansen

 I assumed that
 this is NOT what you wanted, but rather you wanted to copy through
 either {.^/} or {."^} WHICHEVER COMES NEXT.  (Natural language
 text munching is a real pain, speaking from personal experience! ;-)

Yes, this is what I was looking for. As someone who has never 
parsed anything before using REBOL (there will be more like me!) the 
parsing rules are confusing to read in the REBOL docs. My 
inclination is to want to use a simple statement which will parse until 
a set of characters is reached OR a different set of characters is 
reached, whichever comes along first and next.

 The strategies I've thought of (I don't have time to code, compare,
 and recommend right at the moment) are:
 
 1)  Write more complicated parse rules, that either
 1a)  parse to newline, append the copied chunk to a paragraph
  string under construction, then look at the tail end of
  the last chunk to see whether it can be extended or whether
  a new paragraph should be started (based on whether it
  looked like the end of a sentence).
 1b)  parse to period, grab and append the next character if it
  is a quotation mark, append to paragraph under construction, and
  start a new paragraph if the next character is newline.
 2)  Use simpler parsing (break on newlines), then make a postpass
 across the block of "lines", gluing back together wherever the
 boundary isn't the end of a sentence.

You missed another option, which I had been using previously. Here 
is the function:

breakdown-content: func [
"breakdown an e-mail content field into its parts"
msg [object!] "e-mail message"
][
article-info: msg/content
end-of-paragraph: rejoin [{.} newline]
replace/all article-info end-of-paragraph {.~}
content-parts: copy []
foreach part parse/all article-info {~} [ append content-parts 
trim/lines part ]
]

In other words, replace all instances of a set of characters with a new 
character that can be recognized later. The above example needs to 
be fixed because it only replaces instances of {.^/} with "~" and I've 
discovered the tilde is a bad choice, anyway. I need to also be able 
to replace any set of characters you might find at the end of a 
paragraph, including {."^/} and {!^/} and {?^/} and {:^/} and {...^/} and 
I'm sure there are more.

I was hoping there would be a quick way to use parse instead of 
replacing characters first and then parsing.

-Ryan




[REBOL] standard message object

2000-09-18 Thread RChristiansen

I have some thoughts about creating a standard message 
object! and I would like to hear your input.

Across the Internet, whether it be in e-mail, newsgroups, 
bulletin board systems, or Web pages, the most 
common form of communication is the message. 
Messages have common values, illustrated as follows:

EMAIL
-
From:
Subject:
Content:

NEWS

From:
Subject:
Content:

BULLETIN BOARD
--
Author:
Subject:
Comment:

NEWS STORY
--
Byline:
Headline:
Body:

...and I'm sure there are more comparisons I cannot think 
of at the moment.

Because of these similarities, I suggest that a standard 
message object! be developed so that information can 
easily be exchanged between mediums.

Furthermore, functions should be developed for converting 
messages from the e-mail, news, etc., formats into the 
standard message object! and vice-versa.

But what values should be included in the message 
object! ?

A news posting, for example, may include the following 
headers...

From
Subject
Date
Newsgroups
Path
In-Reply-To
Message-ID
References
MIME-Version
Content-Type
Lines
NNTP-Posting-Host
X-Trace
NNTP-Posting-Date
Organization
Xref
Followup-To
Content-Transfer-Encoding
X-Complaints-To
X-Mailer
X-Accept-Language
Reply-To
X-Newsreader
X-Priority
X-MSMail-Priority
X-MimeOLE
User-Agent
X-Abuse-to
X-Comments
X-Anon
X-Mail-To-News-Contact
X-Mimeole
X-Sender
X-Server-Date
X-MIMEOLE
X-Abuse-Info
X-Anon-1
X-Anon-2
X-No-Archive
Sender


While an e-mail message may include the following 
headers...

Received
Return-path
To
From
Reply-To
Date
Subject
Organization
Message-Id
X-REBOL
MIME-Version
Content-Type
Precedence
X-MindSpring-Loop
Content-transfer-encoding
Priority
In-reply-to
References
X-mailer
X-SELMA
X-PMFLAGS


Bulletin Board messages and News Articles have their 
own formats, as well. Is there a standard message 
object! that could be developed and re-used?

For example...

make object! [
Author:
Date:
Subject:
Body:
Message-ID:
MIME-Version:
Content-Type:
Origin:
]

Are more values than the above needed for a standard 
message object?

-Ryan




[REBOL] rebol-powered Web site

2000-09-14 Thread RChristiansen

A little self-promotion here...

The BeOS Journal at http://www.beosjournal.com went 
live today using a REBOL-powered article submission 
and commenting system.

News articles are updated at The Journal by sending an e-
mail to a POP account. REBOL takes care of the rest.

The HTML for the news portion and the commenting 
portion of the pages are created dynamically using 
REBOL.

The commenting system is not very sophisticated (not 
threaded) but, then again, I'm not a sophisticated 
programmer.

-Ryan





[REBOL] linux help Re:(2)

2000-09-14 Thread RChristiansen

I would LOVE to be able to install a "plain" Linux on my 
Dell Latitude 433MC 486/33 laptop, but I only have a 
floppy drive. I've looked for linux distributions which I can 
install from floppy, but it seems I can only find CD-ROMs.

More than Linux, I'd like to put a BSD on the laptop, but 
again I can only find CD-ROMs.

 I am suspect of this "monkey" linux. Do you have other programs created on
 redhat that work fine on monkey?
 
 Making your own rescue disk from redhat or similar
 and putting rebol on it should prove to you that the problem
 isn't space or environment.  It will also quickly introduce you to
 many core linux concepts.  It will be a lot tougher for you to say "I'm
 new to Linux."




[REBOL] linux help Re:(5)

2000-09-14 Thread RChristiansen

Nah. I do have 8MB RAM, but it shows up as less than 
8MB, which is too bad because if I had 8MB I could run 
QNX and have REBOL that way.

 The real problem is he has only 4MB RAM.  Memory for some older laptops
 can be outragiously priced too.
 
 --Ryan
 
 





[REBOL] FW: rebol-powered Web site Re:

2000-09-14 Thread RChristiansen

I will update the source tonight. The old version (minus 
the commenting system) appears on BeBits (BeOS 
software site) and is called News Site.

By the way, the script also automatically updates an .rss 
XML file.

 Hey Ryan, Looks good.
 
 How do you do that?
 Can you put some example code/scripts/functions out on the list
 (or send to me directly.)
 
 -Original Message-
 From: [EMAIL PROTECTED]
 [mailto:[EMAIL PROTECTED]]
 Sent: Thursday, September 14, 2000 12:03 PM
 To: [EMAIL PROTECTED]
 Subject: [REBOL] rebol-powered Web site
 
 
 A little self-promotion here...
 
 The BeOS Journal at http://www.beosjournal.com went 
 live today using a REBOL-powered article submission 
 and commenting system.
 
 News articles are updated at The Journal by sending an e-
 mail to a POP account. REBOL takes care of the rest.
 
 The HTML for the news portion and the commenting 
 portion of the pages are created dynamically using 
 REBOL.
 
 The commenting system is not very sophisticated (not 
 threaded) but, then again, I'm not a sophisticated 
 programmer.
 
 -Ryan
 





[REBOL] linux help Re:(3)

2000-09-14 Thread RChristiansen

This is the FIRST thing I tried but it reads my 8MB RAM 
as 7602K (something like that) and will go no further in 
the boot process.

 Go to http://www.qnx.com
 click on the "1.44 demo disk" offer (left side of screen), and download
 either the modem-style, or the NIC-card style.  Boot it, then go back to
 the website and grab some more stuff :-))





[REBOL] linux help Re:(7)

2000-09-14 Thread RChristiansen

 If you cannot get out over the net,
 the CDs that you install linux from also contain floppy disk images.
 All you need to do is find a place to play the CD
 temporarily. Most of the CDs come out dos readable.

Great! I use the BeOS and so this should be no problem. 
I'm going to look for a distro pronto.

 I didnt know you had no HD at all. 
 You must have aquired the laptop
 very cheap.

Oh, I do have a hard drive (256MB IIRC.) It has OS/2 
Warp 3 currently installed. But yes, it was very cheap. I 
paid only $25 for this Dell Latitude 486 laptop.

-Ryan




[REBOL] t-shirts

2000-09-11 Thread RChristiansen

OK. I know the guys at REBOL Technologies have more important things to 
work on, but...

We need a REBOL t-shirt!

RT could start out real simple by uploading a bitmap of the .r image to 
http://www.cafepress.com and call that a t-shirt.

RT can set its own price for the t-shirt and keep every dollar minus $10.99 for 
each t-shirt. Shipping is $4 for the first t-shirt and $1 for each additional shirt 
(United States.)

-Ryan




[REBOL] does REBOL run on Palm or not? Re:(4)

2000-09-11 Thread RChristiansen

  It must be a nightmare. With so many platforms to support, how can they
  even have time to upgrade rebol? I don't understand how they can do it
  (especially with under 20 programmers!)?
 
 Under 20 ? I wish... Try 5 :-)

You all deserve a raise.




[REBOL] t-shirts Re:(2)

2000-09-11 Thread RChristiansen

8-P

 " RT can set its own price for the t-shirt and keep every dollar minus
 $10.99 for  each t-shirt."
 
 I like REBOL, its very very promising, but if they can manage to extract
 $10.99 from a dollar, I'm buying the company tommorrow :)
 
 Cheers,
 
 Chris Walker
 PHP/SQL programmer
 REBOL evangelist, UK
 





[REBOL] rebol on the cheap Re:(2)

2000-09-06 Thread RChristiansen

OK. I've checked the archive and can't find the reference to "soft-linking the 
libraries." Can you help me out?

 Lib5 is what you need.  You may have to soft link the libs as needed. 
 This was just discussed in a recent posting.




[REBOL] rebol on the cheap

2000-09-06 Thread RChristiansen

Has anyone used REBOL with Monkey Linux?

ftp://ftp.spsselib.hiedu.cz/pub/linux/monkey/docs/english.htm

I haven't a clue how to install Linux, but I'm going to give this one a go. Can 
anyone look at this site for me and tell me which REBOL binary I need for 
this Linux distro? Like I said, I haven't a clue.

I'm looking for a way to run REBOL on a Dell Latitude 433MC with a 486/33 
and 8MB RAM. I read in a post somewhere on the Web that someone had 
successfully installed Monkey Linux on this laptop (minus X-Windows.)

Currently, I have OS/2 installed on this machine and it runs famously (there 
is even support for the laptop's power management functions.) Unfortunately, 
there is no REBOL distribution for OS/2. Thus my reasons for checking out 
alternatives (my 68k PowerBook died on me a long time ago - bad power 
supply.)

If you haven't figured it out yet, I'm a cheap *ss when it comes to computers. 
I bought this Dell laptop for a whopping $25.

-Ryan




[REBOL] rebol/view for beos Re:

2000-09-04 Thread RChristiansen

Yup. I have been using it and have discovered no problems so far. I didn't 
know about the expired thing. Since I have /View apps available on BeBits, 
that affects the longevity of my apps.

I'll have to look into that.

 is anybody else using this?
 
 i would report some bugs, but the version on the web site has expired, i
 thought i would wait to see if a new one was put up before sending any
 reports.
 
 so far i'm living with changing the date to beat the expirey :)
 
 i've decided i'm going to write a full blown email program for beos using
 rebol/view. none of the current email offerings are really any good.
 
 i've been waiting for rebol/view for beos for a long time to do this...




[REBOL] Announcing: REBOL FOR DUMMIES Re:

2000-09-01 Thread RChristiansen

Hey, I'm a dummy! That's why I'm going to buy this book! Thanks, Ralph!

 REBOLs aren't dummies. But they know folks who are! g
 
 Announcing the pre-publication sale of REBOL FOR DUMMIES by Ralph
 Roberts. Take a look at the contents and sample chapter (on CGI) at
 http://www.REBOLpress.com. Then pass this link on to your friends and
 co-workers who need to join the REBOLution.
 
 Special Offer: All copies purchased through REBOL Press Online are
 autographed by author (and REBOL guru!) Ralph Roberts.
 
 The REBOLution continues!
 
 --
 Danny Ramsey, Publisher, REBOL Press
 The Official Source for REBOL Books
 http://www.REBOLpress.com
 
 





[REBOL] One Disk Rebol and OS Re:

2000-08-31 Thread RChristiansen

Can you post a disk image of your floppy?

 Hey All,
 I got Core running on MuLinux from a single floppy all in RAM. Its got
 networking, ppp (though not currently working?), NFS, UMSDOS, smb client,
 and few other tricks. Much of course thanks to M. Andreoli for creating
 the MuLinux distribution, currently my favorite linux distribution
 (http://sunsite.auc.dk/mulinux/).
 
 I myself am interested in using this disk for some mild robotics and
 control applications. But before I finish it up for the masses, I want to
 get some opionions.  What sort of things do you think a one disk /Core
 system might be used for???
 
 --Ryan
 
 PS: How about View?  I will (at sometime) implement a version that goes to
 a ftp site and downloads Mu's X windows, View, and your REBOL
 applications... But dont get excited just yet.
 





[REBOL] Jobs/projects list? Re:(2)

2000-08-28 Thread RChristiansen

OK. What kind of application can I use to view a .ppm (portable pixel map) 
file?

 I have finished up a good chunk of the GML parsing (grammer.r)
 and started work on the renderer (renderer.r and threed.r).  However
 RealLife and WeakMathSkills is preventing me from finishing it up.
 
 'do %render.r' should create a tiny 'testing.ppm' file containing
 a picture of a rendered plane.
 
 ---
 
 Although I wasn't able to finish it,  I had a lot of fun with the
 parsing.  REBOL parses like a hot knife through butter!  My problem
 is that I've never written any 3-d code in my life so that bit was
 going to be out of my reach for a while.
 
 If there are any enterprising programmers out there, feel free 
 (no strings attached) to use this code as you please.  There are
 still about 20 hours left till the deadline.  Top prize is $1000US
 and unlimited bragging rights!
 
 
 
 





[REBOL] sub faces

2000-08-11 Thread RChristiansen

The parent-face/sub-face examples from the /view documentation do not 
work.

:-(

Can someone give me an example on how to correctly create a layout which 
includes sub-faces???

-Ryan




[REBOL] sub faces Re:

2000-08-11 Thread RChristiansen

OK, I did get them to work. I just don't think I'm understanding things 
correctly.

Is it possible to create sub-faces within a parent face and have the sub-faces 
display buttons, fields, etc.?



 The parent-face/sub-face examples from the /view documentation do not
 work.
 
 :-(
 
 Can someone give me an example on how to correctly create a layout which
 includes sub-faces???
 
 -Ryan
 





[REBOL] Revolutionary Rebol Re:

2000-08-10 Thread RChristiansen

Hey, I didn't know that. Now I have a new search term for the Web when I'm 
bored.

8-)

 I have been following Rebol in the 
 press for about 2 years, now, just after it changed its name from 
 Lava (I'll bet not everyone knows that ;-)





[REBOL] no networking in experimental BeOS REBOL? Re:

2000-08-07 Thread RChristiansen

Jake-

I will test this out for you tonight on BeOS 5.0.0 Professional (without beta 
BONE.) If I recall correctly, I have used the networking features successfully 
with /View and BeOS 5 Pro. I won't be able to test it, though, until after 7:00 
p.m. Central Time U.S. when I get to leave this Windows NT monster and 
return to my beloved BeOS.

-Ryan

 Hi,
 
 On my PC running BeOS 5.0.1 Pro Edition, I can't get any of REBOL's 
 networking features to work, with either REBOL/core 2.4.24.5.2 or REBOL
 /view 0.10.18.5.2.  For example:
 
 REBOL/View 0.10.18.5.2 28-Jul-2000
 Copyright 2000 REBOL Technologies.  All rights reserved.
 Type DEMO to run demo if it is disabled
  read http://anobject.com/
 (30 second pause)
 ** Access Error: Cannot connect to anobject.com.
 ** Where: read http://anobject.com/
 
 I have BONE Beta 4 installed, but I had the some problem before I 
 installed BONE.  Fortunately, the released REBOL/Core 2.3.0.5.2 works
 properly.  Any idea when this will be fixed?  Thanks..
 
 -Jake
 





[REBOL] no networking in experimental BeOS REBOL? Re:(2)

2000-08-07 Thread RChristiansen

BONE is only currently available to beta testers. I have no idea about how to 
get on the beta testing program.

However...

Be, Inc., does offer a partner program for developers, but this is mainly for 
technical support...

http://www.be.com/developers/partnerprogram.html


You could purchase a BeIA evaluation kit ($95) if you're interested in the 
internet appliance thing...

http://www.be.com/developers/beiaeval.html


Or here is the contact info in general...

Be, Inc.
800 El Camino Real, Suite 400
Menlo Park, CA 94025 
voice: (650) 462-4100
fax: (650) 462-4129 


 Btw, is BONE/Beta publically available yet ? Considering the bad shape
 "normal" TCP/IP in BeOS is in it would be useful to know if BONE fixes
 some of the problems...
 
 --
 Holger Kruse
 [EMAIL PROTECTED]
 





[REBOL] animated rebol logo in /view

2000-08-05 Thread RChristiansen

I was playing around with /view trying to create an application which listens 
to ports and displays data.

Then something cool happened.

I launched the application from the /view console and then opened a /core 
console to send data to the port specified by the /view app. The /view layout 
did not change until I clicked on the window. Upon doing so, a little animated 
REBOL logo appeared in the lower right-hand corner of the layout.

Is this logo supposed to be appearing in every layout? This is my fourth /view 
app and I've never seen the logo appear before.

-Ryan




[REBOL] newbie questions Re:

2000-08-05 Thread RChristiansen

In most situations, you can install REBOL yourself into your cgi-bin/ 
directory and execute scripts with .cgi extensions and beginning with a 
shebang.

 Hello,
 I am interested in using Rebol, as someone familiar with Amiga, Blitz
 Basic and C programming.  I want to use it for general purpose text
 parsing stuff, and perhaps for web applications as well.   I don't run my
 own webserver - so, would my ISP need to install a rebol interpreter?  How
 difficult is that?
 
 Many thanks.
 -- 
 ø¤°`°¤ø,¸¸¸,ø¤°`°¤ø,¸¸»«¸,ø¤°`°¤ø,¸¸,ø¤°`°¤ø,¸¸¸,ø¤°`°¤ø,¸¸,ø¤°`°¤ø,¸ø¤°`°
 ¤ø epäjarjestelmällistymättömyydellänsäkään![EMAIL PROTECTED]
 ø¤°`°¤ø,¸¸¸,ø¤°`°¤ø,¸¸»«¸,ø¤°`°¤ø,¸¸,ø¤°`°¤ø,¸¸¸,ø¤°`°¤ø,¸¸,ø¤°`°¤ø,¸ø¤°`°
 ¤ø
 





[REBOL] REBOL stand-alone applications? Re:

2000-08-04 Thread RChristiansen

Hmm...

Well, with /View, here is how you can make a "stand-alone" app for the 
BeOS...

1. give the script the #! /boot/home/config/bin/rebol shebang

2. make the script executable.

3. give the script a nice icon.

4. use PackageBuilder to have the following installed when the end user 
double-clicks on the .pkg file...

executable script in /install_folder
executable script in /boot/home/config/bin/
rebol in /boot/home/config/bin/


This installs the /View rebol binary alongside the executable rebol script in 
the bin/ directory. Now the script is executable from the commandline (just 
type the name of the script) or the script is executable like other applications 
in that you can double-click on its icon to launch it.

I'm sure something similar can be accomplished on other platforms.

Of course, it's not within the license to install /View for the end user. This is 
how it COULD be done.

8-)

-Ryan

 I would like to be able to put together an client side standalone
 application that uses REBOL - but
 I do not want to require the user to download the REBOL and see the
 scripts that make up the application.
 
 Is it possible to create a REBOL app that completely encapsulates the
 REBOL engine and hides the script(s) And if so, how?
 
 - Scanzoni
 
 





[REBOL] %rgbcolors.r 0.9.5

2000-08-02 Thread RChristiansen

Earlier I submitted the script %rgbcolors.r for your perusal, but the script 
included a significant bug. I have fixed the bug and attached is the nearly 
complete version (I still have to figure out how to make the sliders return a 
low tuple value of 0.0.0 instead of 1.1.1).

-Ryan


The following section of this message contains a file attachment
prepared for transmission using the Internet MIME message format.
If you are using Pegasus Mail, or any another MIME-compliant system,
you should be able to save it or view it from within your mailer.
If you cannot, please ask your system administrator for assistance.

    File information ---
 File:  rgbcolors.r
 Date:  2 Aug 2000, 12:20
 Size:  3969 bytes.
 Type:  Unknown

 rgbcolors.r


[REBOL] rgb color selector error (/data = none) Re:(2)

2000-08-02 Thread RChristiansen

Making this change only made the slider  /data value change from 0 to 1 
when I move the slider and the /data value doesn't return to 0.

 Change:
 
  red: slider 10x259 [red/color: ...
 
 to:
 
  red: slider 10x259 0 [red/color: ...
 
 etc. That should do the job. My slider does not suffer from this
 problem, but the value is in /current, not /data (just in case you
 downloaded it and was wondering :-).
 
 Regards,
 Gabriele.
 -- 
 Gabriele Santilli [EMAIL PROTECTED] - Amigan - REBOL programmer
 Amiga Group Italia sez. L'Aquila -- http://www.amyresource.it/AGI/
 





[REBOL] /view slider data (size - 4) ? Re:(2)

2000-08-02 Thread RChristiansen

Do you have a usage guide for the scrollers?

-Ryan

 Hello [EMAIL PROTECTED]!
 
 On 01-Ago-00, you wrote:
 
  R When I make a slider, how come the slider /data value reaches
  R a maximum of four integers less than the size of the slider?
 
 That's a bug in the default slider style. For a better one (IMHO :)
 download http://web.tiscalinet.it/rebol/scroller-styles.r.
 
 Regards,
 Gabriele.
 -- 
 Gabriele Santilli [EMAIL PROTECTED] - Amigan - REBOL programmer
 Amiga Group Italia sez. L'Aquila -- http://www.amyresource.it/AGI/
 





[REBOL] /view radio button values

2000-08-01 Thread RChristiansen

How can I retrieve the value of a radio button?

Using the following...

view layout [
text "copy" 
copy-ack: radio of 'effects
filter-ack: radio of 'effects
button "do it" [print copy-ack]
]

I try to retrieve the value of copy-ack in the console, but it prints only that it 
is an ?object?

And so I try this...

view layout [
text "copy" 
copy-ack: radio of 'effects
filter-ack: radio of 'effects
button "do it" [probe copy-ack]
]

Using 'probe instead of 'print makes /View lock up solid. It also felt like it was 
taxing my system's RAM before I killed /View.

The documentation for radio buttons in /View is very limited. Can anyone 
help me?

-Ryan




[REBOL] /view slider data (size - 4) ?

2000-08-01 Thread RChristiansen

When I make a slider, how come the slider /data value reaches a maximum 
of four integers less than the size of the slider?

For example, to return a maximum /data value of 255, use the following...

REBOL []

face-one: layout [
s: slider 10x259 [s/color: 0.0.0 + s/data show s print s/data]
] 

view/title face-one "face one"




[REBOL] rgb color selector error (/data = none)

2000-08-01 Thread RChristiansen

The following creates an RGB color selector. Slide the red, green, and blue 
sliders to increase the intensity of the color. Click on the frame below the 
sliders to return the new color value.

One problem: If you do not move all three sliders initially before clicking on 
the frame, the script deals with a /data value of "none" and returns an error. 
Can someone help me on this one? How can I preset the /data value for a 
slider to zero so that it doesn't return "none" ?

Thanks.

-Ryan


REBOL []

rgb-color-selector: layout [
backdrop 255.255.255
across
red: slider 10x259 [red/color: 255.0.0 + (255 - red/data) show red print 
red/data]
green: slider 10x259 [green/color: 0.255.0 + (255 - green/data) show 
green print green/data]
blue: slider 10x259 [blue/color: 0.0.255 + (255 - blue/data) show blue 
print blue/data]
return
rgb: frame 50x50 [rgb/color: make tuple! rejoin [red/data {.} green/data {.} 
blue/data] show rgb]
]

view rgb-color-selector




[REBOL] %rgbcolors.r

2000-08-01 Thread RChristiansen

Following is an RGB Color Selector I created using /View. It is my first /View 
creation and I'm pretty happy with it except for a couple of quirks (which are 
explained in the "Comments" portion of the header. I have it here if you would 
like to use it in determining colors for your /View scripts or HTML pages. If 
you can help me fix the couple of problems with the script, I would be 
grateful.

Thanks.

-Ryan


REBOL [
   Title:   "RGB Color Selector"
   Date:1-August-2000
   Version: 0.9.0
   File:%rgbcolors.r
   Author:  "Ryan C. Christiansen"
   Email:   [EMAIL PROTECTED]
   Owner:   "Ryan C. Christiansen"
   Rights:  "Copyright (C) Ryan C. Christiansen 2000"
   Tabs:4
   Language: 'English
   Purpose: {
  Interpolates and displays RGB color values in tuple and in hexidecimal 
based on red, green, and blue sliders.
   }

   Comment: {
  The author is no mathematician and still has not figured out how to make 
the tuple range from 0.0.0 to 255.255.255 instead of 1.1.1 to 255.255.255. 
Also, the hex values returned have a similar problem, whereas #010101 is 
the darkest value instead of #00. Also, you must slide all color bars 
from their original position before clicking on a color frame or else the script 
will return an error.
   }

   History: [
  0.9.0 [1-August-2000 "Created this example" "Ryan"]
   ]

   Example: {Slide the red, green, and blue sliders and then click on the 
frames to view the color created and the tuple and hex values for the color.}
]

rgb-color-selector: layout/size [

backdrop 255.255.255

rgb-tuple: frame 105x50 [
rgb-tuple/color: make tuple! rejoin [red/data {.} green/data {.} 
blue/data]
rgb-tuple/text: make string! rejoin [red/data {.} green/data {.} 
blue/data]
show rgb-tuple
]

rgb-hex: frame 105x50 [
rgb-hex/color: make tuple! rejoin [red/data {.} green/data {.} 
blue/data]
red-hex: to-hex red/data
green-hex: to-hex green/data
blue-hex: to-hex blue/data
rgb-hex/text: make string! rejoin [{#} red-hex/7 red-hex/8 green-hex/7 
green-hex/8 blue-hex/7 blue-hex/8]
show rgb-hex
]

across

red: slider 30x259 [
red/color: 255.0.0 + (255 - red/data)
show red
print red/data
]

green: slider 30x259 [
green/color: 0.255.0 + (255 - green/data)
show green
]

blue: slider 30x259 [
blue/color: 0.0.255 + (255 - blue/data)
show blue
]

return

button 105x25 "close" [unview/only rgb-color-selector]

] 144x450

view rgb-color-selector




[REBOL] slider data value

2000-07-31 Thread RChristiansen

View question:

From the documentation, the following...

s: slider [s/color: 0.0.0 + s/data show s]

creates a slider which changes color from the RGB value 0.0.0 to the RGB 
value 196.196.196 as you move the slider. How can I change the 'data length 
of the slider to 255 or some other value?

Thanks.

-Ryan




[REBOL] REBOL Scripting Re:

2000-07-27 Thread RChristiansen

The most recent, complete free documentation is available in .pdf format 
from...

http://www.beosjournal.com/rebol/rebolpdf.zip

 Hey,
Does anyone know where i can learn to write a REBOL script?
 





[REBOL] Over 70 REBOL Experimental Binaries Available Re:(4)

2000-07-27 Thread RChristiansen

 So far only the experimental builds for Unix are up, because those we can
 do automatically. All others require some "human intervention" and
 therefore take longer.

I figured as much. You guys are fantastic in your ability to work cross-
platform the way you do. You must be really well organized. Maybe you 
should write a book on cross-platform development techniques.

-Ryan




[REBOL] cgi and normal scripts Re:

2000-07-26 Thread RChristiansen

You could either append input-cgi.r with your "normal" script  and run it all 
together

-or-

you could 'do other scripts from input-cgi.r


 Hey list,
 
 I have a cgi question for you.  If you want to use cgi with REBOL,
 do you have to start out with that intention, or can you cgi-ize
 a regular script?  more specifically, I want to use the various
 fields of a form as input for a "normal" script. "input-cgi.r" seems
 perfect.
 
 can someone spare some tips? 
 --
 
 Turn your computer off. Go outside.
 -tom
 





[REBOL] RT Convention/conference. Re:

2000-07-26 Thread RChristiansen

Will RT have a booth at any upcoming conventions?

 Hello,
 
 I think it's about time that RT organised a convention/conference and
 brought together in one place, all the talented people that are actively
 involved in promoting REBOL.
 
 It would be wonderful to see and hear people like Elan, Gabriele, Julian,
 Allen, Brett, Volker, Pekr, Ladislav, Brian, Larry, ... (my apologies for
 any ommissions) discussing REBOL, together with all the great folks from
 RT.
 
 Just a thought.
 
 Mike.
 
 
 
 





[REBOL] Blue Truck for Sale Re:(3)

2000-07-20 Thread RChristiansen

You should rig up two of them and we'll have a coast-to-coast road race.

Then watch the legislators come up with all sorts of Internet-related 
legislation to make our streets safer.

-R

 Actually, we're rigging the abandoned blue truck with a few servos, radio
 control, and our laser web cam glued to the hood (although we did consider
 pointing the web cam out the back window instead).
 
 You'll be able to drive it around Ukiah with a REBOL/View control panel.
 
 We are also adding a driving dialect for those of you who want to do your
 famous truck moves. Just:
 
 send rebol://demo.rebol.net/cool-blue-truck [
 
   when cute girl watching [
  while police not detected [
 press brake to floor
 press accelerator to floor
 when rpm hits 5000 release brake
  ]
  holler "REBOLwantsyababy!" out window
   ]
 
 ]
 
 Of course, each remote driver only gets 30 seconds on the control panel,
 then you're disconnected, but you can still watch the cam.
 
 -Carl
 
 At 7/20/00 11:38 AM -0400, you wrote:
 Doesn't a truck abandoned for more than three days in view of a web cam
 de facto become the property of all users of the Internet? If so, let's
 work up a schedule for sharing use.
 
 --Ralph
 
 - Original Message -
 From: [EMAIL PROTECTED]
 To: [EMAIL PROTECTED]
 Sent: Thursday, July 20, 2000 10:43 AM
 Subject: [REBOL] Blue Truck for Sale
 
 
 
  Regarding the mysterious blue truck
  on the Rebol Web-Cam, ownership is
  uncertain but [EMAIL PROTECTED]
  is willing to auction it on e-bay.
 
  browse http://demo.rebol.net/webcam
 
  for the new - "updated"  commented! page
 
  cheers folks,
 
  Mark Dickson
 
  
 





[REBOL] REBOL Language Extensions Re:(3)

2000-07-14 Thread RChristiansen

I agree. I like your modification to my suggestion, as such

connect username:[EMAIL PROTECTED]
...connects to an ISP

connect/dial username:[EMAIL PROTECTED] 1-888-555-1212
...connects to an ISP via a dial-up connection


 When I first looked at this, the second suggestion looked good.
 The isp and modem part I feel is not needed because some people would be
 on a LAN some with a modem attached, so for software to run on all pc's it
 should use the connection normally used. All that would be needed is
 "connect username:[EMAIL PROTECTED]" for connecting to restricted areas
 on the net because it would use the normaly user name/password to get on
 the net. Or "connect/dial username:[EMAIL PROTECTED] 5551212" for one
 computer to talk to the server (non internet). Greg - Original Message
 - From: [EMAIL PROTECTED] To: [EMAIL PROTECTED]
 Sent: Friday, July 14, 2000 07:53 Subject: [REBOL] REBOL Language
 Extensions Re:
 
 
  Here is my suggestion.
 
 
  connect isp://username:[EMAIL PROTECTED]
 
  connect/dial isp://username:[EMAIL PROTECTED] 555-1212
 
  -or-
 
  connect modem://username:[EMAIL PROTECTED]
 
  connect/dial modem://username:[EMAIL PROTECTED] 555-1212
 
 
  Neither "modem" nor "isp" are protocols, I know. Just a thought.
 
DIAL this command would enable Rebol to dial out
a telephone or fax number. Rebol already invokes
 communicates through the systems modem for the
internet utilities  functions.
 
 
 
 





[REBOL] New REBOL Manual/high schoolers Re:(2)

2000-07-11 Thread RChristiansen

Or create a teen version of REBOL, replacing the native words with slang and 
cuss words.

8-)

 Get 'em while their young Carl!
 How about a subset of the manual for high school students.
 Give it some rah rah rebol pizzazz.
 I'd recommend it the online course on programming that I
 am designing. (Using rebol for source language)
 -Tim
 
 At 01:22 PM 7/10/00 -0700, you wrote:
 Dear REBOLs,
 
 I've got a major revision to the REBOL/Core manual that will be nearing
 completion this week.  It's been occupying a huge portion of my time
 (which is one reason why I've not been active on the lists), but I see it
 as something that really needs to be done.  I suspect you feel the same
 way.  I plan to post a draft of the manual to our web site, and if any
 of you would be interested in reviewing it, I would appreciate your
 comments and suggestions.  Watch for it near the end of this week.  I
 will provide instructions on the site for how to reply and post comments.
  Thanks,  -Carl
 





[REBOL] How to execute a rebol script from an html page? Re:(2)

2000-07-11 Thread RChristiansen

It won't support the SCRIPT tag if the web server doesn't know what 
REBOL is.

 Hi, Tim,
 
 Sorry about the unclear question posted before. Basically what I want to
 do it to embed rebol script inside html page. I found an example in the
 script library (http://www.rebol.com/library/script-markup.html). It
 suggested to use SCRIPT language="REBOL" tag inside html.
 
 Unfortunately IE5 doesn't support it. At least it didn't work when I tried
 it. Any idea?
 
 Thanks.
 
 Tiana
 





[REBOL] How to execute a rebol script from an html page? Re:(4)

2000-07-11 Thread RChristiansen

Perhaps REBOL/Command for Windows has support for IIS commands. 
Since that would involve platform-specific commands, then /Command is the 
place for such things.

 Is there a way to get my NT IIS server to allow me
 to put Rebol into an .asp page?
 
 I would be kind of surprised if it could already do this.
 
 VBScript and Javascript have access to a lot of stuff inside
 the IIS server's environment.  How would Rebol do that?
 
 
 -galt
 
 





[REBOL] dir structure Re:

2000-07-11 Thread RChristiansen

What path are you using to write to your %html/ directory? Make sure you 
have the absolute path in your path to %html/

 Hi,
 I have such a dir structure:
 %my-root-dir/
  %cgi-bin/
%rebol-script.r
  %html/
 
 My problem is, that I cannot write to the %html/ directory from the
 %rebol-script.r Is it because of Rebol or because of my admin?
 
 thanx for help, oldes
 http://oldes.multimedia.cz
 





[REBOL] REBOL: THE OFFICIAL GUIDE Re:(3)

2000-07-09 Thread RChristiansen

It's even cheaper at buy.com

$29.99

http://www.us.buy.com/books/product.asp?sku=30559961

 No disrespect intended, but having found the book for $31.89 with no
 shipping (at ecampus) I don't think the tip sheet is worth the extra
 $13.60. On a side note, it seems that there are two other Rebol books out
 there as well. I'm still getting this one, but...
 
 
  REBOL: THE OFFICIAL GUIDE, the first commercial book about
  the REBOL language, is now at the printers! You can check
  the contents and read a sample chapter at REBOL Press
  Online, http://www.REBOLpress.com.
 
  I thought it was interesting to note that Barnes And Noble
  says this book has a "sales rank of 127,053", for the
  *February Edition*.
 
  Does that mean they sold 127k+ copies of a nonexistent book?
 
 
 http://shop.barnesandnoble.com/booksearch/isbnInquiry.asp?userid=661E9NA68
 H mscssid=37372K8DA4SR2JTS001PQUW8M69N11F1isbn=007212279X   Amazon.com
 is selling the *July Edition* with a "sales rank  of 84,434".  Sold? 
 Searched for? Page looked at? What?  
 http://www.amazon.com/exec/obidos/ASIN/007212279X/qid=96301/sr=1-1/103
 -2 087116-3747003   Their prices are less but you don't get the Special
 Offer:   Special Offer: Order your advance copy of REBOL: THE 
 OFFICIAL GUIDE (with CD) directly from REBOL Press Online  and receive an
 exclusive, limited-edition DESIGNER'S TIP  SHEET written and signed by
 REBOL's Designer, Carl  Sassenrath! Not available in bookstores or
 through any other  source. It includes numerous insider tips that make
 REBOL  scripts easier to write and more powerful to use.--  For
 information on any of the following check out my WEB site at:
 http://www.csonline.net/bpaddock/  Chemical Free Air
 Conditioning/No CFC's, Chronic Pain Relief, Echofone,  Matric Limited,
 Neurophone, Oil City PA, Philadelphia Experiment.
   http://www.uCOS-II.com 
 





[REBOL] adding data to hyperlinks, etc. Re:(2)

2000-07-09 Thread RChristiansen

Is it possible to pass variables to a REBOL script via a hyperlink as such?

http://www.rebol.com/cgi-bin/test.cgi?value1

The QUERY_STRING will then contain "value1" correct? as if I had submitted 
a form to the .cgi script?



 In the interim while I haven't received any responses, I thought of a
 third solution, albeit I don't like it. The third solution is to have each
 news article rendered within its own form and to have its own submit
 button. The form can carry the article's reference number via the cgi
 object. This is probably the easiest solution, but I can't stand the
 thought of having so many submit buttons on a news headlines page. Perhaps
 I'll change the value of the submit button to be "!" so that it doesn't
 take up so much space. Otherwise, if anyone has an answer to my previous
 question I'm all ears.
 
 8-)
 
 -Ryan
 
 Hello. Before I progress any further, I need some advice.
 
 With my script News Site, the script saves news articles as object 
 expressions and loads them into memory before rendering a page based on
 the values in the objects. One of the object values is a reference number
 to differentiate the object from all others (since the objects are only
 object expressions they are assigned to object words upon loading.)
 
 The next feature I want to add is a commenting system. I want the reader
 to be able to click on a hyperlink for "comments" which will then execute
 a 
 .cgi 
 script. The .cgi script will then render a page including all of the 
 comments  
 people have posted in regards to the news article in question. The
 question 
 I 
 have is, how do I pass a value to a script from a hyperlink so that the
 script renders the correct set of comments?
 
 I have thought of another option, albeit more cumbersome. During the time
 
 the 
 main script creates object expressions for the news articles themselves,
 the script could create a separate .cgi script just for that article. But
 how 
 can 
 I write a script to a directory and then make the script executable all
 at the same time? I'm thinking the web server will see the .cgi extension
 and assign it executable status, but I'm not sure that is always the
 case.
 
 I hope you're understanding what I am writing. Your help is much 
 appreciated.
 
 -Ryan
 
 
 





[REBOL] Where's the docs for user-defined-dialects? Re:(2)

2000-07-07 Thread RChristiansen

Sounds like an opportunity for someone to write a pocket book.

 I totally agree that there is a miserable lack of dialect creation
 examples or tutorials. In fact, I would dare say I have only seen a small
 handful of dialect examples.
 
 Is anyone listening who is an expert rebol dialect creator?




[REBOL] Com port parameters. Re:(2)

2000-07-06 Thread RChristiansen

Perhaps the thought is that COM port addressing has already been 
deprecated in favor of tcp/ip addressing to wireless devices?

-Ryan

 
 Thanks for the pointer Brett.
 
 Seems a little odd that a "messaging system" would not be inclined to talk
 or at least listen to something as fundamental as a com port. Think of all
 the serial devices hanging off the end of PCs that need monitoring in real
 time. Given that I just "discovered" (thanks ddj) Rebol perhaps there is
 something I am missing?
 
 [EMAIL PROTECTED]
 
 
 
 
 
 [EMAIL PROTECTED] wrote:
 
  My understanding is you cannot access the com port directly from Rebol.
  However, I used IPComserver a program by http://www.iox.co.za to
  essentially give the Com port a tcp/ip port. Then I could use Rebol with
  tcp/ip through IPComserver to talk to my device.
 
  Brett.
 
 





[REBOL] Changing relative paths to absolute ones. Re:

2000-07-06 Thread RChristiansen

The absolute path to your Web directory does not involve the http url.

For example, the path to an item in your Web directory may SEEM to be...

http://www.domain.dom/item.jpg

...when in fact the real path may be something like...

/boot/home/web/domain/item.jpg

If you are using a Web hosting service, ask them what the absolute path is 
to your Web directory.

-Ryan

 Hello.
 
 I have been monitoring the progress of REBOL since its first release
 but 
 only now I will start to use it to do something usefull. I created a
 simple script to read a web page and to send it to an email address (send
 user@host read http://www.server). The problem is that there are lots of
 relative references in this page (IMG SRC="/somedir/file.gif") and I need
 to change all of these references to an absolute path (IMG
 SRC="http://www.server/ somedir/file.gif").
 
 I think the problem would be solved if I search for all =" and change
 it 
 to ="http://www.server .
 
 How can I do that? Note that I didn't even understood the REBOL syntax
 
 yet. :)
 
 Thanks.
 
 -Bruno
 
 





[REBOL] Changing relative paths to absolute ones. Re:(3)

2000-07-06 Thread RChristiansen

 Note that I'm fetching the page with read http://www.server so all I got
 is the HTML file. In this file, paths to images are relative, and as I'm
 sending this page to another people, I have to make than absolute
 (prefixing http:// www.server to the path).

Sorry, I responded too quickly. Shortly after I responded I realized what you 
were really asking.

 /boot/home/web/domain/item.jpg
 
 Using BeOS too? ;)

But, of course. 8-)




[REBOL] other ftp related issues ... Re:(2)

2000-07-05 Thread RChristiansen


I have discovered "/" slash issues as well. For example, my Windows NT 
machine doesn't like...

read %/path/to/filename.txt

and wants me to use

read %path/to/filename.txt

My BeOS machine doesn't care either way.

 from where I sit it appears to be server related, but I don't understand
 quite how. Two different NT servers that I needed to hit required slashed
 "/" and unslashed requests. *nixes didn't seem to need the slashes.
 
 yeesh. maybe somebody at RT has a thought about clean ways to handle
 this.





[REBOL] REBOL HQ Webcam Re:

2000-06-30 Thread RChristiansen

Very cool. I assume the messages are retrieved from the Webcam using 
REBOL, correct?

 If you look closely, you might see Sterling or Erin setting new inline
 skating records, Bo doing wheelies in the square, Holger rewiring the
 exchange, or Jeff burning tobacco.  You might even get to see Cindy
 unloading sodas from the van.




[REBOL] benchmarking (teeny-bits-of-time/2 ) Re:(3)

2000-06-20 Thread RChristiansen

I thought using a counting expression would be a simple way to benchmark a 
system. My results are disturbing, however. Consider my original expression:

forever [ t: now
  c: 1
  while [ now = t ][ c: c + 1 ]
  print c
  c: copy []
]

Here are the results of running the expression on an Intel Celeron 
333MHz workstation running Windows NT 4 (66MHz bus) with Pegasus and 
Microsoft Excel both open at the same time:

37594
37261
37103
37313
37555
37551
37274
37472
37563
37195
37539
37556
37496
37579
37386
37540
37108


Now here are the results of running the expression on a dual Intel 
Celeron 433MHz machine (66MHz bus) running BeOS 5 Pro (with no 
additional applications open):

11607
11652
11649
11630
11713
11682
11595
11606
11538
11745
11693
11529
11456
11444 

As you can see, the expression counted many more times-per-second on 
Windows NT 4 than on BeOS 5 Pro.

In fact, REBOL on Windows NT 4 counted more than three times as high 
per-second than REBOL on BeOS 5 Pro. This is despite the fact BeOS 5 
Pro was running on twice the hardware and then some.

Examination: REBOL does not seem to utilize both processors 
simultaneously, instead it seems to alternate their use, which means
the processors lose their cache information each time. Perhaps the 
REBOL for BeOS binary is three times as slow as the binary for Windows 
NT?

I used Carl's expression...

t: now/time n: 1 while [n  100] [n: n + 1] n / third (now/time - t)

and here are the results:

The Windows NT machine returned a result of 500,000
The BeOS 5 Pro machine (dual processors) returned a result of 250,000

I posted these results to the beusertalk mailing list and the response was that the 
compiler used to create the BeOS binary must be far less superior than the compiler 
used to create the Windows NT binary (which compiler did RT use for this? I know 
BeOS R5 ships with a much better compiler than previous IDEs.) The response also 
was that perhaps the code used to create the BeOS binary requires some 
optimization.

The BeOS seems to return much better benchmark results using other criteria (e.g. 
OpenGL frame rates) than using a REBOL counting expression as a benchmark.

Is the code for the BeOS binary written to take advantage of BeOS' 
multithreadedness and for SMP? I gather from watching my Pulse meter while 
running the REBOL expression that REBOL does not utilize SMP like it could on the 
BeOS.

-Ryan

 Also, WRT calling NOW in a loop.  Note that it is very expensive on some
 systems!  Compare the loop timing on this line to that below that calls
 NOW.  It takes nearly 10 times longer (under WinNT) if you call NOW. 
 Ryan's loop should be up in the 40 range rather than 38000.  Amazing,
 isn't it.
 
 t: now/time n: 1 while [n  100] [n: n + 1] n / third (now/time - t)
 
 -Carl




[REBOL] can't delete email?? Re:

2000-06-19 Thread RChristiansen

clear mailbox

 HI,
 
 Can anyone tell me where
 I should add the command
 "remove mailbox" in this
 script.
 
 while [not tail? mailbox] [
  msg: import-email first mailbox
   print [
"From: " first msg/from
"Subject: " msg/subject
   ]
 remove mailbox
 mailbox: next mailbox
  ]
 
 No matter where I put it in my script,
 it won't delete all my messages. ??
 
 I sent myself 3 emails and only
 one was deleted. And no matter
 how many times I re-ran the script,
 I can't delete the other two.??
 
 thanks timmy
 





[REBOL] teeny bits of time Re:(2)

2000-06-19 Thread RChristiansen

I'm using /Core 2.2 on both Windows NT and BeOS 5 x86 and nope, such a 
feature doesn't exist.

I'm sure there are hurdles in getting exact measurements of time in less than 
seconds.

If it would be possible to run a continuous REBOL routine in the background 
while continuing to execute REBOL scripts in the foreground, then I suppose 
you could call upon a word that returns an approximate sub-second length of 
time (most likely represented as an estimated fraction of a second instead of 
an exact measurement in milliseconds.)

Depending on the workload of the cpu at any given time, this estimated 
fraction of a second may be based on a different denominator.

Any other thoughts on this? I REALLY would like to be able to call upon 
fractions of a second in REBOL.

-Ryan

 Ryan,
 Have you tried the view version ... maybe its there.
 -Larry
 
 [EMAIL PROTECTED] wrote:
 
  Wouldn't this be cool?
 
  
   current-time: now/time
  == 20:37:33
   print current-time/hour
  20
   print current-time/minute
  37
   print current-time/second
  33
   print current-time/millisecond
  14
   print current-time/microsecond
  57
   print current-time/nanosecond
  98
 
  Any idea if this would even be possible?
 
  -Ryan
 





[REBOL] teeny-bits-of-time/2

2000-06-19 Thread RChristiansen

In my quest to count teeny bits of time in REBOL, I created the following 
counting expression which makes note of how high REBOL can count in 
increments of 1 within a single second.

forever [ t: now
  c: 1
  while [ now = t ][ c: c + 1 ]
  print c
  append b c
  c: copy []
]

Of course, the results are entirely dependent upon the computer system you 
are using and how many other tasks the computer may be processing at the 
moment. Here are the results of running the expression on an Intel Celeron 
333MHz workstation running Windows NT 4 (bear in mind the first number 
returned is the remaining number of times the expression can count from 1 
within the second the expression begins):

2498
37594
37261
37103
37313
37555
37551
37274
37472
37563
37195
37539
37556
37496
37579
37386
37540
37108


I guess this is a REBOL benchmarking expression of sorts.

If you could run this expression continuously while running other REBOL 
scripts--and if you could call the count from within the expression using 
another REBOL script running in parallel--you could create a fraction of a 
second based on the average count total during a specified period of time.

For example, you call 'c from the expression when 'c = 2000. Perhaps the 
average number of counts during the previous 10 seconds was 37,501 counts 
per second. Then the fraction would be .053331 seconds. REBOL could 
return a special 'now of

 now
== 19-Jun-2000/18:20:44.053331-5:00

or

 current-time: now/time
== 18:20:44.053331-5:00

Then you have your milliseconds, microseconds, and nanoseconds as 
follows:

 print current-time/second
44
 print current-time/millisecond
5
 print current-time/microsecond
33
 print current-time/nanosecond
31

Of course, this is a very imprecise way of measuring sub-second intervals in 
REBOL.

Any suggestions on how this might be implemented?

-Ryan




[REBOL] teeny-bits-of-time/2 Re:

2000-06-19 Thread RChristiansen

Oops. My example should read...

current-time: now/time
== 18:20:44.053331911-5:00

Then you have your milliseconds, microseconds, and nanoseconds as 
follows:

print current-time/second
44

print current-time/millisecond
53

print current-time/microsecond
331

print current-time/nanosecond
911

 For example, you call 'c from the expression when 'c = 2000. Perhaps the
 average number of counts during the previous 10 seconds was 37,501 counts
 per second. Then the fraction would be .053331 seconds. REBOL could return
 a special 'now of
 
  now
 == 19-Jun-2000/18:20:44.053331-5:00
 
 or
 
  current-time: now/time
 == 18:20:44.053331-5:00
 
 Then you have your milliseconds, microseconds, and nanoseconds as 
 follows:
 
  print current-time/second
 44
  print current-time/millisecond
 5
  print current-time/microsecond
 33
  print current-time/nanosecond
 31
 
 Of course, this is a very imprecise way of measuring sub-second intervals
 in REBOL.
 
 Any suggestions on how this might be implemented?
 
 -Ryan
 





[REBOL] web apps Re:

2000-06-16 Thread RChristiansen

I was the one who inquired about the spellchecker. This application you 
found is very cool. Check out...

http://www.spellchecker.net/features/textbox.htm

You can link the spellchecker to any textbox.

A REBOL version would be great because REBOL would be able to 
accomplish something similar without Javascript (useful for Palm devices, 
etc.)

 a few months ago someone asked for a spell checker,
 
 just found http://www.spellchecker.net - using a javascript file and a
 script (perl).
 
 would rebol be an interesting choice for this task?




[REBOL] An appeal to keep /Core Re:(3)

2000-06-14 Thread RChristiansen

One of the things that always amazes people is how powerful /Core is 
despite how small the binary is. I think /Core needs to stay around because 
we will be looking to put messaging language into smaller and smaller 
devices and time goes by. Put /Core on a watch or in a medical device which 
swims in the bloodstream and sends messages back to a computer via 
wireless. Keep /Core around, for sure, and work to make it SMALLER for 
gosh sakes.

 It's just my opinion, and that of many others so it seems, that /Core
 oughta stay around. This does not mean that we do not want /View or
 /Command or any of the others (we do, we do!)... It just means that /Core
 is the perfect entry level point for REBOL and we hope that
 ever-so-easy-to-open portal remains in place.





[REBOL] REBOL and the unix shell Re:(3)

2000-06-14 Thread RChristiansen

Hey, combine these articles with the script library, online documentation, 
news headlines, links, discussion board, a REBOL store (hey, who doesn't 
want a t-shirt, anyway?) and an open-source project area and you have a 
very cool resource.

8-)

My real hope is that if I get a bunch of these articles
together, other people would be interested in
contributing some domain specific articles of their own
to the collection.  REBOL is used for a universe of
tasks, and various people out there know the complete
ins and outs of doing a particular task with REBOL.
IMHO, their specialized REBOL knowledge should be
recorded and shared with the rest of the community.





[REBOL] /view and the Web Re:(5)

2000-06-13 Thread RChristiansen

No. I am thinking of the possibility of creating interactive Web pages using 
/view .

 I agree with Ryan, I dont see an end to /Core any time soon. I can see it
 getting stale, kind of like it is right now.
 
 Ryan, are you thinking of making a web browser using view?
 
 --Ryan
 
 [EMAIL PROTECTED] wrote:
 
  I can't see /core being "discontinued" except perhaps being replaced by
  /command . Perhaps /core is the enticement for /command .
 
   I am beginning to use core as a CGI workhorse for me (and I
   hope Carl continues with it, despite some evidence to
   the contrary in this list).
 





[REBOL] %detach.r Re:(3)

2000-06-12 Thread RChristiansen
The following accomplishes the feat of copying the  encoded image into a 'word and appending the string  value with the proper brackets and "64#" designation.



stuff: msg/content
imagecode: copy []

if find/any stuff {image/jpeg} [parse/all stuff [thru {base64^/^/} copy text
thru {==} (append imagecode text)]]

insert imagecode "64#{" append imagecode "}"

write/binary %image.jpg imagecode




But the %image.jpg does not display correctly. What is  it I need to know about base64 encoding to make sure  that "write/binary" produces the correct result?  Following is the result of 

>> print imagecode
64#{ /9j/4AAQSkZJRgABAQEAYABgAAD/2wBDABALDA4MChAODQ4SERATGCgaGBYWGDEjJR0oOjM9
PDkzODdASFxOQERXRTc4UG1RV19iZ2hnPk1xeXBkeFxlZ2P/2wBDARESEhgVGC8aGi9jQjhC
Y2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2P/wAAR
CABbAGQDASIAAhEBAxEB/8QAHwAAAQUBAQEBAQEAAAECAwQFBgcICQoL/8QAtRAA
AgEDAwIEAwUFBAQAAAF9AQIDAAQRBRIhMUEGE1FhByJxFDKBkaEII0KxwRVS0fAkM2JyggkK
FhcYGRolJicoKSo0NTY3ODk6Q0RFRkdISUpTVFVWV1hZWmNkZWZnaGlqc3R1dnd4eXqDhIWG
h4iJipKTlJWWl5iZmqKjpKWmp6ipqrKztLW2t7i5usLDxMXGx8jJytLT1NXW19jZ2uHi4+Tl
5ufo6erx8vP09fb3+Pn6/8QAHwEAAwEBAQEBAQEBAQECAwQFBgcICQoL/8QAtREA
AgECBAQDBAcFBAQAAQJ3AAECAxEEBSExBhJBUQdhcRMiMoEIFEKRobHBCSMzUvAVYnLRChYk
NOEl8RcYGRomJygpKjU2Nzg5OkNERUZHSElKU1RVVldYWVpjZGVmZ2hpanN0dXZ3eHl6goOE
hYaHiImKkpOUlZaXmJmaoqOkpaanqKmqsrO0tba3uLm6wsPExcbHyMnK0tPU1dbX2Nna4uPk
5ebn6Onq8vP09fb3+Pn6/9oADAMBAAIRAxEAPwD0CiiigAqOeeG2haa4ljhiX7zyMFUduSaw
tT1fUGnvrSwSKM23DScyytmMN8keACcsAMt+HNZi293L500kIuHti/nx3jGeY5OSiAfIuY2H
C8EkKemapRE3Y7IuBIseGywJB2nHGO/Qdenfn0NMiaUiQzpGgDHZtctlexOQMH25+tcXdalq
UcKaZpkj2yWASKZwqSPgkJEBkgEsMMegHr2qLUdZ1S31i0tZ7iNYy8RlYWz7sNuOwYLg9MfK
evQ8Gl3KSO4llzC4hliEu07C/Kg9sgHpWDdajdWqpZSzia4wZAwwXcDJBwhUAbgBzgEDaeua
bC51W0tZ45kiGEleIqH+bCuFJI46g9M9CCO8tppF5KEbULhSsRHkxI3mAcMMlyoOcNj1+Xkn
Jp3jHcbiRS6tfSTxQxyolzLPiGJSu2RFJJ3ZXIyp+YgnG0EcnaemrDi0iGyjcQpKrM28yrMz
OGwADlifQcEEdjkVZOpR2CwrqFzGIn+VblyEy3J2uOgO0dRwSDwvAKdnsKzRp0VHBPDcwrNb
yxzRN9142DKe3BFSUhBRRRQAVXv7yOws5LmVZGVMALGu5mJIAUDuSSB+NTSSJFG0kjqiICzM
xwFA6kmqMu6XUWF5BALGHyzC8yqS0xJAKndxjIAyASTx7gHHfv49aupJ0u7e5EjzYd1IKsfk
zyQflAHynjaR9dZNTNxCb+G3CsYlSafzA6xgE4yA2SBv3E/L8hySDxS+KmhlX9/ArqVZVlGG
eInCrtB65YjIyBjrkVztjdfZppIo13MIykyyx8PGxHzFc5fGTwN2fmGTuDHZPoJo0dYiubK2
iubtJtSnt5AkG3KpJISCkjIpwu0lkx1bj1FQXMtpNCIpdRvFlsWlSLyXdXYru3NJIQwztBOB
ztyQPmCDTuIle0murq5cRj5mngLsskewEOiZYIVYg7hk/Jnoaw7CxmSVFm2WgtR5UzQZTOwk
ly3BG5cZ7kAHIHFRK0dX1E5KKuzS0O7j0mRo9TLrDLDaiMLGzFJfKCmNgBu3EKDjB4x0zz0l
tqGnzTLFa38Jmb/lgXG/pyCh5BGOQeRisa3g+0XNvc2mQsDFGmfOZU2joSMuvJwdwGfm+bAq
fWNKtdUgX7TlTCd6SAAlfXgggjjkGojTlON9jP6xrqjo6xdctBNdWR+0PbBnZd8DskjtjcEy
OikKxPTlVrL0PULy2srWSIedYmNVMD7g0WDgtGSCzLjJCnnAGPSuju7W31SzRWkJjYrIkkL4
OPVWHTIyMjsT61yu62ZvCalsZSk21zawxajco0v7tiW8wy4jOD8wIVhjdkAZ7g5419Ge6k0m
2e+lhluGQFpIfuOOxH1GOnGenFc8/hS1S6SS2e5gkhV8JFKWLZTbhSx+U4xg5xxj6dRZsjWU
DRwtAhjUrEybTGMcKR2x0xW0IyitWVO19CaiiitCCrqdwbTTbm42bxFGXYZx8oGTj3xnA7nu
OtcjKdVltItPguvKeafzLf7RudlRChUkkZB34ODnAbHbFdF4kmRdMe33/v58COISBGlwQSOV
YYxwcgjB5wMkYWnRNqlxbRrA0S20ykOFVggTYWUkYXl0KjaAOAQMCgC34msJJrdFt3cSRvGM
BQytmRCSwxnAxngjpXJuL2RZPtVs+5nWRmtwVZBgxLw2CM7c59ByADXpF5bI8cxkVXR1ClWG
QR0INcEFkstdu7SxtUmijkVvLYhVXeM5GM8/OR0+6uOc1bcre6E2lHmNDRJY0usT2wWWOMCK
eItgLk/JjOQPmzjp0H8INW7q1+2Wk0ErFGuABK8I2FjwDjr1AxznjiqOlXd1IBFPbxQtFH5k
wQFiclgAoGcnCg5yT2xzxYii1G+hF3bTC26+XA+3qCR8/BIORyARjp1BNc7VWo+XscUpSe47
TrdL/UDqILmCGRhAxm3+YfmV2Gc7V9ApGcZPbGhqV9FYQLJMD5bMELA4C5IGSe3X+dP0+0Wx
sorZMfIOSq7QWJySB2ySTgcCpZoY54mjmRXRhgqwyDXdGNo2IbuzIRZrLz57RFmgRyWgUZlB
4z0JHI5AwD8wzg5Naekzp9iaCKZWMJ82PYcgROzbB6ADlQATwo6ZwKdi+l6dLcWlsFt1UtLI
SSEBwu7knjAZPbkY74u2DWP267eCVDcXFvHIyqR86DcFcevXGef4fauedNL3+vU3oO0yG48S
2UFxgrNJNDJsmRIj8gwTuOcALjJz+NS2+ux28DSTW94bQuz/AGnHmhVbLgnHO3BwCAQOhPFY
btJY+K7i4lm2WoVbhwuT8nlMpyAOeUBx7Zq4uq295cebHamWR7coI5nTZtZ8EHbuJ3bQehBA
GMZNWo6WRvOUlK1jqLS6ivbWO5tyzRSjchZCuR64IBorG8GPH/YpgRp2a1laFzNKHyQBjGCQ
Bgj5R05HPUlZlDrvw6086+TeeVbgYMbRb2AON+GJ/ixk7g2STnIOKDeNpul6jdS6e8Ulq3lB
0jV2nQAbZSF2gj5iSARj5ulbtZV9dQ2NxP8A2ndxtaXKIkNsyhmZslXCqBlgcpxz1PQUAYL3
V7YWvkSXjXzX1mZVJLY8085WTgKhJC4BBBKYHzGsrw5dLJ4ia3nlSaUWwV5C6P5kiHAKsuNw
2nPOTx14rtbbTbaZzcT3J1LfGAjTiNlVCDnbtUD5g3J7gD0rF1DRWhv0ubI+U8JeRsEsZGO4
qNpO3BLvnoecAjqKjo0wlFyi0R3mkXcjzTWN0LWfBCfKCrjOQGGD05x6ZNalnapZWqQRl2Vc
ks7bmYk5JJ9SSTWBf35v7E3ENykU8KOfJjuW2sMjDblK5XjrwASQeRiodMismjA0mT7Dfoiy
eWWYo454bPDrkkbhnHGD0FXKpGL5rb9Ths7anWVXvbuOytXnlOEQEn8s1DaX0s13LazW/lyx
KrlkYsmG6YJCkng9ARx1zxWfqcg1G5WzlZo7TDM7IT85BUBSQOAQT09Ota8yceZakJa6jdN0
a3uS894VuRKRIqox8sDC8cffB2qeeDgcCtCztIIdUnltE2KokWYkk7pZDGxxn/ZUE9B8wx3x
Wg1GGFYlgt7kgxbxCkByoCk4OOAeMYz1IrR0GzlWJpLpNk00jTyrvL4JPC59lCjjjivPgpSl
eR00E3LmeyINV0JtYZFS6mtJY1ZdyjKlWxkMv8QOBxn86xNP0XVI75rb7NCVdnIvY5A8a84f
I4O/JIPTOMDaNxrqJdchRmW1tbm5nYKxjEZRhltoyGwR0Y/RSTgYzNolzaz2rrbFwfMeVkkK
lhvZnzlSQVOTggkcYzkGt+fsdDaZasbOOws47aEuUQdXOSSTkk/Uk+1FWKKQBXA6tPHJ4ouN
7mOeG6gchny3koA20L/dJBfgnnZkDkr31UNZkvIdMmlsVZ5kBOxEDOwx0XJwD3yQ3T7rdKTV
0KSujlbu6vfNu7zT3ubdHuIszmINlShHypg7jkoo45wBnAJGpZ6ynk2cF3JJdSTswExi2MMD

[REBOL] RSS, ICE, etc. (was group projects ) Re:(4)

2000-06-12 Thread RChristiansen

Wow, I wasn't aware of Rich Site Summary (RSS) and Information and 
Content Exchange (ICE) standards before you mentioned this. The RSS 
method seems fairly simple, see...

http://www.publishing.about.com/arts/publishing/library/blrss.htm

While the ICE method seems more involved.

Since you know more about the trends, which method do you recommend? I 
definitely would like to make the creation of a syndication file automatic 
within my project, but is RSS enough to offer potential clients?

-Ryan

 
 Ryan...  interesting stuff.  You might want to check out all the work
 going on on XML/RSS/RDF/ICE syndication of headlines, XML-RPC and similar
 interfaces to syndication, etc.  Full disclosure:  my current company (cf.
 http://www.clickfeed.com ) has built an aggregation personalization /
 syndication framework for news with customized delivery using some of this
 same tech.  It's a rich space, but needs standard interfaces.  (Data
 transport is there, but the whole inbound side of things --- the push
 side, ala your Scoop --- is totally open.)
 
 jb
 
 [EMAIL PROTECTED] wrote:
 
  I'm interested in reading more about your vision.
 
  OK, here goes...
 
  I have currently laid plans to develop (and have begun developing) a
  suite of REBOL applications I have dubbed "The News  Mail."
 
  The first in the series is an application called "The Headlines" which
  allows you to update the news headlines on a web site by simply sending
  an e-mail to a POP account.
 
  Why this functionality? For the sake of simplicity and accessibility. If
  you can update the news headlines on a web site by simply sending an
  e-mail, you can update the site from any number of e-mail clients,
  including those found on Palm devices, etc., so long as they are sending
  text/plain output (a more complicated parsing routine for RTF and HTML
  could be developed, as well.)
 
  The original, functioning version of "The Headlines" can be seen at
 
  http://www.fargonews.com
 
  where all of the headlines and article content appearing there has been
  updated via e-mail. My original script is called Scoop and can be
  downloaded at
 
  http://www.bebits.com/bob/3796/Scoop_1.0.zip
 
  I have completely re-written Scoop to be object-oriented, with
  individual news articles saved as objects which are loaded and handled
  later. All local settings are saved in a config file which is loaded
  first. The new version of Scoop is called "The Headlines" and the input
  portion is functional, while the text/html output needs to be broken off
  and developed as a separate application. The look of the text/html
  output is controlled by a cascading stylesheet which can be replaced by
  any other stylesheet using the same class names.
 
  Other ideas for "The News  Mail" suite...
 
  -"The Links" for updating web site links via e-mail.
  -"The Ads" for updating banner advertisements via e-mail.
  -Commenting System, Classified Ad System (through CGI.)
  -Offer access to "The Headlines," "The Links," and "The Ads" through a
  CGI interface, as well.
 
  Ulimately, I'm looking to offer a Web business customer the opportunity
  to manage a news-oriented Web site without having to actually manage a
  web space. The customer will be able to manage the site through e-mail
  and Web-based forms. Setup time for the Web developer will be minimal:
  perhaps 30 minutes tops to customize the config file which controls the
  various REBOL applications in the suite.
 
  OK, so I've spilled my guts. Input, anyone?
 
  I'd like to know what people think about saving data as objects vs.
  saving data in database format. I'm assuming saving the data as objects
  makes the data more versatile.
 
  Thanks.
 
  -Ryan
 





[REBOL] group projects Re:(2)

2000-06-12 Thread RChristiansen

It would be very cool to have some sort of group project site exclusively for 
REBOL. It would, of course, have to be scripted in REBOL.

8-)

-Ryan

 
 A while back I toyed around with the notion of setting up a SourceForge
 style development site / community called "Webol.org" devoted to web
 application development using Rebol.  If there's any interest in this, I
 can cobble together those notes and huck them up to the list or something.
  I'd be happy to provide the server space, but time isn't as free as I
 wanted it to be to work much on this...
 
 jb
 
 
 [EMAIL PROTECTED] wrote:
 
  I checked SourceForge and there isn't a single REBOL project listed.
 
  I have started a project myself and I have a vision, but I'm not sure
  whether SourceForge is the place to post it. Does anyone have plans for
  a REBOL site where persons can work together on REBOL projects? Is
  anyone interested in working on group projects?
 
  My sense is that the REBOL community is largely made up of developers
  who may be averse to group projects for fear that someone else may make
  money off of their ideas. Or maybe the REBOL community is so small that
  group projects haven't surfaced yet.
 
  I'd like to know your throughts on this.
 
  Ryan Christiansen
  Web Developer
 





[REBOL] %detach.r Re:(5)

2000-06-12 Thread RChristiansen

nope. hmm...

The example in %bin-data.r from the rebol.com script library works just fine 
for the 'data defined in the script.

The 'word I am creating seems to be in exactly the same format, but so far I 
have been unable to create an image using three different images (two jpeg 
and one GIF.)

 write/binary %image.jpg load imagecode
 
   maybe?
 





[REBOL] detach-image: func (was: %detach.r Re:(4))

2000-06-12 Thread RChristiansen

Here is where I'm at...


detach-image: func [
"detach an image file from the contents of an email"
email-contents [string!] "the content of an email"
][
image-code: copy []

if find/any email-contents {image/jpeg} [
parse/all email-contents [thru {base64^/^/} copy text to {==} (append 
image-code text)]
]

insert image-code "64#{" append image-code "}"
]


img: detach-image msg/content

write/binary %img.jpg img

Still does not display an image in a browser and is unreadable by an image 
viewer.

-Ryan




[REBOL] solved (was detach-image: func (was: %detach.r ) ) Re:(6)

2000-06-12 Thread RChristiansen

This now works (with .jpg images, at least)...


detach-image: func [
"detach an image file from the contents of an email"
email-contents [string!] "the content of an email"
][
image-code: make string! 10

if find/any email-contents {image/jpeg} [
parse/all email-contents [thru {base64^/^/} copy text thru {==} 
(append image-code text)]
]

display-this: image-code
]


img: detach-image msg/content

write/binary %img.jpg debase img



Thanks for all of the help. Now for further testing with GIFs, etc.

-Ryan

 Hi Ryan
 
 Here's the answer.  Do not add the "64{" and "}", just use DEBASE/BASE 
 Your TEXT  var is already a string! datatype.  Look at this:
 
  bin: read/binary %bay.jpg
 == #{
 FFD8FFE000104A4649460001010100480048FFDB00430008060607060508
 0707070909080A0C140D0C0B0B0C1912130F141D1A1F1E1D1A1C1C20242E...
 
  bin64: enbase/base bin 64
 ==
 {/9j/4AAQSkZJRgABAQEASABIAAD/2wBDAAgGBgcGBQgHBwcJCQgKDBQNDAsLDBkSEw8UHRofH
 h0 aH BwgJC4nICIsIxwcKDcpLDAxNDQ0Hyc5PTgyPC4zNDL/2wBDAQk...
 
  write/binary %test.jpg debase/base bin64 64
 
 The JPG is restored.  I e-mailed myself bay.jpg as an attachment using
 base64 encoding,  read my pop mail box into a file,  extracted the base64
 image with a text editor and it was exactly the same as BIN64 above.
 
 HTH
 
 Larry
 
 - Original Message -
 From: [EMAIL PROTECTED]
 To: [EMAIL PROTECTED]
 Sent: Monday, June 12, 2000 1:38 PM
 Subject: [REBOL] detach-image: func (was: %detach.r Re:(4))
 
 
  Here is where I'm at...
 
 
  detach-image: func [
  "detach an image file from the contents of an email"
  email-contents [string!] "the content of an email"
  ][
  image-code: copy []
 
  if find/any email-contents {image/jpeg} [
  parse/all email-contents [thru {base64^/^/} copy text to {==} (append
  image-code text)]
  ]
 
  insert image-code "64#{" append image-code "}"
  ]
 
 
  img: detach-image msg/content
 
  write/binary %img.jpg img
 
  Still does not display an image in a browser and is unreadable by an
  image viewer.
 
  -Ryan
 
 





[REBOL] detach.r

2000-06-09 Thread RChristiansen

I am trying to detach an attachment (.jpg image) from an e-mail using the 
script detach.r from the REBOL script library. Unfortunately, I am getting an 
error, as follows...

 detach msg/content
starting decoding process...
** Script Error: find expected series argument of type
: series port bitset.
** Where: if boundary: find/tail boundary {boundary="}

In the 'msg/content, there is no {boundary="} statement. Instead, there is a {--
Message-Boundary-11825} statement.

My question is: Is my Pegasus e-mail client sending some non-standard 
"boundary" indicator? Is there any way to set this up so that the script will 
work with most e-mail clients?

I can't find any other information in the REBOL docs or examples about 
detaching e-mail attachments.

Thanks. Detailed msg/content and detach.r script information follows...

The msg/content looks as follows...

 write %content.txt msg/content

--Message-Boundary-11825
Content-type: text/plain; charset=US-ASCII
Content-transfer-encoding: 7BIT
Content-description: Mail message body



--Message-Boundary-11825
Content-type: text/plain; charset=US-ASCII
Content-disposition: inline
Content-description: Attachment information.

The following section of this message contains a file attachment
prepared for transmission using the Internet MIME message format.
If you are using Pegasus Mail, or any another MIME-compliant system,
you should be able to save it or view it from within your mailer.
If you cannot, please ask your system administrator for assistance.

    File information ---
 File:  international.JPG
 Date:  9 Jun 2000, 14:24
 Size:  4072 bytes.
 Type:  JPEG-image

--Message-Boundary-11825
Content-type: Image/JPEG; name="international.JPG"
Content-disposition: attachment; filename="international.JPG"
Content-transfer-encoding: BASE64

/9j/4AAQSkZJRgABAQEAYABgAAD/2wBDABALDA4MChAODQ4SERATGCgaGBYWGDEjJR0oOjM9
PDkzODdASFxOQERXRTc4UG1RV19iZ2hnPk1xeXBkeFxlZ2P/2wBDARESEhgVGC8aGi9jQjhC
Y2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2P/wAAR
CABbAGQDASIAAhEBAxEB/8QAHwAAAQUBAQEBAQEAAAECAwQFBgcICQoL/8QAtRAA
AgEDAwIEAwUFBAQAAAF9AQIDAAQRBRIhMUEGE1FhByJxFDKBkaEII0KxwRVS0fAkM2JyggkK
FhcYGRolJicoKSo0NTY3ODk6Q0RFRkdISUpTVFVWV1hZWmNkZWZnaGlqc3R1dnd4eXqDhIWG
h4iJipKTlJWWl5iZmqKjpKWmp6ipqrKztLW2t7i5usLDxMXGx8jJytLT1NXW19jZ2uHi4+Tl
5ufo6erx8vP09fb3+Pn6/8QAHwEAAwEBAQEBAQEBAQECAwQFBgcICQoL/8QAtREA
AgECBAQDBAcFBAQAAQJ3AAECAxEEBSExBhJBUQdhcRMiMoEIFEKRobHBCSMzUvAVYnLRChYk
NOEl8RcYGRomJygpKjU2Nzg5OkNERUZHSElKU1RVVldYWVpjZGVmZ2hpanN0dXZ3eHl6goOE
hYaHiImKkpOUlZaXmJmaoqOkpaanqKmqsrO0tba3uLm6wsPExcbHyMnK0tPU1dbX2Nna4uPk
5ebn6Onq8vP09fb3+Pn6/9oADAMBAAIRAxEAPwD0CiiigAqOeeG2haa4ljhiX7zyMFUduSaw
tT1fUGnvrSwSKM23DScyytmMN8keACcsAMt+HNZi293L500kIuHti/nx3jGeY5OSiAfIuY2H
C8EkKemapRE3Y7IuBIseGywJB2nHGO/Qdenfn0NMiaUiQzpGgDHZtctlexOQMH25+tcXdalq
UcKaZpkj2yWASKZwqSPgkJEBkgEsMMegHr2qLUdZ1S31i0tZ7iNYy8RlYWz7sNuOwYLg9MfK
evQ8Gl3KSO4llzC4hliEu07C/Kg9sgHpWDdajdWqpZSzia4wZAwwXcDJBwhUAbgBzgEDaeua
bC51W0tZ45kiGEleIqH+bCuFJI46g9M9CCO8tppF5KEbULhSsRHkxI3mAcMMlyoOcNj1+Xkn
Jp3jHcbiRS6tfSTxQxyolzLPiGJSu2RFJJ3ZXIyp+YgnG0EcnaemrDi0iGyjcQpKrM28yrMz
OGwADlifQcEEdjkVZOpR2CwrqFzGIn+VblyEy3J2uOgO0dRwSDwvAKdnsKzRp0VHBPDcwrNb
yxzRN9142DKe3BFSUhBRRRQAVXv7yOws5LmVZGVMALGu5mJIAUDuSSB+NTSSJFG0kjqiICzM
xwFA6kmqMu6XUWF5BALGHyzC8yqS0xJAKndxjIAyASTx7gHHfv49aupJ0u7e5EjzYd1IKsfk
zyQflAHynjaR9dZNTNxCb+G3CsYlSafzA6xgE4yA2SBv3E/L8hySDxS+KmhlX9/ArqVZVlGG
eInCrtB65YjIyBjrkVztjdfZppIo13MIykyyx8PGxHzFc5fGTwN2fmGTuDHZPoJo0dYiubK2
iubtJtSnt5AkG3KpJISCkjIpwu0lkx1bj1FQXMtpNCIpdRvFlsWlSLyXdXYru3NJIQwztBOB
ztyQPmCDTuIle0murq5cRj5mngLsskewEOiZYIVYg7hk/Jnoaw7CxmSVFm2WgtR5UzQZTOwk
ly3BG5cZ7kAHIHFRK0dX1E5KKuzS0O7j0mRo9TLrDLDaiMLGzFJfKCmNgBu3EKDjB4x0zz0l
tqGnzTLFa38Jmb/lgXG/pyCh5BGOQeRisa3g+0XNvc2mQsDFGmfOZU2joSMuvJwdwGfm+bAq
fWNKtdUgX7TlTCd6SAAlfXgggjjkGojTlON9jP6xrqjo6xdctBNdWR+0PbBnZd8DskjtjcEy
OikKxPTlVrL0PULy2srWSIedYmNVMD7g0WDgtGSCzLjJCnnAGPSuju7W31SzRWkJjYrIkkL4
OPVWHTIyMjsT61yu62ZvCalsZSk21zawxajco0v7tiW8wy4jOD8wIVhjdkAZ7g5419Ge6k0m
2e+lhluGQFpIfuOOxH1GOnGenFc8/hS1S6SS2e5gkhV8JFKWLZTbhSx+U4xg5xxj6dRZsjWU
DRwtAhjUrEybTGMcKR2x0xW0IyitWVO19CaiiitCCrqdwbTTbm42bxFGXYZx8oGTj3xnA7nu
OtcjKdVltItPguvKeafzLf7RudlRChUkkZB34ODnAbHbFdF4kmRdMe33/v58COISBGlwQSOV
YYxwcgjB5wMkYWnRNqlxbRrA0S20ykOFVggTYWUkYXl0KjaAOAQMCgC34msJJrdFt3cSRvGM
BQytmRCSwxnAxngjpXJuL2RZPtVs+5nWRmtwVZBgxLw2CM7c59ByADXpF5bI8cxkVXR1ClWG
QR0INcEFkstdu7SxtUmijkVvLYhVXeM5GM8/OR0+6uOc1bcre6E2lHmNDRJY0usT2wWWOMCK
eItgLk/JjOQPmzjp0H8INW7q1+2Wk0ErFGuABK8I2FjwDjr1AxznjiqOlXd1IBFPbxQtFH5k
wQFiclgAoGcnCg5yT2xzxYii1G+hF3bTC26+XA+3qCR8/BIORyARjp1BNc7VWo+XscUpSe47
TrdL/UDqILmCGRhAxm3+YfmV2Gc7V9ApGcZPbGhqV9FYQLJMD5bMELA4C5IGSe3X+dP0+0Wx
sorZMfIOSq7QWJySB2ySTgcCpZoY54mjmRXRhgqwyDXdGNo2IbuzIRZrLz57RFmgRyWgUZlB
4z0JHI5AwD8wzg5Naekzp9iaCKZWMJ82PYcgROzbB6ADlQATwo6ZwKdi+l6dLcWlsFt1UtLI
SSEBwu7knjAZPbkY74u2DWP267eCVDcXFvHIyqR86DcFcevXGef4fauedNL3+vU3oO0yG48S
2UFxgrNJNDJsmRIj8gwTuOcALjJz+NS2+ux28DSTW94bQuz/AGnHmhVbLgnHO3BwCAQOhPFY

[REBOL] detach.r Re:

2000-06-09 Thread RChristiansen

Perhaps the problem lies in the fact this function is looking for a string! while 
an e-mail message as understood by REBOL is an object! Changing the 
word declaration for 'email from

email [string!]

to

email [object!]

doesn't solve the problem, however.

 detach: func [
 {takes in the whole email text and returns a block of filenames 
 and decoded base64 attachments present in the email}
 email [string!] 
 /local boundary body attached headers file
 ][
print "starting decoding process..."
headers: import-email email
boundary: headers/content-type
if boundary: find/tail boundary {boundary="} [
 remove back tail boundary
 print ["Boundary string:" boundary]
]
either boundary [
 attached: make block! 2
 body: headers/content
 while [body: find/tail body boundary] [
 print ["Found message attachment; remaining length:" length?
 body] headers: parse-header system/standard/email skip body 1
 ; end of the message attachments? if find/match body "--"
 [print "attachents finished" break] file: copy/part
 headers/content find body: headers/content "^/--" either all [
 not error? try [headers/content-transfer-encoding] 
 find headers/content-transfer-encoding "base64"
 ] [ 
 print "about to decode..."
 insert file "64#{" append file "}"
 print ["Adding attachment; encoded length:" length? file]
 seek: file while [seek: find seek "^/"] [remove seek]
 append attached reduce [find-filename headers to-string
 load file]
 ] [ ; not base64 encoded... just add it directly
 append attached reduce [find-filename headers file]
 ]
 ]
 attached
 ] [none]
 ]
 





[REBOL] detach.r Re:(2)

2000-06-09 Thread RChristiansen

Doing as you said overcame the problem of the function looking for a string! 
instead of an object!

But...

 detach msg
starting decoding process...
== none

Then I had to change

   if boundary: find/tail boundary {boundary="}

to 

   if boundary: find/tail boundary {boundary=}

Then...

 do %detach.r
Script: "Save email attachments to disk" (9-Jun-1999)
 detach msg
starting decoding process...
Boundary string: Message-Boundary-1182
Found message attachment; remaining length: 6451
Found message attachment; remaining length: 6309
Found message attachment; remaining length: 5687
Found message attachment; remaining length: 5
** Script Error: copy expected range argument of type: number series
 port.
** Where: file: copy/part headers/content find body:


Again, is the {boundary=} statement sent by Pegasus causing problems?

 
 Take another look at the detach function.  It expects the wohle email
 message as text, including all the headers and everything.  If you already
 have the imported email object, you should be able to change the top of
 the detach func to look like this:
 
 detach: func [
 {Takes in the whole email text and returns a block of filenames
 and decoded base64 attachments present in the email}
 mail [object!]
 ][
 headers: mail
 print "Starting decoding process..."
 boundary: headers/content-type
 
 .. rest of script...
 
 and then call 'detach msg'
 
 Sterling
 
  I am trying to detach an attachment (.jpg image) from an e-mail using
  the script detach.r from the REBOL script library. Unfortunately, I am
  getting an error, as follows...
  
   detach msg/content
  starting decoding process...
  ** Script Error: find expected series argument of type
  : series port bitset.
  ** Where: if boundary: find/tail boundary {boundary="}
  
  In the 'msg/content, there is no {boundary="} statement. Instead, there
  is a {-- Message-Boundary-11825} statement.
  
  My question is: Is my Pegasus e-mail client sending some non-standard
  "boundary" indicator? Is there any way to set this up so that the script
  will work with most e-mail clients?
  
  I can't find any other information in the REBOL docs or examples about
  detaching e-mail attachments.
  
  Thanks. Detailed msg/content and detach.r script information follows...
  
  The msg/content looks as follows...
  
 
 cut out the rest
 





[REBOL] multi-tasking? Re:

2000-06-08 Thread RChristiansen

If you do the following...

do %script.r
do %script2.r
do %script3.r

The scripts will execute in succession, but when they complete is up to the 
processor, RAM, hard drive, etc.

This is how I understand it, anyway, because you are essentially mult-
tasking within a single task, which is the REBOL application itself.

 Hi i'm writting to ask if it's
 possible to launch other scripts
 from a single script, but, without
 having to wait for each script
 to end before the next one can starts.
 
 thanks.  timmy
 





[REBOL] set in object 'variable string Re:(2)

2000-06-07 Thread RChristiansen

This is not an option. The documentation says you can "set in" new values 
to an existing object. But it is not working on /core for WinNT. Is the 
documentation incorrect or...

 may have to create another object?
 
 test-obj-2: make test-object [
 y: "another string"
 ]




[REBOL] set in object 'variable string Re:(2)

2000-06-07 Thread RChristiansen

The documentation is very poor concerning objects because there is a 
paragragh in the objects documentation as follows...


The in function can also be used to set words:
set in fred 'balance $20.00

print fred/balance
$20.00


This paragraph is telling me I can set a new value into an existing object 
using the following syntax...

set in object 'word value

But obviously it doesn't work.


The following does work, however, and thank you for the help.

-Ryan

  ob1: make object! [x: "hello"]
  ob1: make ob1 [y: "world"]
  probe ob1
 
 make object! [
 x: "hello"
 y: "world"
 ]





[REBOL] set in object variable string Re:(3)

2000-06-07 Thread RChristiansen

Ah, yes, I see. Too bad it doesn't work the other way, too!

8-)

-Ryan

 
 It works if the word already exists in the object.
 
 Mike.
 
  test-object: make object! [x: "string"]
  print test-object/x
 string
  set in test-object 'x "new value"
 == "new value"
  print test-object/x
 new value
 





[REBOL] set in object 'variable string Re:(4)

2000-06-07 Thread RChristiansen

 "set" means "assign a value to," as when
  you declare a variable and then assign it a value.
 
 You were trying to assign a value to a variable that
  did not exist.

Yes, but that IS the purpose of "set"

 set 'test-word "test words"
== "test words"
 print test-word
test words


I have just assigned a value to a variable that previously did not exist.

Thus, reading that I can...

set in object 'word value

makes perfect sense.




[REBOL] Declaring a constant Re:

2000-06-07 Thread RChristiansen

protect 'digit-str

 How may I set a word to a constant value?
 as in:
 digit-str: "0123456789" ;cast in stone, code can't change it
 TIA
 -Tim
 





[REBOL] AW: group projects Re:(3)

2000-06-05 Thread RChristiansen

Where can I find more info on this?

 Your last point could be solved by the Cachè-Database which already uses
 objects for storing information. They call it postrelational database or
 multidimensional database.





[REBOL] crlf and newline (was Re: parsing by period and newline)

2000-06-05 Thread RChristiansen

Thank you for this help.

Another question: I understand the difference between "newline" and "crlf" 
but...

1. Is "crlf" a replacement for "newline newline" ?

2. Is "crlf" a Windows convention vs. *nix?

3. When should I be concerned to make sure I parse by "crlf" as well as 
"newline"?

 Hello [EMAIL PROTECTED]!
 
 On 05-Giu-00, you wrote:
 
  n end-of-paragraph: rejoin [{.} newline]
 
  n ;does not work as I desire (i.e. parsing ONLY by instances of
  n a period followed by a newline character.) Using a charset
 
 When you use PARSE in that way, it splits the string at each
 occurrence of any character in the second string; that is, the
 first string is split each time a #"." is found, and each time a
 newline is found. PARSE will split the string twice if the two
 characters are found in sequence.
 
 Anyway, a working solution is:
 
 breakdown-content: func [
 "breakdown an e-mail content field into its parts"
 msg [object!] "e-mail message"
 ][
 article-info: msg/content
 content-parts: copy []
 parse/all article-info [
 some [copy part thru ".^/" (append content-parts part)]
 ; this is if you need to keep the last paragraph
 ; even if it is not ended by . and newline
 [end | copy part to end (append content-parts part)]
 ]
 ]
 
 Using your example I get:
 
  content-parts
 == ["^/^/First paragraph here.^/" "^/Then a second paragraph. Another
 sentence.^/" "^/A final paragraph.^/" "^/"]
 
 If you want to get rid of the newlines, you can use TRIM/LINES,
 changing:
 append content-parts part
 to:
 append content-parts trim/lines part
 
 This way I get:
 
  content-parts 
 == ["First paragraph here." "Then a second paragraph. Another sentence."
 "A final paragraph." ""]
 
 Regards,
 Gabriele.
 -- 
 Gabriele Santilli [EMAIL PROTECTED] - Amigan - REBOL programmer
 Amiga Group Italia sez. L'Aquila -- http://www.amyresource.it/AGI/
 





[REBOL] group projects

2000-06-03 Thread RChristiansen

I checked SourceForge and there isn't a single REBOL project listed.

I have started a project myself and I have a vision, but I'm not sure whether 
SourceForge is the place to post it. Does anyone have plans for a REBOL 
site where persons can work together on REBOL projects? Is anyone 
interested in working on group projects?

My sense is that the REBOL community is largely made up of developers 
who may be averse to group projects for fear that someone else may make 
money off of their ideas. Or maybe the REBOL community is so small that 
group projects haven't surfaced yet.

I'd like to know your throughts on this.

Ryan Christiansen
Web Developer




[REBOL] loading objects

2000-05-23 Thread RChristiansen

I have a script that saves the following as text files in a directory...


make object! [
headline: "in the woods"
subheadline: "out of the woods"
body: ["blue forest" "" "" "red forest" "" "" "green forest" ""]
]


How can I load this information and then use it?

The following does not work:


absolute-path: "absolute/path/articles/"

read-directory: reform [ "news-directory: read" rejoin [{%} absolute-path] ]
do read-directory

news-directory: tail news-directory

file-list: copy []
for file-grab 1 10 1 [
news-directory: back news-directory
file-name: first news-directory
append file-list file-name
]

foreach file-name file-list [
read-article: reform ["article-content: load" rejoin [{%} absolute-path file-
name] ]
do read-article
print article-content/headline
print article-content/subheadline
]

** Script Error: Invalid path value: headline.
** Where: print article-content/headline
print article-content/subheadline




[REBOL] loading objects Re:(2)

2000-05-23 Thread RChristiansen

Yes, that works. I would have never thought of that.

 Hey there Ryan,
 Try adding do before load. I dont know why..
 
 read-article: reform ["article-content: do load" rejoin [{%}
 absolute-path
 file-name]]
 
 --Ryan
 
 [EMAIL PROTECTED] wrote:
 
  I have a script that saves the following as text files in a directory...
 
  make object! [
  headline: "in the woods"
  subheadline: "out of the woods"
  body: ["blue forest" "" "" "red forest" "" "" "green forest" ""]
  ]
 
  How can I load this information and then use it?
 
  The following does not work:
 
  absolute-path: "absolute/path/articles/"
 
  read-directory: reform [ "news-directory: read" rejoin [{%}
  absolute-path] ] do read-directory
 
  news-directory: tail news-directory
 
  file-list: copy []
  for file-grab 1 10 1 [
  news-directory: back news-directory
  file-name: first news-directory
  append file-list file-name
  ]
 
  foreach file-name file-list [
  read-article: reform ["article-content: load" rejoin [{%}
  absolute-path file-
  name] ]
  do read-article
  print article-content/headline
  print article-content/subheadline
  ]
 
  ** Script Error: Invalid path value: headline.
  ** Where: print article-content/headline
  print article-content/subheadline
 





[REBOL] variable not local?

2000-05-22 Thread RChristiansen

Loading the following functions and then using the expression...

convert-email-object msg

...where "msg" is an e-mail object loaded from a mailbox...

produces too many values for the "body" word in the resultant object...

make object! [
headline: "Nixon said he will run again"
subheadline: "Aides said his health is of no concern"
body: ["first paragraph first article" "" "" "second paragraph second article" 
"" "first paragraph second article" "" "" "second paragraph second article" ""]
]

Somehow, the "content-parts" variable in the breakdown-content function 
carries over from one operation to a second operation. Why is this 
happening?

Thanks.

-Ryan



functions used...


; -- BREAKDOWN-SUBJECT --

breakdown-subject: func [
"breakdown an e-mail subject field into its parts"
msg [object!] "e-mail message"
/local
subject-info [string!] "the Subject line of the e-mail"
subject-parts [block!] "the parts of the Subject line of the e-mail"
][
subject-info: msg/subject
subject-parts: []
foreach part parse/all subject-info ":" [
append subject-parts part
]
]


; -- BREAKDOWN-CONTENT --

breakdown-content: func [
"breakdown an e-mail content field into its parts"
msg [object!] "e-mail message"
/local
article-info [string!] "the body text of the e-mail"
content-parts [block!] "the paragraphs of the body text of the e-mail"
][
article-info: msg/content
end-of-paragraph: rejoin [{.} newline]
content-parts: []
foreach part parse/all article-info end-of-paragraph [ append content-parts 
part ]
]


; -- BREAKDOWN-EMAIL --

breakdown-email: func [
"breakdown an e-mail message object and convert it to an article object"
msg [object!] "e-mail message"
/local
subject-pieces [block!] "a block containing the parts of the Subject line of 
the e-mail"
content-pieces [block!] "a block containing the paragraphs of the body text of 
the e-mail"
article [object!] "an object containing the parts of a news article"
][

subject-pieces: breakdown-subject msg
content-pieces: breakdown-content msg

make object! [
headline: subject-pieces/1
subheadline: subject-pieces/2
body: content-pieces
]
]


; -- TIME-IN-DIGITS --

time-in-digits: func [
"convert the date and time from 'now' into a string of digits"
sun-dial [date!] "the current date and time from 'now'"
][
year: to-string sun-dial/year
month: to-string sun-dial/month
if (length? month)  2 [insert month "0"]
day: to-string sun-dial/day
if (length? day)  2 [insert day "0"]

current-time: sun-dial/time
hour: to-string current-time/hour
if (length? hour)  2 [insert hour "0"]
minutes: to-string current-time/minute
if (length? minutes)  2 [insert minutes "0"]
seconds: to-string current-time/second
if (length? seconds)  2 [insert seconds "0"]

rejoin [year month day hour minutes seconds]
]


; -- CONVERT-EMAIL-OBJECT --

convert-email-object: func [
"convert an email object into an object a news article object and write it as 
a file"
msg [object!] "e-mail message"
/local
file-name [string!] "a string of digits used to name a file"
complete-file-name [string!] "a file name using a string of digits and an 
extension"
][

now-digits: time-in-digits now

object-name: rejoin ["article" now-digits]

generate-object: rejoin [ reform [ "save" rejoin [{%absolute/path/articles/} 
object-name {.r}] ] " " reform [rejoin [object-name ":"] "breakdown-email msg"] ]

do generate-object

;temp-one: find person 'full.name
;set in article 'byline temp-one/2

;temp-two: find person 'reporter.title
;set in article 'title temp-two/2

wait 1
]




[REBOL] (Fwd) RE: publication inquiry

2000-05-19 Thread RChristiansen


--- Forwarded Message Follows ---
From:   "Graab, Denise" [EMAIL PROTECTED]
To: "'[EMAIL PROTECTED]'" [EMAIL PROTECTED]
Subject:RE: publication inquiry
Date sent:  Fri, 19 May 2000 13:00:42 -0400

REBOL: The Official Guide is due to be published in July.  

Call 1-800-262-4729 or visit www.REBOLpress.com for details on ordering.  

Thank you.

-Original Message-
From: Ryan C. Christiansen [mailto:[EMAIL PROTECTED]]
Sent: Wednesday, May 17, 2000 2:06 PM To: denise_graab@mcgraw-
hill.com
Subject: publication inquiry


Hello.

Can you tell me when REBOL: The Official Guide will become available for
purchase?

Thank you.

Ryan Christiansen
Web Developer




[REBOL] Re: no exact naming rules (was [REBOL] AW: [REBOL] Syntax highlighting for GoldED)

2000-05-18 Thread RChristiansen

I am very much a fan of text editors with good GUIs combined with good functionality. 
I use text editors extensively for HTML and for CGI scripting (but I am not a C++ 
programmer.)

I would very much like to see a text editor with the following: two "drop zones" where 
you can drag and drop new words that should be highlighted in a script. One drop 
zone would be for words universal to the type of file you are writing in (.r, .html, 
.pl) 
and the other drop zone would be for words local to the specific file you are writing. 
After dragging a new word to the drop zone, you would choose the type of 
highlighting preferred from a drop-down menu.

What do you think? 

 
 There isn't. And I doubtit's possible to write a good syntax
 highlighting
 module for rebol at all.
 In most languages  there are exact naming rules, e.g. in my favourite
 language E: first two literals of word are upper case-constant first two
 literals of word are lowercase , not ending in a (  -variable first
 literal upper case, second one lower case -  standard E function or a
 system function ...
 
 But with rebol ?
 imagine the syntax parser finds a word like Öffne_Datei :
 what is it ? A variable, a function ?





[REBOL] Re: data storage (was: [REBOL] rebol ecommerce site Re:(3))

2000-05-17 Thread RChristiansen

This subject brings something else to mind I would like to share...

I am looking forward to REBOL/Command in the hopes that the BeOS version will support 
read/write access to extended BeOS File System attributes. Extended BFS attributes are 
a simple, reliable way to store and retrieve data in fast, robust, journaled file 
system.

Within the next few weeks or months, the new BeOS kernel-based networking environment 
dubbed "BONE" is expected to be released in a point release upgrade for the BeOS. BONE 
is rumored to be just as robust and stable as Linux. Meanwhile, Apache 2.0 when 
completed will support the BeOS.


I was wondering if your
 content is store in a database or flat file.  How did you deal with
 REBOL's data limitations?




[REBOL] [ANN] Scoop 1.0

2000-05-15 Thread RChristiansen

Scoop 1.0 has been released and is available at...

http://www.bebits.com/app/1226

Thanks for all of the help.

-Ryan




[REBOL] syntax highlighting

2000-05-15 Thread RChristiansen

Which text editors do have REBOL syntax highlighting?

I've been trying to convince developers of different text editors to
include REBOL syntax highlighting, but there is little interest in supporting
REBOL.

Are there any syntax highlighting guidelines for REBOL that I could share
with a potential developer?

 Is there a Rebol-syntax hightlighting module for emacs?
 
 --yoh





[REBOL] two-digit return of now switches

2000-05-08 Thread RChristiansen

Is there any way to make REBOL return a two-digit /month or /day or /hour or /minute 
or /second ?

I have a file-naming scheme which names files based on the date and time they are 
created in the following format...

20001225122345.html

The above file was named at 12:23:45 p.m. on Dec. 25, 2000

But unfortunately REBOL returns a single digit for a /day for example if the day is 
less than 10. This is not satisfactory since I want to be able to find my newest 
document at the tail of the directory.

Here is the naming scheme I am currently using...


current-time: now/time

file-name: rejoin [now/year now/month now/day current-time/hour current-time/minute 
current-time/second]

complete-file-name: rejoin [{%} file-name {.html}]

write-file: reform ["write" complete-file-name "new-article"]

do write-file

wait 1




[REBOL] two-digit return of now switches Re:(2)

2000-05-08 Thread RChristiansen

This doesn't work...

month: to-string now/month
if (length? month  2) [insert month "0"]

** Script Error: Expected one of: string! - not: integer!.
** Where: if (length? month  2) [insert month "0"]

How come?


  if (length? tmp: to-string now/day)  2 [insert tmp "0"]




  1   2   >