• Home
  • Script library
  • AltME Archive
  • Mailing list
  • Articles Index
  • Site search
 

AltME groups: search

Help · search scripts · search articles · search mailing list

results summary

worldhits
r4wp917
r3wp9345
total:10262

results window for this page: [start: 601 end: 700]

world-name: r4wp

Group: Announce ... Announcements only - use Ann-reply to chat [web-public]
Cyphre:
14-Jul-2013
Some additional notes:

-you can run the demo on Saphir / R3 Andoid just by typing DEMO in 
the console

-the Linux, OSX-PPC and OSX-Intel "View" binaries needs 32-bit version 
of freetype2 library (also included in the specific build folders)

-the Linux, OSX-PPC and OSX-Intel "View" binaries are currently able 
to render DRAW dialect to image! (using the DRAW command). We'll 
be working to get full graphics support on the metioned platforms 
in the near future.
Group: !REBOL3 ... General discussion about REBOL 3 [web-public]
Andreas:
2-Jan-2013
LevelDB, if anything. But I don't expect to get to that any time 
soon.
GrahamC:
9-Jan-2013
Shouldn't I get more information than this back?
Chris:
9-Jan-2013
second load/next/header some-script

^^^^^^^^

In R2, this would get you to the point in a string immediately after 
a Rebol header.  How do you get there in R3? Consider R2:

>> load/next/header "#!/some/path 1foo^/REBOL []^/script here"
== [<header> "^/script here"]
GrahamC:
13-Jan-2013
http://www.rebol.net/wiki/Ports:_Synchronous_and_Asynchronous_Operations

Is this example supposed to work still?

 port: make port! http://www.rebol.com
   port/awake: func [event] [
       switch event/type [
           connect ready [
               write event/port [get %/]
           ]
           done [
               result: copy event/port
               return true
           ]
       ]
       false
   ]
   open port
   wait port
Robert:
13-Jan-2013
Since I didn't get any response, next try: What do you think about 
re-activating Rebol/Service?
GrahamC:
13-Jan-2013
Just wondering why I can't even get the old daytime protocol working 
from 3 years ago.
GrahamC:
16-Jan-2013
So, you can 

read time://time.nist.gov to get the date

or

write time://time.nist.gov [ GMT }

to get the date back in GMT.
GrahamC:
16-Jan-2013
Should get some concensus on this as it will affect all the schemes, 
and may need a little rewriting of the http scheme which uses write 
to pass options
Chris:
16-Jan-2013
On the http scheme, it could be the difference between adding a query 
string to a GET request (read/custom), and adding post data on a 
POST/PUT request (write).
Chris:
16-Jan-2013
I see read/get as synonymous, write/post or put, delete/delete.
GrahamC:
16-Jan-2013
the thing is that GET sends information and gets something back. 
 Same as POST.  What's the difference?
GrahamC:
16-Jan-2013
So, if you're reading a HTTP form, you can either use GET or POST 
 ....
Chris:
16-Jan-2013
GET/READ, POST/WRITE.
Chris:
16-Jan-2013
Not at all. Particularly if you consider the HTML form -- GET sends 
parameters in the URL, POST sends parameters in the body. And consider 
the usage of each: GET is usually some type of search/filter facility, 
POST is sending data to be stored.
GrahamC:
16-Jan-2013
It would be simpler if we just used 

