Ready for REBOL/Core 2.6?
[1/20] from: carl:rebol at: 6-Mar-2002 9:41
We are gearing up to release REBOL/Core 2.6. This is the same
REBOL kernel used for REBOL/Link and REBOL/Serve (in IOS Express).
It includes numerous bug fixes and a few new features. It is
numbered as 2.6 (rather than 2.5.x) because it introduces a change
in the interpreter to make it easier to deal with words and parens
as data, and also allows the literal expression of the NONE, TRUE,
FALSE, objects, series with offsets, and more (including SAVE and
MOLD refinements for saving out in this new format).
Before we release 2.6, we will be releasing an experimental version
to give you a chance to test it for yourself, report serious bugs,
and to give us a chance to write more docs on it... and perhaps add
just a few more functions that we want to see (EXTRACT and my personal
favorite, REMOVE-EACH).
The experimental 2.6 will be released next week for Windows and
Linux platforms. We will announce it here on this list and on our
website.
Sorry we've been so quiet recently. As you can imagine, there's been
a lot going on in the world of REBOL.
-Carl
[2/20] from: inetw3:mindspring at: 7-Mar-2002 22:42
----- Original Message -----
From: Carl Sassenrath <[carl--rebol--com]>
To: <[rebol-list--rebol--com]>
Sent: Wednesday, March 06, 2002 12:41 PM
Subject: [REBOL] Ready for REBOL/Core 2.6?
> We are gearing up to release REBOL/Core 2.6. This is the same
> REBOL kernel used for REBOL/Link and REBOL/Serve (in IOS Express).
Hello Carl and Rebolers',
Is it possible to have "Clipboard://" feature in
this REBOL/Core 2.6?
I believe Rebol can be used on the web/browser for
what it was intended for, retrieving browser/webApp
data as a (*dialect messaging object for data binding).
*DMO/dataType messenger.
By serializing (to-series!) XHTML/XML (the dialect)
making it into dataType data no one has to spend too
much time with other tools to make webApps/Browsers do
what they should already be doing,------------------------------
------------> (DOM scripting, Dhtml push/pull GUI)<-----------
from the web page to or from the client.
Rebol should change XHTML/XML dialects to pure Rebol
scripts before its downloaded to the client and vice versa to
the server in the web.
The purpose for clipboard//:? Right now that's the best way I
came up with getting the %.r onto the client and into Rebol to
execute it and add it back to the DOM. Hey, it works for me
Unless some ones willing to write rebol as a Rebol/script
(XSLtype) API dialect????? that's a lot for one person!!!!,
can we get clipboard:// support please for R/Core or is there
a work around?
if all i had to write was
<ReboliousPage: copy DMO>
<html rebol: http://www.rebol.com/news>
<to title> </title> //gets page title
<DIV>What's Rebol up to?</DIV>
<to image/1> //find first image
<properties>
style:absolute
left="50"
top="95"
<handle>
mouseover "click and change image"
mouseup change image/1 http://www.rebolforces.com/image/1
</handle>
</properties>
</image1>
<thru #H*/1 > //thru first heading to first para
<to p/1><properties> style: block </properties> <p/1>
<#H*/1 >
<BIND ReboliousPage>... just an idea.....
while im at MSN.com i see a Rebol Ad and click it.
By clicking, it downloads/copies/executes %.r
and the browser/webapp pastes the new page into
the same page as new data. COOL.....
[3/20] from: holger::rebol::net at: 7-Mar-2002 21:00
On Thu, Mar 07, 2002 at 10:42:51PM -0500, iNetW3 wrote:
> > We are gearing up to release REBOL/Core 2.6. This is the same
> > REBOL kernel used for REBOL/Link and REBOL/Serve (in IOS Express).
>
> Hello Carl and Rebolers',
>
> Is it possible to have "Clipboard://" feature in
> this REBOL/Core 2.6?
No, because Unix requires an X11 server for clipboard support.
View supports X11 and the clipboard, but Core does not. If Core
was linked against X11 libraries then it could not be used on
servers that do not have X11 installed.
--
Holger Kruse
[kruse--nordicglobal--com]
[4/20] from: cyphre:seznam:cz at: 8-Mar-2002 10:34
Holger(RT),
I forgot one very useful feature which would probably lot of rebolers love
to have in new Rebol/Core. I mean the possibility to add new words to
specified context...something like:
extend object [new-word: value]
I remember Carl said on about this feature some time ago at old /Express
conference:
I've wanted that for several years. Just not had the time to code it...
but would only take an hour to add."
So will be possible to postpone the release of new /Core by an hour? ;-)
regards,
Cyphre
[5/20] from: cyphre:seznam:cz at: 8-Mar-2002 10:09
Hello Holger and all,
Will be too difficult to add into Rebol/Core 2.6 "make/deep" feature for
creating nested object structures? Are you even planning to add such feature
to Rebol?
Regards,
Cyphre
[6/20] from: petr:krenzelok:trz:cz at: 8-Mar-2002 11:35
Cyphre wrote:
> Hello Holger and all,
>
> Will be too difficult to add into Rebol/Core 2.6 "make/deep" feature for
> creating nested object structures? Are you even planning to add such feature
> to Rebol?
I asked Carl in IOS messenger, and he told me something like it would a little
bit complicate make function or so, so I suggested to use new word, e.g. 'clone.
Well, from the comfort of use pov, make/deep and ability to extend objects are
most essential missing parts in rebol/core imo (my third favorite one is with
parse and ability to match first occurance of [a | b | c] :-)....
-pekr-
[7/20] from: m:koopmans2:chello:nl at: 8-Mar-2002 13:29
Parse Nirvana:
I'd like the restriction of the most complex rule first (the one with
subrules) removed. Or documented ;-)
--Maarten
[8/20] from: carl:cybercraft at: 9-Mar-2002 2:34
On 08-Mar-02, Petr Krenzelok wrote:
> Cyphre wrote:
>> Hello Holger and all,
<<quoted lines omitted: 8>>
> make/deep and ability to extend objects are most essential missing
> parts in rebol/core imo
What about save/png? Anyone know if that'll be in? Be nice to be
able to do simple things to a bitmap and then save it as a PNG for
inclusion in a webpage.
--
Carl Read
[9/20] from: holger:rebol at: 8-Mar-2002 6:03
On Sat, Mar 09, 2002 at 02:34:14AM +1200, Carl Read wrote:
> What about save/png? Anyone know if that'll be in? Be nice to be
> able to do simple things to a bitmap and then save it as a PNG for
> inclusion in a webpage.
Core does not have any image manipulation functions. If you want
to perform image manipulations in automated environments, without
X11 installed, then you need to use Command.
--
Holger Kruse
[kruse--nordicglobal--com]
[10/20] from: holger:rebol at: 8-Mar-2002 6:09
On Fri, Mar 08, 2002 at 10:34:35AM +0100, Cyphre wrote:
> Holger(RT),
> I forgot one very useful feature which would probably lot of rebolers love
<<quoted lines omitted: 6>>
> but would only take an hour to add."
> So will be possible to postpone the release of new /Core by an hour? ;-)
Carl may have been exaggerating there. The reason why objects cannot be
extended is the same reason why there is currently a limit on the number
of words in the system (which, btw, will be increased from 4000 to 8000
in Core 2.6). We do intend to lift these restrictions, but doing so is not
trivial, and it most likely won't be in 2.6.
--
Holger Kruse
[kruse--nordicglobal--com]
[11/20] from: jason:cunliffe:verizon at: 8-Mar-2002 1:43
> > Is it possible to have "Clipboard://" feature in
> > this REBOL/Core 2.6?
>
> No, because Unix requires an X11 server for clipboard support.
> View supports X11 and the clipboard, but Core does not. If Core
> was linked against X11 libraries then it could not be used on
> servers that do not have X11 installed.
Will the next release of /View support binary data via clipboard:// ?
Essential for /View image cut n paste
./Jason
[12/20] from: robbo1mark:aol at: 8-Mar-2002 11:21
Holger,
can you elucidate, why is there currently a limit on the number of words and the ability
to extend object?
it often occurs to me that REBOL is would be a much better / more concise / compact meta-language
than XML except that XML can have potentially infinite words & tags wheras REBOL is bounded
by upper limits.
Any expanded explanation would be appreciated.
thanks,
Mark Dickson
In a message dated Fri, 8 Mar 2002 9:48:27 AM Eastern Standard Time, Holger Kruse <[holger--rebol--net]>
writes:
[13/20] from: holger:rebol at: 8-Mar-2002 8:33
On Fri, Mar 08, 2002 at 11:21:04AM -0500, [Robbo1Mark--aol--com] wrote:
> Holger,
>
> can you elucidate, why is there currently a limit on the number of words and the ability
to extend object?
>
> it often occurs to me that REBOL is would be a much better / more concise / compact
meta-language than XML except that XML can have potentially infinite words & tags wheras
REBOL is bounded by upper limits.
It's an implementation detail, not a result of language design. We expect to
resolve this issue in one of the next releases.
--
Holger Kruse
[kruse--nordicglobal--com]
[14/20] from: pwoodward:cncdsl at: 8-Mar-2002 12:14
> On Fri, Mar 08, 2002 at 10:34:35AM +0100, Cyphre wrote:
> > Holger(RT),
<<quoted lines omitted: 3>>
> in Core 2.6). We do intend to lift these restrictions, but doing so is not
> trivial, and it most likely won't be in 2.6.
How would extend be significantly different than using the following?
; start example
example: make object! [
the-time: now/time
set-time: does [the-time: now/time]
]
timer: make example []
; end example
In this case, "example" is being used as a prototype object. It is cloned
(rather a new instance of it is created) as "timer". In theory (unless I'm
missing something) "timer" is now seperate from the original "example" and
can be modified independently. New variables and functions can be added to
timer
without affecting "example".
Now, I realize this isn't quite the same as
// Start Example
class MyOldObject {
public Timestamp theTime = new Timestamp(System.currentTimeMillis());
public void setTheTime() {
this.theTime.setTime(System.currentTimeMillis());
}
}
class MyNewObject extends MyOldObject {
}
// End Example
Because - in Java there is a difference between a class and an object. The
class is a blueprint, the object is an instance. In Rebol this distinction
is blurred. Using make object! essentially creates the class/object at the
same time - the word you are defining is both a class and an instance of
that class all at once.
So - when you choose to make a new word/value pairing (like timer: make
example []) you're in effect creating a new class and instance of that class
all in one. You can then freely override the variables and functions of the
newly created object as you see fit...
Sorry to ramble so much - and I could be dead wrong, but this is just the
way Rebol seems to behave when compared to other languages.
- Porter Woodward
[15/20] from: holger:rebol at: 8-Mar-2002 9:13
On Fri, Mar 08, 2002 at 01:43:34AM -0500, Jason Cunliffe wrote:
> > > Is it possible to have "Clipboard://" feature in
> > > this REBOL/Core 2.6?
<<quoted lines omitted: 4>>
> > servers that do not have X11 installed.
> Will the next release of /View support binary data via clipboard:// ?
Image data ? Possibly. The problem is that this is highly platform-dependent.
--
Holger Kruse
[kruse--nordicglobal--com]
[16/20] from: greggirwin:mindspring at: 8-Mar-2002 11:36
Hi Porter,
<< In this case, "example" is being used as a prototype object. It is
cloned
(rather a new instance of it is created) as "timer". In theory (unless I'm
missing something) "timer" is now seperate from the original "example" and
can be modified independently. New variables and functions can be added to
timer
without affecting "example". >>
The issue, as I understand it, is that you can't add new functions and
variables to TIMER. It's set of words is fixed when it is created and cannot
be extended. You would have to create a new object, based on TIMER, in order
to add new words to it.
--Gregg
[17/20] from: pwoodward:cncdsl at: 8-Mar-2002 13:52
Gregg
> The issue, as I understand it, is that you can't add new functions and
> variables to TIMER. It's set of words is fixed when it is created and
cannot
> be extended. You would have to create a new object, based on TIMER, in
order
> to add new words to it.
Yeah, I realized that - but it's not so different that the static
inheritance found in other OO languages. Unless I was to use "timer: make
example [newvar: 1000]" when I cloned the object, I can't add new variables
or functions to it.
What would be handy is if append and other block/series related functions
could work against objects. Sure, having an "extend" macro that perhaps
automated the appending of new variables and functions (or even the
overriding and extension of extisting ones) would definitely be handy in
that case.
Currently the Rebol object doesn't loose much over other, existing, object
models. If we think of our object declarations as "classes" and treat them
as somewhat static blue-prints then they behave almost exactly as a "class"
in another language. You can build a fairly complex heirarchy that way.
Then, when you use them, think of using it like - "someobject: make myclass
[]" as though you are calling "new" against the class, and creating an
instance of it.
But - what "extend" would get us is the ability to dynamically alter
existing objects from their blue prints, after they have been created. It'd
be cool, but I'm not sure it'd be of much value. If you were finding
yourself doing that a lot I suspect you may be better off just adding that
function or variable to the prototype object.
- Porter Woodward
[18/20] from: cyphre::seznam::cz at: 9-Mar-2002 12:21
=?iso-8859-2?Q?Re=3A=20=5BREBOL=5D=20Re=3A=20Ready=20for=20REBOL=2FCore=
Hi Porter,
> But - what "extend" would get us is the ability to dynamically alter
> existing objects from their blue prints, after they have been created. It'd
> be cool, but I'm not sure it'd be of much value. If you were finding
> yourself doing that a lot I suspect you may be better off just adding that
> function or variable to the prototype object.
>
I think "extend" will be very useful ;-) Especially in /View
applications where is whole graphical layout constructed from
objects(faces). The possibility of dynammically changing this
structure without rebuliding it from their blueprints is in some
advanced /View techniques absolutely a must. I think this will be
also a lot of faster to add variable to for example big database
object than rebulid the whole structure using object template...
regards
Cyphre
______________________________________________________________________
SMSvs=EDtiOskarza1,50K=E8! Vt=FDdnusmskovatvjednomkuse
http://ad2.seznam.cz/redir.cgi?instance=20854%26url=http://www.oskarmobil.cz/cz/products/i_index.htm
[19/20] from: robert:muench:robertmuench at: 11-Mar-2002 13:23
Re: Ready for REBOL/Core 2.6?
> -----Original Message-----
> From: [rebol-bounce--rebol--com] [mailto:[rebol-bounce--rebol--com]]On Behalf
<<quoted lines omitted: 5>>
> applications where is whole graphical layout constructed from
> objects(faces).
Hi, IIRC I have posted this snippet several times already. But anyway, here it's
once again:
Is this what you are looking for?
extend-object: func ['obj-word [word!] 'word [word!] value [any-type!] /local
the-obj][
all [not object? the-obj: get obj-word make error! "No object provided."]
if in the-obj word [
set in the-obj word value
return the-obj
]
set obj-word make the-obj reduce [to-set-word word value]
]
--
Robert M. Münch
IT & Management Freelancer
Mobile: +49 (0)177 2452 802
Fax : +49 (0)721 8408 9112
Web : http://www.robertmuench.de
[20/20] from: oliva:david:seznam:cz at: 29-Mar-2002 14:40
Hello Cyphre,
Friday, March 08, 2002, 10:34:35 AM, you wrote:
C> Holger(RT),
C> I forgot one very useful feature which would probably lot of rebolers love
C> to have in new Rebol/Core. I mean the possibility to add new words to
C> specified context...something like:
C> extend object [new-word: value]
and what about:
>> obj: context [a: 1]
>> probe make obj [b: 2]
make object! [
a: 1
b: 2
]
so you can have function:
>>extend: func[obj [object!] blk [block!]][make obj blk]
>>probe extend obj [c: 3]
make object! [
a: 1
c: 3
]
I think that should be enough in most cases.
I would rather appreciate some native for converting numbers to
binary!
Oldes
Notes
- Quoted lines have been omitted from some messages.
View the message alone to see the lines that have been omitted