GET and POST instead of read/write
AdrianS:
16-Jan-2013
Graham, would you prefer have functions for all HTTP methods (get, 
post, put, delete, head, options, trace, connect) ?
BrianH:
16-Jan-2013
Graham, HTTP GET is supposed to be repeatable without side effects, 
and thus safe to cache. HTTP POST is supposed to generate side effects, 
and thus not be safe to cache.
GrahamC:
16-Jan-2013
SOAP requests are often GET
GrahamC:
17-Jan-2013
mezz/boot-files.r ... add protocols here and they get included into 
the binary.
I managed to add a new scheme to the binary this way
GrahamC:
17-Jan-2013
Cyphre, how much work would it take to get https in ?  I see that 
you have tls now
Cyphre:
18-Jan-2013
SHA256: yes I'd love to add it. The only problem is to get efficient 
free C implementation.
BrianH:
18-Jan-2013
Actually, it's sending a message to that server to which it is replying, 
but let's not quibble. We have other functions to get the head if 
you prefer.
BrianH:
18-Jan-2013
I think that it is supposed to act like GET-MODES in R2, but it might 
not be implemented yet.
Chris:
18-Jan-2013
I've always thought of QUERY as requesting metadata. READ is for 
content. If you, say, READ a directory (which I suppose I have no 
idea if it's still the way it works (tm)) to get all the files in 
that directory -- why would you use a different keyword to get a 
filtered list of, say files beginning with 'a'?
GrahamC:
19-Jan-2013
Pekr, my schemes are still available on github.  They are all async 
and need to be rewritten as sync.
to get them to work you need to make the following changes:

1. In the header, change from 

module: 'name 

to 

type: 'module
name: 'name

make-scheme => sys/make-scheme


There's also some odd about contexts inside modules.  You need to 
declare your variables inside /local as you can get a context error 
if they are used but not so defined.
Andreas:
19-Jan-2013
The module system could be a deciding feature pro R3. But we really 
need to get started on docs for that to become true.
BrianH:
19-Jan-2013
The module system was almost complete in implementation with the 
last closed-source release, needing only the fixes we (and I mean 
me and you, Andreas) did in the first week of the open source release. 
We have only been waiting for Carl to add that pull request to get 
the current design working as intended, though that request doesn't 
only apply to modules in particular, but to scripts in general. Once 
it is accepted, I need to do another round of optimization, but the 
external effects are set already.
BrianH:
19-Jan-2013
I haven't had a chance to go over the remaining tickets yet. And 
there are some that weren't implemented yet because Carl didn't want 
to, but hadn't yet convinced the rest of us as to why. Those might 
be dismissed if we get a good argument against them, which we can 
do in some cases ourselves now that we can see the native source.
BrianH:
19-Jan-2013
Graham, was that proposal state change recent? Was it changed to 
"pending"? We've had a bit of a definitional problem with the "built" 
state lately. Until we actually get official builds, with version 
numbers, we don't really have a defined "built" state. We need a 
state for "implemented and accepted as a pull request into Carl's 
repo, but not in an official build yet", but we've just been callung 
that "pending" for short.
Andreas:
19-Jan-2013
I think using "built" to mark things once they get accepted is fine 
(much better than "pending"), but we then lack a state to describe 
things which have been submitted as pull request but have not yet 
been declined or accepted.
GrahamC:
20-Jan-2013
Anyone have a suggestion on how we can get trace/net functionality
Maxim:
21-Jan-2013
anyhow... Brian and I will eventually get to actually implementing 
the R3 module /  slim model sometime this year.  I don't want to 
start a philosophical debate here.  :-)
Bo:
23-Jan-2013
All emails to [carl-:-rebol-:-com] get redirected to null. :-)
BrianH:
1-Feb-2013
I'm going to save this version of the crashing script, then see if 
I can get it to crash with local files only, then see if I can get 
it to crash without using the files at all (since they are proprietary). 
Also, I have to make a separate version that doesn't crash so I can 
get the results. This is annoying, but if we can get a GC bug fixed 
in R3 then it will be worth it.
BrianH:
5-Feb-2013
Going over some basic evaluation errors, which look like they're 
easier to fix than I thought they'd be. While at it, I've been discovering 
R3 language features that I never knew about before. Going to check 
older versions to see when they were added. Turns out that there's 
a SET optimization that I never knew, but which would really come 
in handy :)

>> a: 1 
== 1 
>> set [:b] [a] 
== [a] 
>> b 
== 1


Setting a get-word in a block to a word sets the get-word to the 
value of the word, not to the word itself. This would eliminate the 
intermediary block in most set word-block reduce value-block expressions, 
making it a better multi-assignment function.
Ladislav:
6-Feb-2013
Setting a get-word in a block to a word sets the get-word to the 
value of the word, not to the word itself.

 - this is rather dangerous if not documented, I do not think it is 
 expectable
BrianH:
6-Feb-2013
Ladislav, document it then. It's too useful to drop. And according 
to the docs you couldn't use get-words in SET block at all, so I 
never wrote code that had them. SET block with anything other than 
word! is rare, at least until R3 added FUNCT, which makes set-words 
very common.
BrianH:
6-Feb-2013
It is a little unfortunate that SET [:word] works like get-word parameters 
used to in R2, but don't anymore. Inconsistent. Still, too useful 
to drop.
BrianH:
6-Feb-2013
Not really. It would only be a problem if people started using this 
and someone wanted to remove the feature.

It hasn't been a problem so far, and there's nothing wrong with the 
code. This code:
    set [:get-word] [word]
is currently equivalent to this code in R2:
    get-word: get 'word
BrianH:
6-Feb-2013
AFAICT noone has used get-words in a SET block call before, even 
in R2 code.
BrianH:
6-Feb-2013
It would be interesting for this feature to make it into Red as well, 
just to cut down on intermediate block creation. Of course an optimizing 
compiler could get rid of the intermediate block creation too, changing 
SET block into a multi-assignment statement.
BrianH:
7-Feb-2013
Sorry, this is a better illustration:
>> apply does [return/redo :add] [] 1 1
== 2


If you were using APPLY to protect your code from get-word hacks, 
you're SOL. There's no point in removing the /redo option because 
the same trick could be done with native functions. We just need 
to fix APPLY so it does its /redo to the arguments it takes.
BrianH:
8-Feb-2013
If you're using SET block! block! or SET object! block! in cases 
where you can get unset values and are expecting errors to be triggered, 
then your code is buggy until this is fixed. If you are expecting 
it to *not* trigger errors, then your code will be buggy until you 
change to using SET/any - it's just accidentally working until this 
is fixed, and then will properly not work after it is fixed.
GrahamC:
23-Feb-2013
This is a tip for where you have those pesky @s in a username. You 
still can't get past that by using %40 in a url as Rebol converts 
those when it evaluates the url but you can do this


>> cmd: open decode-url "ftp://user%40rebol.com:[password-:-ftp-:-rebol-:-com]"
make object! [
    title: "FTP Protocol"
    scheme: 'ftp

    ref: [scheme: 'ftp pass: "password" user: "user%40rebol.com" host: 
    "ftp.rebol.com"]
    path: none
    host: "ftp.rebol.com"
    port-id: 21
    pass: "password"
    user: "user%40rebol.com"
]
port opened ...
Andreas:
25-Feb-2013
But this was pretty much the first thing I started looking at, which 
already lead me down the rabbit hole of testing it in R2 and R3, 
looking for documentation, filing a documentation request against 
R3 and discovering and reporting a bug against R3 (and I'll probably 
continue down the hole and fix that bug). So I didn't get much further 
towards other goodies, yet :)
Pekr:
26-Feb-2013
Well, rebin was not imo finished, even for R3, although maybe R3 
was closer to get to that idea. IIRC .rip appeared somewhere around 
IOS times, as a means of package scripts. It was imo a typical way 
of Carl, introduce his own way, instead of going with some "standard", 
e.g. zip.
BrianH:
26-Feb-2013
Cyphre, Rebol compression is the same as zip deflate, but it's not 
the compressed part that's more efficient, it's the headers. The 
zip format has some fairly extensive headers, and Rebol compression 
doesn't. We do need compression to support compressed scripts though, 
so we need something. That doesn't mean we can't have something more 
flexible, and if we stick to what we can get from zlib (since we're 
linking it anyway) we can get this flexibility nearly for free.
BrianH:
28-Feb-2013
It's actually pretty easy to see how they managed it. It was:

- A multi-language IDE (not a programming language, people already 
get those for free)
- With a GUI with an emphasis on modern graphic design (pretty!)
- With a fancy demo (more pretty!)

- With an initial focus on programming languages and development 
platforms that are already popular (built-in customer base)


Powerful IDEs are some of the only development tools that people 
are still willing to pay money for (i.e. Visual Studio). Most people 
can't choose what language they write in, but they more often can 
choose their IDE. And for crappy-but-IDE-friendly languages, an IDE 
can make all the difference in your productivity. They're not as 
helpful for really powerful extensible languages like Rebol or Perl, 
unless the language is so bad that just about anything would help 
(Perl). Plus, since an IDE is an end-user app you can afford to GPL 
it, since the only stuff built on it are add-ons - that doesn't work 
for programming languages unless they have a clear distinction between 
user code and built-in code that is distinct enough to not violate 
the GPL distinctions, because most of the competition is permissive 
- and without the GPL restrictions there is nothing to sell, so there 
is no business model to get a return on investment.


It's nice to point to other open source projects and say "See! We 
could have done that!" but unless those are comparable projects their 
success isn't comparable either.
BrianH:
28-Feb-2013
Don't knock charities though. Charities can be very successful if 
they get enough industry support. Python, Perl and GCC are made by 
charities.
BrianH:
28-Feb-2013
And it doesn't take a lot to run a programming language charity for 
a somewhat minimalist language. You don't need a lot of people to 
get the job done. Something maximalist like .NET or Java (when you 
include their runtime libraries) can need a lot of people, but something 
small like Rebol or Red doesn't need as much. You can get enough 
people to fund development even for a charity project just by being 
useful enough.
BrianH:
28-Feb-2013
OK, so it's a single-language IDE aimed primarily at the education 
market, still with a nice-looking GUI if not as modern, with an appeal 
based on Apple-fan nostalgia for HyperCard. That's a tougher sell, 
but since it's education market you can get away with GPL/commercial, 
and since it's Apple-nostalgia you can raise that much money from 
merely thousands of investors instead of the millions that you'd 
need if you were going for a less-well-off target market. Makes sense, 
but it's still nice to see.
james_nak:
28-Feb-2013
Scot and Nick, Rebol has been my secret weapon. Despite trying to 
get others to look at it.
NickA:
28-Feb-2013
I am working on making a business model.  If I can get it started, 
I can help get funding.
NickA:
28-Feb-2013
Yes Brian, all that matters is that things get *done for a good price.
NickA:
28-Feb-2013
That's important Scot.  I'll trump that, though, if I can get investors 
to dump some cash ;)
Scot:
28-Feb-2013
If you want to know what is going on in a classroom, ask the students. 
 If you want to know what is really going on for a student, ask the 
teacher.  If the teacher doesn't know, get a different teacher.
Scot:
28-Feb-2013
Subscriptions work only at the district level.  That is a long difficult 
sales cycle and you need to get a 5 year commitment.  Sales of a 
product works at the classroom and school site level.
Sunanda:
1-Mar-2013
Is this an R3 bug or feature? Duplicate word in a single object....

    ob: object [] append ob  [b: 2 b: 3 b: 4]
    == make object! [
        b: 2
        b: 3
        b: 4
    ]


    foreach w words-of ob [print get w]   ;; they are actually different
    2
    3
    4
Bo:
3-Mar-2013
More prot-send.r testing.  Had the hardest time trying to get 'send 
to work with my mail server.  Found I had to change a line in prot-send.r 
to :


 smtp-port: [ scheme: 'smtp host: (user/smtp) user: (user/user) pass: 
 (user/pass) ehlo: (find/tail user/email 
@
) timeout: 600 ]


as EHLO on my SMTP host was expecting only the domain portion of 
the email address instead of the entire email address which is what 
I had been trying.
Bo:
3-Mar-2013
This part of the output seems to indicate that the messages get split 
on 32K boundaries:

C: sending 32K
=== Client event: wrote
C: sending  17834  bytes of  17834
=== Client event: wrote
BrianH:
7-Mar-2013
For instance, most developers need to have support for either SQL-like 
databases, or NoSQL databases (according to many different data models), 
or both, but they are not compatible with each other even in theory 
once you get out of SQL world.
MarcS:
10-Mar-2013
Neat. Before I get to that: is task launching working on POSIX systems?
Andreas:
10-Mar-2013
If you can find a way to be more specific on OSX, so that _only_ 
URLs get handled, that would be great. OTOH, xdg-open is already 
rather versatile as well (only I fear that OSX's open is even more 
featureful).
MarcS:
10-Mar-2013
(At the moment, you get usage info on stderr. The current r3 just 
segfaults on Linux.)
Andreas:
10-Mar-2013
For #1991, we should at least get the crash removed right away.
Ladislav:
12-Mar-2013
You cannot get out of bounds adding 0.
BrianH:
12-Mar-2013
I think that we have two conflicting values here:

* Do what I *say*, since you can't read my mind to know what I mean

* Trigger errors when you run into something almost definitely wrong 
as a favor to the developer


In the case of FOREACH, it triggers an error for an empty words block 
and doesn't allow none because that block is part of the control 
structure, not the data (which we do allow empty or none for). In 
the case of a block of only set-words, that also doesn't really advance, 
but at least you get a reference to the series so you could in theory 
be doing something (that you should probably use WHILE to do instead), 
so not triggering an error in that case is iffy, you could make an 
argument either way.


For FOR, the main factor for whether the loop would normally end 
(without BREAK or changing the index manually somehow) is whether 
the step > 0 if start < end, or step < 0 if start > end. So it's 
not whether it = 0.
BrianH:
12-Mar-2013
If you have a range type (which was rejected, btw, but might get 
revisited) and you break out its upper and lower bounds so it can 
be passed to FOR's *two* parameters for those values, the programmer 
would still need to specify them as they see fit.
Ladislav:
12-Mar-2013
power

 only in the sense that you get the power to specify looping in an 
 easy and flexible way
BrianH:
13-Mar-2013
Once you get past the initial conditions then everything after that 
is affected by the direction, the bump and the code block. But we 
have to assume that start, end and bump could have come from the 
result of a possible erroneous calculation based on crappy data. 
The initial conditions guard against that. Ladislav, every code example 
you give that sets the index in the code block is considered intentional 
behavior. It is only start, end and bump that are considered possible 
out of the developer's control. If a developer passes an unknown 
code block to FOR then they deserve what they get.
BrianH:
13-Mar-2013
For instance, you might noting that FOR has a lit-word parameter 
for its index. That makes the word peovided considered intentional, 
because you have to do an extra step to not know which word was provided. 
And in general, people are presumed to know where they get their 
code blocks from.
Gregg:
13-Mar-2013
If you get a chance, it runs the tests and just outputs to the console, 
so you can, I hope, see quickly where it goes off.
BrianH:
13-Mar-2013
Well, when I get the chance I would like to review all of the FOR 
tests. But the question is whether at this stage of the game we should 
change tests for an R2 function. R3/Backwards and rebol-patches make 
R2 fixes relevant again, and this change is in keeping with R2's 
target market (newbies), but I don't know whether FOR's behavior 
is important enough to make it worth fixing in the tests, or important 
to keep bug-for-bug compatible (does anyone actually use it?). For 
R3, the tests will probably end up having to be redone for #864 FOR.
Ladislav:
14-Mar-2013
'Ladislav, you are not getting that I am applying an *additional* 
termination condition before the start of the first loop, in addition 
the normal termination condition applied after every iteration of 
the loop, before the bump. Please don't mistake an intentional constraint 
for confusion.'  a couple of notes:


- you still don't get that if you are not consistent producing a 
lot of exceptions your code will be full of bugs and arbitrarinesses 
(there is absolutely no escape from this)

- you still don't get that there are concrete examples above demonstrating 
the problems you did not even consider yet
Marco:
16-Mar-2013
my contribution to loop-for discussion:
	for-step: func [
		{simplified for}
		[catch]
		'word [word!]
		start [number!]
		end [number!]
		step [number!]
		body [block!]
		/local op result
		][
		do reduce [to set-word! :word start]
		if step = 0 [throw make error! "step parameter cannot be = 0"]
		op: either step > 0 [:lesser-or-equal?][:greater-or-equal?]

  while [op get word end][set/any 'result do body set word (get word) 
  + step] get/any 'result
	]
	for-step i 1 3 1 [print i]
Marco:
16-Mar-2013
another contribution:
	use [count inc start end op][
		count: inc: start: end: op: 0	
		in-range: func [
			[catch]
			'word [word!]
			start [number!]
			end [number!]
			/bump step [number!]
			/local result
			] [
			if inc = 0 [

    if step = 0 [throw make error! "step parameter cannot be = 0"]
				count: start

    either start > end [inc: -1 op: :greater-or-equal?][inc: 1 op: :lesser-or-equal?]
				unless none? step [inc: step]
			]
			set word count

   result: either op count end [count: (get word) + inc true][false]
			if not result [count: inc: start: end: op: 0]
			result
		]
	]
	i: 0 ; define a var
	while [in-range i 1 3] [print i]
Marco:
16-Mar-2013
what about this?:
	cfor: func [
		{General loop}
		[throw catch]
		init [block!]
		test [block!]
		inc [block!]
		body [block!]
		/local result
		] [

  do init while [do test] [set/any 'result do body do inc] get/any 
  'result
	]
BrianH:
16-Mar-2013
I had to get rid of [catch] in my first edit. And [catch] is a bad 
idea for loops because it hides where the real error is being triggered.
BrianH:
16-Mar-2013
Wait, R3 rules, :ret is get/any 'ret in R3. Change it to run in R2.
Marco:
16-Mar-2013
Better to test it in R2 then to not test it at all. (By the way on 
R2 mine is a little faster).
I changed :ret to get/any 'ret and it works but in R3 :
>> do [cfor [num: 0] [num <= 3] [num: num + 1] [num]] ; works?


and why is it important to keep the local binding ?(I am not an expert 
of binding)
Gregg:
16-Mar-2013
Sunanda, agreed on not export complexity. Words are supported directly, 
and we can look at making everything easy that it should support. 
Today, words are supported. e.g.:

a: 1
b: 5
loop [i a b 1] [print i]


Series values, as in your first bug report, are the thing I have 
to look into. Beyond that, should it just evaluate everything it 
gets?


Marco, FOR-STEP sounds too close to FORSKIP to me. Have to think 
about how FORSKIP fits in to the model. For that, and IN-RANGE, the 
main question is what their purpose is. On your first CFOR tests, 
I get these results:

>> probe cfor [num: 1] [num <= 3] [num: num + 1] [print num "a"]
1
2
3
4
== 4

>> probe cfor [num: 1] [num <= 3] [num: num + 1] [if num = 2 [throw 
make error! "what 2?"] "a"]
** Throw Error: ** User Error: what 2?
** Near: throw make error! "what 2?"
Gregg:
19-Mar-2013
@BrianH, when you say "And any loop construct that requires any kind 
of manual reducing of its arguments in order to have it take the 
result of an expression is a definite no-go.", does "manual reducing" 
mean having the user do it? e.g., if I get a spec passed to my dialected 
LOOP func, and I REDUCE it or DO/NEXT internally, is that a no-go? 
If so, where should I look for the reasons and guidelines about it?
Gregg:
23-Mar-2013
I think we should consider this heavily. Ladislav's points, and Brian's 
analysis in http://issue.cc/r3/1946make it clear that we need to 
understand the differences, and that we can probably get a large 
gain with very small tradeoffs.
Ladislav:
25-Mar-2013
otherwise, he could probably make make on a different machine, where 
he can get an r3 interpreter
Gregg:
1-Apr-2013
Anton, but then you could never get an empty target, and you would 
have to compare to %./ as your empty value.
Gregg:
2-Apr-2013
I understand your view Max, but that's not what I asked. It doesn't 
work the way you want today, but maybe there's a way to provide a 
solution that is better than what we have now. I'd love to see your 
custom version, so we can compare its results. And I'm asking about 
SPLIT-AT for a reason, separate from SPLIT-PATH. I'd love to get 
everyone's thoughts.


The funny thing is how much we can all care about the details of 
this func we (at least I) use a lot, and yet which none of us seem 
to like all that much. I think it points out that the normal case 
is the most important, where there is both a path and a file component. 
And maybe now is the time that we can make it just a little bit better, 
a little more consistent.
Robert:
8-Apr-2013
The generic problem to solve is this: You somehow have to specify 
what should happen for different actions. 


Let's start with the "somehow have to specify what should happen". 
For this you have some options:

1. Write the application logic code in the GUI spec block. For sort 
stuff OK, for long not.

2. Just call a function from the GUI spec block and write the rest 
somewhere elese. That's IMO the best way. I used FSM and just send 
"application logic events".

The next part is the "for different actions". Same here:

1. Name them explicitly on-* and specify the code with one of the 
options above.BTW: IIRC R3-GUI has click and right-click blocks for 
convinience.

2. Define an implicit mappging from block order to event type. 1st 
block = click, 2nd = right click, 3rd = double left, 4th double right, 
etc. IMO that's not a good style.


Overall what I never liked about VID was that is was not explicit 
enough. For big projects that's a must. For small you might skip 
this but if those projects get bigger, you are hit again.
Pekr:
9-Apr-2013
The problem is, that while the R3-GUI is now more flexible by removing 
reactors, it is also more difficult to understand. I remember trying 
to understand the 'on-action issue in the past, now I briefly re-read 
the doc, and I still can't understand the design. I need following 
things to be cleared up for me, so that I can both use it, and possibly 
explain it to others:


1) If you look into Actors docs - http://development.saphirion.com/rebol/r3gui/actors/index.shtml#
, there is no mention of 'on-action actors. There are many actors 
listed, but not the 'on action one


2) The 'on-action actor is mentioned in the attached doc at the same 
URL, describing, why reactors were removed. So here is the definition 
of 'on-action: 

        a) "The ON-ACTION actor is useful if the style needs to call some 
        default action from multiple places (actors) in the style definition." 
        - understand the purpose, but why and when I would like to do such 
        thing? Any example easy to understand? Just one sentence maybe?

        b) "For example, the BUTTON style needs to call the default style 
        action from the ON-KEY actor and also from the ON-CLICK actor, so 
        it is better to call the ON-ACTION actor from the both code points 
        to avoid the necessity to override multiple style actors." - looking 
        at button or even clicker style definition, I can see no such stuff, 
        as 'on-key or 'on-click calling anything named 'on-action. That is 
        the part that is most confusing for me, and which did not help to 
        understand the 'on-action a little bit. Are we talking about the 
        'do-face here?


There is also a question, if better name could be found for 'on-action. 
Unless I can fully understand, what happens here, difficult to suggest. 
Now to make it clear - I am not judging architecture, just trying 
to get my head around the docs and button/style examples. And being 
average reboller - if I have difficulcy to understand it, the chances 
are, there is more ppl, which will strugle in that area?
Cyphre:
9-Apr-2013
MaxV: "This way you have to write very long commands to achieve the 
most simple tasks (show mybuttob/gob ... mybutton/gob/size). Is it 
just my impression?"


My guess is you are not using R3GUI correctly. If you are using the 
current included R3GUI styles you shouldn't be forced to write any 
SHOW commands at all(the SHOW command is considered 'internal' in 
R3GUI and shouldn't be used anyway). Just use the SET-FACE/GET-FACE 
api to make changes to the specific style.

In worst case (usually when some ON-GET/ON-SET handler is unfinished/incomplete 
in some style) you can either try to enhance/fix that style part 
or

if this is too difficult for you you can try to use SHOW-NOW <face> 
to really force 'show' on the specific element.
Robert:
9-Apr-2013
Yes, it takes time to get into this new stuff, especially since things 
are moving. But hey, that's how it is. So, either wait (perhaps forever) 
or just start.
Robert:
9-Apr-2013
And while doing this, if you start writing it down for others that 
would be great. And, we get feedback what's not a good design etc.
Group: Community ... discussion about Rebol/Rebol-related communities [web-public]
AdrianS:
31-Dec-2012
This is a periodic posting of community links along with activity 
levels for discussion dedicated to Rebol and Rebol-like languages. 
The intent is to bring a dispersed community together by providing 
the current list of places where the community gathers along with 
reasonably accurate activity indicators for each place. This list 
will be posted in each location weekly or bi-weekly so that anyone 
dropping by will not have to look far in order to learn where else 
things are happening.


Currently the activity stats are gathered manually and postings are 
also not automated. This will hopefully change as the requisite scripts 
to scrape and post automatically are developed. This updated list 
will eventually be available at http://rebol.comas the site is cleaned 
up post Rebol open sourcing. 


# Chats

## R3 Chat

This is the primary forum for Rebol 3.0. It runs from any Rebol console 
in a text mode, but a GUI version is planned.
- Run R3, type chat and follow the instructions (all platforms.)

- Type "help" for more information or visit R3 DevBase Chat Forum 
(http://www.rebol.com/r3/devbase/index.html).

- To view public messages from any web browser go to RebDev mobile/phone 
interface (http://www.rebol.net/cgi-bin/rebdev-web.r).

- Problems? Please contact Rebol Technologies at (http://www.rebol.com/cgi-bin/feedback/post2.r).
Activity: 4 messages this month


## Rebol chat on Stack Overflow (http://chat.stackoverflow.com/rooms/291/rebol)

- Note that you will need a reputation of 20 in order to be able 
to post in the chat. 

- You can gain this minimal reputation (essentially a spam filter) 
by participating in the Stack Overflow group of sites. 
Activity: 380 messages this week


## AltME Worlds

A private instant messaging system where rebolers hang out 24/7. 
The current world dedicated to Rebol and Rebol-like language discussion 
is called REBOL4
- Get client at http://www.altme.com/download.html
- connect to the 'rebol-gate' world with user/pass, guest/guest
- request account on REBOL4 world in the REBOL4 request group

Web archives of public groups, first to last in the most active world, 
REBOL4, as well as the dormant world, REBOL3:
REBOL4 (http://www.rebol.org/aga-groups-index.r?world=r4wp)
Activity: 286 posts last 6 days
REBOL3 (http://www.rebol.org/aga-groups-index.r?world=r3wp)


# Forums

## Rebol Facebook group (http://www.facebook.com/groups/rebol)
A new special interest group for Facebook users.
Activity: 26 messages this month



## Rebol Google+ community (https://plus.google.com/communities/100845931109002755204)
Activity: 4 messages this month



## Rebol Google Group (https://groups.google.com/forum/?fromgroups#!forum/rebol)
Activity: 43 messages this month



## Synapse EHR Rebol Forum (http://synapse-ehr.com/community/forums/rebol.5)
A web-based forum for R2 and R3, provided by Synapse EHR
Activity: 13 messages this month



## RebelBB France (http://www.digicamsoft.com/cgi-bin/rebelBB.cgi)
A simple forum, written in Rebol, for French speakers.
Activity: 140 messages this month


## Nick's Rebol Forum (http://rebolforum.com/index.cgi)

A micro-forum (just a few lines of Rebol) hosted by Nick Antonaccio. 
(Note: the captcha question is first.)
Activity: 79 messages this month


# Q&A (Question & Answer)

## Stack Overflow questions on Rebol
http://stackoverflow.com/questions/tagged/rebol
Activity: 219 questions tagged
http://stackoverflow.com/questions/tagged/rebol3
Activity: 2 questions tagged
AdrianS:
31-Dec-2012
I'd like to get the true numbers
Andreas:
31-Dec-2012
Should probably get that cleaned up.
Kaj:
30-May-2013
Carl couldn't get into Trello, either
GrahamC:
31-May-2013
In the past I've done upgrades by binary diffs
but then you have to track each binary to get the right diff
Geomol:
31-May-2013
Can't we make them? :)

some-func: func [input1 input2] [...]	; -> produces some output.


That's isolated, and it should work, even if other functions, it 
depends on, get updated. The task is to define each function/object 
as doing one simple thing.
Andreas:
31-May-2013
Staying within the hypothetical realm, I think it's very fair to 
say that it would be possible to get it done sooner than without 
"unlimited money".
Maarten:
31-May-2013
Yes, I'm trying to get a handle on "quite a bit capacity available". 
And then attach a pricetag to it to make it happen.
601 / 10262123456[7] 89...99100101102103