Re: living and learning (Re: RunRev vs RealBasic (Richard Gaskin))

2005-01-22 Thread Geoff Canyon
On Jan 19, 2005, at 12:05 PM, Chipp Walters wrote:
It's really just a matter of style, for instance, I *never* use the 
card method for this. I only use multiple card stacks in a couple 
places:

1) Wizards
2) I many times use the 2nd card in a stack to store all the icons for 
the first card.

This goes along with the concept of keeping the data and presentation 
layers completely seperate. HyperCard (and to an extent RunRev) allow 
users to mix the two, I prefer not to for a variety of good reasons.
I'm not sure I understand what you mean here. If we're talking about a 
way to set up a tab panel, we're not talking about data at all. The 
different cards would have different controls -- presentation layers, 
if you prefer -- on them.

If you're talking about data vs. presentation, then are you talking 
about the common practice of using HyperCard stacks as a database? You 
have a multi-card stack with a common group of controls, with different 
data in the fields on each card. I also generally prefer not to do 
that, although I'm not religious about it. Apart from philosophical 
issues, it limits you to several thousand records (in Revolution) as 
beyond that stacks become significantly slow to open and save.

regards,
Geoff Canyon
[EMAIL PROTECTED]
___
use-revolution mailing list
use-revolution@lists.runrev.com
http://lists.runrev.com/mailman/listinfo/use-revolution


RE: RunRev vs RealBasic (Richard Gaskin)

2005-01-21 Thread Lynch, Jonathan
It seems to me a more significant contest between the two systems would
be to assign the same project to two very experienced developers with
each development environment, and see who gets it finished quicker.

I cannot imagine many situations where productivity is not of great
significance. If a person can create a program in half the time of his
competitors, he can afford to charge less to his clients, and still make
a bigger profit.

This is not to say that Real Basic is not a fast development environment
- I honestly do not know that much about it one way or the other. I am
just saying that this particular contest misses the point for like 99
out of 100 programming situations.

-Original Message-
From: [EMAIL PROTECTED]
[mailto:[EMAIL PROTECTED] On Behalf Of Chipp
Walters
Sent: Thursday, January 20, 2005 9:48 PM
To: How to use Revolution
Subject: Re: RunRev vs RealBasic (Richard Gaskin)

Hi David,

A quick Google shows you're the product manager for Real Basic. Guess 
that sorta slipped your sig ;-)

I certainly understand your desire to defend RB to the max.

I followed closely the previous RB-RR thread, and don't recall it as you

do. Perhaps we should discuss over lunch? (I'm in Austin, too!)

-Chipp


-- 
No virus found in this outgoing message.
Checked by AVG Anti-Virus.
Version: 7.0.300 / Virus Database: 265.7.0 - Release Date: 1/17/2005

___
use-revolution mailing list
use-revolution@lists.runrev.com
http://lists.runrev.com/mailman/listinfo/use-revolution
___
use-revolution mailing list
use-revolution@lists.runrev.com
http://lists.runrev.com/mailman/listinfo/use-revolution


Offset with 'charstoskip' doesn't work? [was RunRev vs RealBasic (Richard Gaskin)]

2005-01-21 Thread Michael D Mays
I thought I would see if I could solve the RB/Rev/SC challenge and 
tried this as a first attempt:

on mouseUp
  put fld 1 into sFld
  put fld 2 into tFld
  put  into fld 3
  -- put 0 into it --*1
  put zero into t --*2
  repeat with i= 1 to the number of lines in tFld
repeat
  -- get offset(line i of tFld,sfld,it) --*1
  get offset(line i of tFld,sfld,t) --*2
  put it into t --*2
  if it is zero then exit repeat
  put line i of tFldiitreturn after fld 3
end repeat
  end repeat
end mouseUp
but what happens is along the way it finds a search string in question 
at char 246674 and then finds it again at 250675 and then finds it 
again at 246674 then at 250675 then at 246674 then at 250675 ...

Is offset not working or am I not?
Michael
___
use-revolution mailing list
use-revolution@lists.runrev.com
http://lists.runrev.com/mailman/listinfo/use-revolution


Re: RunRev vs RealBasic (Richard Gaskin)

2005-01-21 Thread David Grogono
Chipp Walters wrote:

 Hi David,
 
 A quick Google shows you're the product manager for Real Basic. Guess
 that sorta slipped your sig ;-)

I certainly wasn't trying to hide my affiliation and I did use my REAL
Software email address.  I tend not to use a signature very often although
it would probably be a good habit to get into.

 I certainly understand your desire to defend RB to the max.
 
 I followed closely the previous RB-RR thread, and don't recall it as you
 do. 

Before posting to this list I wanted to confirm my recollection and read
original messages from both the RunRev and REALbasic mailing lists.

 Perhaps we should discuss over lunch? (I'm in Austin, too!)

Sounds good - feel free to contact me off list.

Best regards, David

___
use-revolution mailing list
use-revolution@lists.runrev.com
http://lists.runrev.com/mailman/listinfo/use-revolution


Re: RunRev vs RealBasic (Richard Gaskin)

2005-01-20 Thread David Grogono
Richard Gaskin wrote:

 We had a rather funny thread here last year in which an RB fan started a
 bake-off for speed on a parsing algorithm on a fairly large file.  True
 'nuff, RB was faster -- but only by 3 milliseconds. And that was the
 overal score -- in the most common task, loading a file, Rev was nearly
 twice as fast.

A number of small clarifications on this.  The person who started the speed
comparison was not an RB fan but rather a SuperCard user evaluating both
REALbasic and Revolution.  His initial attempt found that REALbasic was
significantly faster than Revolution.  After both sets of code were further
optimized the speed differences were negligible.  The primary difference
after optimization is the readability and maintainability of the code.  The
guts of the routine in REALbasic is 6 lines of code but 37 lines of code in
Revolution.  As for the speed of the load, the results are probably
misleading for REALbasic because it includes the first step of string
processing.  Either way the load is extremely fast in both environments and
it's a tiny tiny fraction of the total task.  Here's the code for each
environment:  copied from http://www.yav.com/speed.html

REALbasic:
 x=uBound(STarray)
 For i = 0 to x
   If InStrB(TT,(STarray(i)))  0 then
 Matches=Matches+STarray(i)+chr(13)
   End if
 Next

Revolution:
 replace quote with empty in stList
 put lower(tMatchList) into tLowerMatchList
 replace quote with empty in tLowerMatchList

 put md5Digest(tMatchList) into tDigest
 if (tDigest  textDigest) then
 put empty into shortFindList
 repeat for each word w in tLowerMatchList
 put char 1 of w into c
 put c after shortFindList
 put TRUE into isWord[w]
 put TRUE into isWord[w0w]
 put w into w0
 end repeat
 put tDigest into textDigest
 end if

 set the caseSensitive to TRUE

 repeat for each line inLine in stList
 put empty into shortFind
 put lower(inLine) into inLineLower
 put 0 into i
 put empty into w0
 repeat for each word w in inLineLower
 if not isWord[w0w] then
 put empty into shortFind
 exit repeat
 end if
 put char 1 of w after shortFind
 put w into w0
 end repeat
 if (shortFind is empty) then next repeat
 put offset(shortFind, shortFindList) into x
 if (x  0) then
 if (offset(inLineLower, tLowerMatchList, x*2-1)  0) then
 put inLine  return after MatchList
 end if
 end if
 end repeat

--
David Grogono

___
use-revolution mailing list
use-revolution@lists.runrev.com
http://lists.runrev.com/mailman/listinfo/use-revolution


Re: RunRev vs RealBasic (Richard Gaskin)

2005-01-20 Thread Michael D Mays
Yes 4000 times faster, once you take your shoes off.
One char, 4 char and 8 char replacement is fast.
on mouseUp
  repeat with i = 1 to 100
put 1234567890 after dd
  end repeat
  put 990 into a
  get the long seconds
  put a into char a of dd
  put abcd into char a to a+3 of dd
  put abcdefgh into char a to a+7 of dd
  put the long seconds - it
end mouseUp
Michael
On Jan 20, 2005, at 12:38 AM, Richard Gaskin wrote:
Richard Gaskin wrote:
Chipp Walters wrote:
  Richard Gaskin wrote:
  I've been pondering this new speed enhancement to same-size
  chunk replacements, specifically in regard to image processing.
  Since much of what image processing involves is replacing a
  specific number of bytes, I wonder if any of the folks here
  have made any recent experiments with writing image filters
  in native Transcript.  With the sort of speed Dar reports we
  may find that some types of filters can run acceptably well
  in Transcript alone.
 
  I did write some compositing and blur/sharpen filters in
  transcript some time ago, but I don't know the details of
  the 'same-size chunk' replacements. Where can I find more info?
All I know is what Dar posted here, but it sounded really tasty. 
Apparently he made a suggestion to Scott Raney about ways to optimize 
operations in which a string of a given length is used to replace a 
substring of the same length within a larger chunk.
In previous versions a very generalized approach was used for all 
replacement operations, requiring that the data be copied during the 
replacement, which can be computationally expensive with large 
chunks.
Since the data being inserted is the same length as the data being 
removed the handle size doesn't change, allowing the operation to 
work in-place, without copying.
IIRC, Raney reported that the new method should improve speed by 
roughly 4000 times for those cases.
Dar - got the details for us?
Found the Bugzilla notes:
http://support.runrev.com/bugdatabase/show_bug.cgi?id=586
___
use-revolution mailing list
use-revolution@lists.runrev.com
http://lists.runrev.com/mailman/listinfo/use-revolution


Re: RunRev vs RealBasic (Richard Gaskin)

2005-01-20 Thread Richard Gaskin
Michael D Mays wrote:
 All I know is what Dar posted here, but it sounded really tasty.
 Apparently he made a suggestion to Scott Raney about ways to
 optimize operations in which a string of a given length is used
 to replace a substring of the same length within a larger chunk.
 In previous versions a very generalized approach was used for all
 replacement operations, requiring that the data be copied during the
 replacement, which can be computationally expensive with large
 chunks.
 Since the data being inserted is the same length as the data being
 removed the handle size doesn't change, allowing the operation to
 work in-place, without copying.
 IIRC, Raney reported that the new method should improve speed by
 roughly 4000 times for those cases.
 Dar - got the details for us?

 Found the Bugzilla notes:
 http://support.runrev.com/bugdatabase/show_bug.cgi?id=586
Yes 4000 times faster, once you take your shoes off.
One char, 4 char and 8 char replacement is fast.
on mouseUp
  repeat with i = 1 to 100
put 1234567890 after dd
  end repeat
  put 990 into a
  get the long seconds
  put a into char a of dd
  put abcd into char a to a+3 of dd
  put abcdefgh into char a to a+7 of dd
  put the long seconds - it
end mouseUp
For clarity, I should admit that I'd accidentally misquoted Scott 
Raney's claim from the Bugzilla report:  it's *only* 1000 times faster, 
not 4000 times.

What does once you take your shoes off mean in this context?
--
 Richard Gaskin
 Fourth World Media Corporation
 ___
 [EMAIL PROTECTED]   http://www.FourthWorld.com
___
use-revolution mailing list
use-revolution@lists.runrev.com
http://lists.runrev.com/mailman/listinfo/use-revolution


Re: RunRev vs RealBasic (Richard Gaskin)

2005-01-20 Thread Chipp Walters
In fairness to Rev, there was no stipulation regarding how many lines of 
code it take to generate the results. In fact, one could concatenate all 
lines of the Rev code using ';' to solve the problem in only 1 line of 
code ;-)

Also, there are certainly different things going on in the two code 
snippets you posted. In RB, variables are not declared, but in Rev some 
are instantiated-- not to mention the MD5digest reset switch (only in 
the Rev code). Also, as I recall, this project was a 'moving target.' 
Once Rev posted a 'winning time', the challenge changed benefiting RB.

Assuming 'readability' and 'maintainability' were set as primary goals, 
it's hard to deny Xtalk languages excel in both areas.

All that said, it does look like either application can handle string 
parsing w/out problems.

-Chipp
David Grogono wrote:
A number of small clarifications on this.  The person who started the speed
comparison was not an RB fan but rather a SuperCard user evaluating both
REALbasic and Revolution.  His initial attempt found that REALbasic was
significantly faster than Revolution.  After both sets of code were further
optimized the speed differences were negligible.  The primary difference
after optimization is the readability and maintainability of the code.  The
guts of the routine in REALbasic is 6 lines of code but 37 lines of code in
Revolution.  As for the speed of the load, the results are probably
misleading for REALbasic because it includes the first step of string
processing.  Either way the load is extremely fast in both environments and
it's a tiny tiny fraction of the total task.  Here's the code for each
environment:  copied from http://www.yav.com/speed.html

--
No virus found in this outgoing message.
Checked by AVG Anti-Virus.
Version: 7.0.300 / Virus Database: 265.7.0 - Release Date: 1/17/2005
___
use-revolution mailing list
use-revolution@lists.runrev.com
http://lists.runrev.com/mailman/listinfo/use-revolution


Re: RunRev vs RealBasic (Richard Gaskin)

2005-01-20 Thread Richard Gaskin
David Grogono wrote:
 Richard Gaskin wrote:

 We had a rather funny thread here last year in which an RB
 fan started a bake-off for speed on a parsing algorithm on
 a fairly large file.  True 'nuff, RB was faster -- but only
 by 3 milliseconds. And that was the overal score -- in the
 most common task, loading a file, Rev was nearly twice as fast.

 A number of small clarifications on this.  The person who started
 the speed comparison was not an RB fan but rather a SuperCard
 user evaluating both REALbasic and Revolution.
Having once been the leading vendor of third-party components for 
SuperCard, I've known him for more than a decade.  Somewhere in the 
communications he mentioned that he'd felt so burned by the Allegiant 
experience that he was resistent to working with xTalks in general, and 
accordingly had a preference for RB.

 His initial attempt found that REALbasic was significantly faster than
 Revolution.
That was the second round.  The first round had Rev way in the lead 
(twice as fast IIRC), using nothing more than a half-dozen lines of code 
found in an old MetaCard example stack.

 After both sets of code were further optimized the speed differences
 were negligible.  The primary difference after optimization is the
 readability and maintainability of the code.  The guts of the routine
 in REALbasic is 6 lines of code but 37 lines of code in Revolution.
We could selectively compare subsets, but to get the job done the final 
published code listings have 74 lines for RB and 79 lines for Rev.

 As for the speed of the load, the results are probably misleading
 for REALbasic because it includes the first step of string processing.
It's odd that after so many RB'ers helped with that code they came up 
with an inefficient method.

But maybe it's not so bad -- his Rev code uses:
   put url (file:fn) into tMatchList
That also does string processing, changing any line endings to match the 
Unix convention used internally within the engine.  binfile is often 
faster than file, since it loads the file wholesale without modifying 
line endings.

 Either way the load is extremely fast in both environments and
 it's a tiny tiny fraction of the total task.  Here's the code for each
 environment:  copied from http://www.yav.com/speed.html
From that page:

RealBasic (5.5.1)   Revolution (2.2)
Load Data   28 ms   14 ms

Check Matches 1036 ms 1049 ms
Display All184 ms  188 ms

TOTAL1248 ms (78 ticks)   1251 ms (78 ticks)
What's interesting here is not RB vs. Rev, but RB vs. C.  One of the 
advantages RB personnel like to tout is that RB is fully compiled, in 
contrast to what they characterize as Rev being interpreted (in truth 
Rev is a bit of both, like Java but with more efficient structure, but 
that's another hair-splitting story).

If RB were indeed fully compiled, we should expect it to beat the 
pants off of any interpreted language by a very wide margin, and have 
speeds more in line with what one would expect from compiling C or 
anything else that outputs machine-specific object code.

That so many common tasks perform with nearly equivalent speed in an 
ultra-high-level language like Transcript speaks rather well for its 
inventor.  And given the many productivity advantages to typeless 
languages outlined by Osterhout and others 
(http://www.tcl.tk/doc/scripting.html), Rev makes a very strong case 
for itself that more than compensates for the few specialized cases 
where RB may actually turn out to be significantly faster.

--
 Richard Gaskin
 Fourth World Media Corporation
 __
 Rev tools and more: http://www.fourthworld.com/rev
___
use-revolution mailing list
use-revolution@lists.runrev.com
http://lists.runrev.com/mailman/listinfo/use-revolution


Re: RunRev vs RealBasic (Richard Gaskin)

2005-01-20 Thread Michael D Mays
see thread
 Bugzilla 586, the fast char replacement (was Revolution compilation)
I had a hard time counting to 4.
I get a 4000X improvement on my dual 2GHz PPC G5.
Michael
On Jan 20, 2005, at 4:43 PM, Richard Gaskin wrote:
For clarity, I should admit that I'd accidentally misquoted Scott 
Raney's claim from the Bugzilla report:  it's *only* 1000 times 
faster, not 4000 times.

What does once you take your shoes off mean in this context?
___
use-revolution mailing list
use-revolution@lists.runrev.com
http://lists.runrev.com/mailman/listinfo/use-revolution


Re: RunRev vs RealBasic (Richard Gaskin)

2005-01-20 Thread David Grogono
Chipp Walters wrote:

 In fairness to Rev, there was no stipulation regarding how many lines of
 code it take to generate the results. In fact, one could concatenate all
 lines of the Rev code using ';' to solve the problem in only 1 line of
 code ;-)

True, there wasn't a line requirement.  However, since the speed was roughly
the same in both cases I'd be much happier maintaining the 6 lines of code.
I have a hard time believing that most people can look at this particular
Rev code and easily understand what it's doing.

 Also, there are certainly different things going on in the two code
 snippets you posted. In RB, variables are not declared, but in Rev some
 are instantiated-- not to mention the MD5digest reset switch (only in
 the Rev code).

Valid point, although the amount and readability of code would still be
quite different.

 Also, as I recall, this project was a 'moving target.'
 Once Rev posted a 'winning time', the challenge changed benefiting RB.

Not true.  At first no-one on the REALbasic list spent any time optimizing
the code since the initial post had found REALbasic to be 5 times faster.
Once there was some Rev code that appeared to be faster, those on the
REALbasic list took up the challenge.  During this process someone noticed
that the new Rev code was inadvertently ignoring duplicate matches.  Rev may
have been faster at this point but the code wasn't doing the full job.  It
was also pointed out that the Rev code had been optimized for 2 and 3 letter
searches and the original poster decided to update his data set to be more
representative of his needs.
 
 Assuming 'readability' and 'maintainability' were set as primary goals,
 it's hard to deny Xtalk languages excel in both areas.

Sure, but in order to get maximum performance in this particular case it
seems both of these things have been sacrificed.
 
 All that said, it does look like either application can handle string
 parsing w/out problems.

Agreed.
 

Richard Gaskin wrote:
 
 A number of small clarifications on this.  The person who started
 the speed comparison was not an RB fan but rather a SuperCard
 user evaluating both REALbasic and Revolution.
 
 Having once been the leading vendor of third-party components for
 SuperCard, I've known him for more than a decade.  Somewhere in the
 communications he mentioned that he'd felt so burned by the Allegiant
 experience that he was resistent to working with xTalks in general, and
 accordingly had a preference for RB.

He didn't have a preference for REALbasic, in fact very early during the
thread he mentioned that he was a REALbasic novice:

 You know more than most on this list that I will squeeze every
 millisecond out of my code, but SuperCard will only go just so fast.
 I'm just a novice with Revolotion and RealBasic, so I'm trying to
 figure out if RealBasic really is THAT fast and whether Revolution
 can't be coaxed to go a bit faster than I'm able to make it.

 His initial attempt found that REALbasic was significantly faster than
 Revolution.
 
 That was the second round.  The first round had Rev way in the lead
 (twice as fast IIRC), using nothing more than a half-dozen lines of code
 found in an old MetaCard example stack.

I can't find any evidence of this assertion on either mailing list.  The
above quote seems to indicate he had found otherwise.

 After both sets of code were further optimized the speed differences
 were negligible.  The primary difference after optimization is the
 readability and maintainability of the code.  The guts of the routine
 in REALbasic is 6 lines of code but 37 lines of code in Revolution.
 
 We could selectively compare subsets, but to get the job done the final
 published code listings have 74 lines for RB and 79 lines for Rev.

True, but the RB code will display appropriate error messages when the data
file is missing or locked.  It doesn't look like the Revolution code does
this.  Removing this code could save 20+ lines.  Alternatively the same
functionality could be accomplished with fewer lines if anyone cared.

 As for the speed of the load, the results are probably misleading
 for REALbasic because it includes the first step of string processing.
 
 It's odd that after so many RB'ers helped with that code they came up
 with an inefficient method.

I never said the method was inefficient.  I was just pointing out that the
timing wasn't simply timing a file load.  You were using this one data point
to imply that Revolution loaded files twice as fast as REALbasic.
 
 But maybe it's not so bad -- his Rev code uses:
 
   put url (file:fn) into tMatchList
 
 That also does string processing, changing any line endings to match the
 Unix convention used internally within the engine.  binfile is often
 faster than file, since it loads the file wholesale without modifying
 line endings.

This demonstrates my point.  The definition of load was peculiar to this
example and shouldn't be used as a basis for a general comparison.

 Either 

Re: RunRev vs RealBasic (Richard Gaskin)

2005-01-20 Thread Chipp Walters
Hi David,
A quick Google shows you're the product manager for Real Basic. Guess 
that sorta slipped your sig ;-)

I certainly understand your desire to defend RB to the max.
I followed closely the previous RB-RR thread, and don't recall it as you 
do. Perhaps we should discuss over lunch? (I'm in Austin, too!)

-Chipp
--
No virus found in this outgoing message.
Checked by AVG Anti-Virus.
Version: 7.0.300 / Virus Database: 265.7.0 - Release Date: 1/17/2005
___
use-revolution mailing list
use-revolution@lists.runrev.com
http://lists.runrev.com/mailman/listinfo/use-revolution


Re: living and learning (Re: RunRev vs RealBasic (Richard Gaskin))

2005-01-19 Thread Geoff Canyon
On Jan 17, 2005, at 12:12 PM, Dan Shafer wrote:
On another app, though I *had* to use the hide/show groups method 
because only part of a window (card) changes in response to the users 
selections.
Note that the multi-card solution for tabs can still be used even if 
only a part of the window needs to change, as long as there is only 
one. You can group everything else (perhaps along with the tab panel 
itself) and include it on all the cards. Then create only what you want 
to change as card controls.

You _have_ to use the show/hide groups technique (or something similar) 
if you have more than one tab panel and they have to change 
independently.

regards,
Geoff Canyon
[EMAIL PROTECTED]
___
use-revolution mailing list
use-revolution@lists.runrev.com
http://lists.runrev.com/mailman/listinfo/use-revolution


Re: living and learning (Re: RunRev vs RealBasic (Richard Gaskin))

2005-01-19 Thread Dan Shafer
Geoff
Good point. I have a mixture of the two types of needs, but when I can, 
I now use the card method as it is much more flexible and easier to 
code.

Dan
On Jan 19, 2005, at 7:37 AM, Geoff Canyon wrote:
On Jan 17, 2005, at 12:12 PM, Dan Shafer wrote:
On another app, though I *had* to use the hide/show groups method 
because only part of a window (card) changes in response to the users 
selections.
Note that the multi-card solution for tabs can still be used even if 
only a part of the window needs to change, as long as there is only 
one. You can group everything else (perhaps along with the tab panel 
itself) and include it on all the cards. Then create only what you 
want to change as card controls.

You _have_ to use the show/hide groups technique (or something 
similar) if you have more than one tab panel and they have to change 
independently.

regards,
Geoff Canyon
[EMAIL PROTECTED]
___
use-revolution mailing list
use-revolution@lists.runrev.com
http://lists.runrev.com/mailman/listinfo/use-revolution
___
use-revolution mailing list
use-revolution@lists.runrev.com
http://lists.runrev.com/mailman/listinfo/use-revolution


Re: living and learning (Re: RunRev vs RealBasic (Richard Gaskin))

2005-01-19 Thread Chipp Walters
It's really just a matter of style, for instance, I *never* use the card 
method for this. I only use multiple card stacks in a couple places:

1) Wizards
2) I many times use the 2nd card in a stack to store all the icons for 
the first card.

This goes along with the concept of keeping the data and presentation 
layers completely seperate. HyperCard (and to an extent RunRev) allow 
users to mix the two, I prefer not to for a variety of good reasons.

best,
Chipp
Dan Shafer wrote:
Geoff
Good point. I have a mixture of the two types of needs, but when I can, 
I now use the card method as it is much more flexible and easier to code.

Dan

--
No virus found in this outgoing message.
Checked by AVG Anti-Virus.
Version: 7.0.300 / Virus Database: 265.7.0 - Release Date: 1/17/2005
___
use-revolution mailing list
use-revolution@lists.runrev.com
http://lists.runrev.com/mailman/listinfo/use-revolution


Re: living and learning (Re: RunRev vs RealBasic (Richard Gaskin))

2005-01-19 Thread Richard Gaskin
Dan Shafer wrote:
 On Jan 19, 2005, at 7:37 AM, Geoff Canyon wrote:
 Note that the multi-card solution for tabs can still be used even if
 only a part of the window needs to change, as long as there is only
 one. You can group everything else (perhaps along with the tab panel
 itself) and include it on all the cards. Then create only what you
 want to change as card controls.

 You _have_ to use the show/hide groups technique (or something
 similar) if you have more than one tab panel and they have to change
 independently.

 Good point. I have a mixture of the two types of needs, but when
 I can, I now use the card method as it is much more flexible and
 easier to code.
Most of the time. :)
What got me started using groups instead of cards was referencing 
objects in scripts:  While designing WebMerge 2.0 I kept moving controls 
from one tab to another until I got myself clear on what the program's 
flow should be.  During those changes I'd have to change every script 
reference to every object to include the different card name.

With groups I have all 180+ controls on one card, so I can say:
   get the hilite of btn idxTemplateOption
...and it doesn't matter to the code which group that's part of.
I like many aspects of working with card-based tabs, and tend to use 
that wherever I can.  But for the flexibility it lends to the design 
process, I'll probably use groups for a lot of tabbed interfaces going 
forward (at least until I learn to do proper paper prototyping like da 
pros at UIE http://uie.com/browse/paper_prototyping/).

--
 Richard Gaskin
 Fourth World Media Corporation
 __
 Rev tools and more: http://www.fourthworld.com/rev
___
use-revolution mailing list
use-revolution@lists.runrev.com
http://lists.runrev.com/mailman/listinfo/use-revolution


Re: living and learning (Re: RunRev vs RealBasic (Richard Gaskin))

2005-01-19 Thread Dan Shafer
On Jan 19, 2005, at 12:34 PM, Richard Gaskin wrote:
What got me started using groups instead of cards was referencing 
objects in scripts:  While designing WebMerge 2.0 I kept moving 
controls from one tab to another until I got myself clear on what the 
program's flow should be.  During those changes I'd have to change 
every script reference to every object to include the different card 
name.

With groups I have all 180+ controls on one card, so I can say:
   get the hilite of btn idxTemplateOption
...and it doesn't matter to the code which group that's part of.
Unless (as is the case in one of my apps), you have multiple groups 
with controls that have the same name. This facilitates making the code 
more generic/abstract and allowing me to place scripts at a higher 
level, but has the downside that I have to track the current group and 
do things like:

get the hilite of btn idxTemplateOption of group curGroup
WHen you forget to to that, stuff breaks in ways that are all but 
invisible.

Dan
___
use-revolution mailing list
use-revolution@lists.runrev.com
http://lists.runrev.com/mailman/listinfo/use-revolution


Re: living and learning (Re: RunRev vs RealBasic (Richard Gaskin))

2005-01-19 Thread Richard Gaskin
Dan Shafer wrote:
On Jan 19, 2005, at 12:34 PM, Richard Gaskin wrote:
What got me started using groups instead of cards was referencing 
objects in scripts:  While designing WebMerge 2.0 I kept moving 
controls from one tab to another until I got myself clear on what the 
program's flow should be.  During those changes I'd have to change 
every script reference to every object to include the different card 
name.

With groups I have all 180+ controls on one card, so I can say:
   get the hilite of btn idxTemplateOption
...and it doesn't matter to the code which group that's part of.
Unless (as is the case in one of my apps), you have multiple groups with 
controls that have the same name. This facilitates making the code more 
generic/abstract and allowing me to place scripts at a higher level, but 
has the downside that I have to track the current group and do things like:

get the hilite of btn idxTemplateOption of group curGroup
WHen you forget to to that, stuff breaks in ways that are all but 
invisible.
But that's where my curmudgeonly habits have their rare moment of 
practical applicability:

The name idxTemplateOption is already a unique identifier.  The idx 
prefix tells me which part of the program it relates to, and the rest 
describes what it does.  I can move the object anywhere in the card, 
from group to group, and always address it by name alone.

Of course it's less readable from an English standpoint, but fortunately 
code is skimmed more often than it's read, and funky prefixes tend to 
stand out visually from the more English-like words native to Transcript.

For example, skim this sentence with theWindows and the Windows and see 
if the former stands out as much as tWindows.

Of course someone with your experience already has whatever funky naming 
tricks help you skim, but newcomers might find some of these helpful:

http://www.fourthworld.com/embassy/articles/scriptstyle.html
--
 Richard Gaskin
 Fourth World Media Corporation
 __
 Rev tools and more: http://www.fourthworld.com/rev
___
use-revolution mailing list
use-revolution@lists.runrev.com
http://lists.runrev.com/mailman/listinfo/use-revolution


Re: RunRev vs RealBasic (Richard Gaskin)

2005-01-19 Thread Richard Gaskin
Thomas Gutzmann wrote:
And with the recent 4000-fold increase in speed for same-size chunk 
replacements, I wonder if the kind of graphics processing you're doing 
could now be done in Rev.  What does that entail?
This speed increase is impressing, but having tried quite some 
alternatives, I'm sure that only C++ (which I don't like) and RB where 
adequate solutions, There are so many calculations when moving objects 
and scrolling the pane, that I simply cannot imagine that Rev is fast 
enough. But I will give it a try as soon as I have some time, and I will 
come back to the list with the results.
For some tasks I'd have to agree, but for many you might be surprised.
I've had more than one magazine mistake my WebMerge application for 
being written in C (that includes a writer for C++ User Journal g). 
And that was before I did my recent optimization which has since more 
than doubled WebMerge's throughput.

We had a rather funny thread here last year in which an RB fan started a 
bake-off for speed on a parsing algorithm on a fairly large file.  True 
'nuff, RB was faster -- but only by 3 milliseconds. And that was the 
overal score -- in the most common task, loading a file, Rev was nearly 
twice as fast.

I've been pondering this new speed enhancement to same-size chunk 
replacements, specifically in regard to image processing.  Since much of 
what image processing involves is replacing a specific number of bytes, 
I wonder if any of the folks here have made any recent experiments with 
writing image filters in native Transcript.  With the sort of speed Dar 
reports we may find that some types of filters can run acceptably well 
in Transcript alone.


 It's a bit disappointing that Rev doesn't provide support
 for the other Unixes any more - that was one of the big
 advantages against RB.
Which ones are you using that are no longer supported?
In my understanding the dropped platforms simply weren't used.  With 
enough interest they might bring some back.
Well, ahem, I purchased the Rev license because I wanted to rewrite 
tools for HP/UX and SunOS. I have to stick with Java there, now.

I know that my company cannot produce enough revenue for Rev to justify 
any extra work for the Unix platforms - but Rev should remove the 
features from the web site if they don't plan to provide it, or they 
should give an estimated release date.
Agreed.  CC'ing the CEO here to make sure that gets attention.
(He reads the list, but when something comes up that's really important 
I trust he doesn't mind the extra effort to help ensure it gets done, 
esp. something so small.)

On the flipside, if there's a way they can help automate those builds it 
does indeed make a nice statment to show those platforms actively 
supported, and Sun OS is still quite in use.


 Now please don't flame!
No reasonable person could flame such a balanced and thoughtful post. 
Thanks for taking the time.
Well, I have seen the contrary. But maybe this list is really different.
Results vary from list to list, and from reader to reader.  But I think 
you'll find this is a very good crew here in this regard.  Most of the 
pros here use multiple tools and can relate to what you're saying, and 
the pure Transcripters here probably enjoy learning about what other 
systems offer, esp. when it's presented as fairly as you have.

And any post that furthers the request for alternate-colored-lines in 
fields will always get a round of applause here. :)  Have you added your 
vote to the Bugzilla request for that?

--
 Richard Gaskin
 Fourth World Media Corporation
 __
 Rev tools and more: http://www.fourthworld.com/rev
___
use-revolution mailing list
use-revolution@lists.runrev.com
http://lists.runrev.com/mailman/listinfo/use-revolution


Re: RunRev vs RealBasic (Richard Gaskin)

2005-01-19 Thread Chipp Walters
I did write some compositing and blur/sharpen filters in transcript some 
time ago, but I don't know the details of the 'same-size chunk' 
replacements. Where can I find more info?

Richard Gaskin wrote:
I've been pondering this new speed enhancement to same-size chunk 
replacements, specifically in regard to image processing.  Since much of 
what image processing involves is replacing a specific number of bytes, 
I wonder if any of the folks here have made any recent experiments with 
writing image filters in native Transcript.  With the sort of speed Dar 
reports we may find that some types of filters can run acceptably well 
in Transcript alone.

--
No virus found in this outgoing message.
Checked by AVG Anti-Virus.
Version: 7.0.300 / Virus Database: 265.7.0 - Release Date: 1/17/2005
___
use-revolution mailing list
use-revolution@lists.runrev.com
http://lists.runrev.com/mailman/listinfo/use-revolution


Re: RunRev vs RealBasic (Richard Gaskin)

2005-01-19 Thread Richard Gaskin
Chipp Walters wrote:
 Richard Gaskin wrote:
 I've been pondering this new speed enhancement to same-size
 chunk replacements, specifically in regard to image processing.
 Since much of what image processing involves is replacing a
 specific number of bytes, I wonder if any of the folks here
 have made any recent experiments with writing image filters
 in native Transcript.  With the sort of speed Dar reports we
 may find that some types of filters can run acceptably well
 in Transcript alone.

 I did write some compositing and blur/sharpen filters in
 transcript some time ago, but I don't know the details of
 the 'same-size chunk' replacements. Where can I find more info?
All I know is what Dar posted here, but it sounded really tasty. 
Apparently he made a suggestion to Scott Raney about ways to optimize 
operations in which a string of a given length is used to replace a 
substring of the same length within a larger chunk.

In previous versions a very generalized approach was used for all 
replacement operations, requiring that the data be copied during the 
replacement, which can be computationally expensive with large chunks.

Since the data being inserted is the same length as the data being 
removed the handle size doesn't change, allowing the operation to work 
in-place, without copying.

IIRC, Raney reported that the new method should improve speed by roughly 
4000 times for those cases.

Dar - got the details for us?
--
 Richard Gaskin
 Fourth World Media Corporation
 __
 Rev tools and more: http://www.fourthworld.com/rev
___
use-revolution mailing list
use-revolution@lists.runrev.com
http://lists.runrev.com/mailman/listinfo/use-revolution


Re: RunRev vs RealBasic (Richard Gaskin)

2005-01-19 Thread Richard Gaskin
Richard Gaskin wrote:
Chipp Walters wrote:
  Richard Gaskin wrote:
  I've been pondering this new speed enhancement to same-size
  chunk replacements, specifically in regard to image processing.
  Since much of what image processing involves is replacing a
  specific number of bytes, I wonder if any of the folks here
  have made any recent experiments with writing image filters
  in native Transcript.  With the sort of speed Dar reports we
  may find that some types of filters can run acceptably well
  in Transcript alone.
 
  I did write some compositing and blur/sharpen filters in
  transcript some time ago, but I don't know the details of
  the 'same-size chunk' replacements. Where can I find more info?
All I know is what Dar posted here, but it sounded really tasty. 
Apparently he made a suggestion to Scott Raney about ways to optimize 
operations in which a string of a given length is used to replace a 
substring of the same length within a larger chunk.

In previous versions a very generalized approach was used for all 
replacement operations, requiring that the data be copied during the 
replacement, which can be computationally expensive with large chunks.

Since the data being inserted is the same length as the data being 
removed the handle size doesn't change, allowing the operation to work 
in-place, without copying.

IIRC, Raney reported that the new method should improve speed by roughly 
4000 times for those cases.

Dar - got the details for us?
Found the Bugzilla notes:
http://support.runrev.com/bugdatabase/show_bug.cgi?id=586
--
 Richard Gaskin
 Fourth World Media Corporation
 ___
 [EMAIL PROTECTED]   http://www.FourthWorld.com
___
use-revolution mailing list
use-revolution@lists.runrev.com
http://lists.runrev.com/mailman/listinfo/use-revolution


living and learning (Re: RunRev vs RealBasic (Richard Gaskin))

2005-01-17 Thread Andre Garzia
On Jan 15, 2005, at 10:12 PM, Richard Gaskin wrote:
You have two basic ways to work with tabs in Rev: putting the tab in a 
shared group and moving between cards in response to the menuPick 
message, or responding to that message by hiding and showing groups.

Damn! :-)
I never tought of sharing a tab and moving through cards I have 
this app with 8 tabs and I am hiding and showing groups...  silly me...
Thanks Richard, again, I learn a new trick from your mail!

andre
--
Andre Alves Garzia  2004  BRAZIL
http://studio.soapdog.org
___
use-revolution mailing list
use-revolution@lists.runrev.com
http://lists.runrev.com/mailman/listinfo/use-revolution


Re: living and learning (Re: RunRev vs RealBasic (Richard Gaskin))

2005-01-17 Thread Ken Ray
On 1/17/05 12:25 PM, Andre Garzia [EMAIL PROTECTED] wrote:

 
 On Jan 15, 2005, at 10:12 PM, Richard Gaskin wrote:
 
 You have two basic ways to work with tabs in Rev: putting the tab in a
 shared group and moving between cards in response to the menuPick
 message, or responding to that message by hiding and showing groups.
 
 
 Damn! :-)
 
 I never tought of sharing a tab and moving through cards I have
 this app with 8 tabs and I am hiding and showing groups...  silly me...
 Thanks Richard, again, I learn a new trick from your mail!

I do this all the time - create a tab button, group it, set the
backgroundbehavior to true, then set its script to:

on menuPick newTab,oldTab
  go card newTab
end menuPick

Easy!

:-)

Ken Ray
Sons of Thunder Software
Web site: http://www.sonsothunder.com/
Email: [EMAIL PROTECTED]


___
use-revolution mailing list
use-revolution@lists.runrev.com
http://lists.runrev.com/mailman/listinfo/use-revolution


Re: Multiple Languages per App (was: RunRev vs RealBasic (Richard Gaskin))

2005-01-17 Thread Thomas Gutzmann
Hi Dan,
Thomas. Can you say something about how you get the separate pieces to 
work together seamlessly? I'd often like to use multiple languages for 
some apps but the problem of cooperation has always stymied me.
one of the very basic prequisites is to use a multi-user database; we 
are going for Postgres because for several reasons which I don't want 
to list here.

Next requirement is to have a similar look-and-feel for the separate 
parts of the application, especially the menus must look alike.

The parts of the application must be grouped functionally to minimise 
the work required for handling the resume and suspend events - and they 
are where the applications work together. At resume, the application 
must retrieve and store the state, preferably from the database. By the 
way, this allows to share the application between computers. though 
this may be a bit mundaine.

It's a pity that Apple abandoned OLE; nowadays with the fast hardware 
it would be nice to have it. Under Windows, it allows some extra 
integration, e.g. using VB as a wrapper application. Apple,on the other 
hand, has AppleScript, which is superior to Windows scripting. I don't 
have an idea for Unix, yet.

No, I don't think it's difficult to use multiple tools to provide a 
unified solution, and I think it's the way to go in the future, even 
including foreign applications like iCal, Excel, Word, Mail etc. - 
which is very easy with AppleScript. I wrote a small app to help my 
colleagues and me manage some 50+ servers with different login 
requirements, usernames, passwords etc. simply be combining Rev, 
KeyChain and iTerm; I made this app for getting known to Rev, and it 
was astonishing how fast I had the application ready.

Cheers,
Thomas G.
___
use-revolution mailing list
use-revolution@lists.runrev.com
http://lists.runrev.com/mailman/listinfo/use-revolution


RE: RunRev vs RealBasic (Richard Gaskin)

2005-01-16 Thread MisterX
 
   - I sometimes have the impression that Revolution as a company
   doesn't really exist. They are hardly ever seen in this list,
   it's hard to get responses from them. I think that one of the
   secrets of the success for RB was (and is) their presence and
   visibility in the developer community.
 
 Agreed 200% -- timely contact with a vendor is critical, as 
 is a regular 
 and ongoing vendor presence on their list.
 
 Those were both so important I wanted to make sure they were included 
 here, and have cc'd Kevin to make sure he doesn't miss it.

But how many times do we have to come back this subject or tell Kevin this
(I've told him more than a dozen times at least! And I know others have
too!)? 

Just to hear another client request it again later... 

Ah, I know! No one put in a bugzilla request! LOL


___
use-revolution mailing list
use-revolution@lists.runrev.com
http://lists.runrev.com/mailman/listinfo/use-revolution


RE: RunRev vs RealBasic (Richard Gaskin)

2005-01-16 Thread Bob Hartley
Hi all.
Here is an alternative perspective on rev vs realbasic. Nothing to do with 
the product usabliity.

Go to these links on the apple store (I use windows myself)
Runtime revolution search
http://store.apple.com/1-800-MY-APPLE/WebObjects/AppleStore.woa/71502/wo/NqzSeidBmxYv2IKanzr7Wtb2d1e/1.3.0.6.5.2.0.2.1.1
runrev search
http://store.apple.com/1-800-MY-APPLE/WebObjects/AppleStore.woa/71502/wo/NqzSeidBmxYv2IKanzr7Wtb2d1e/5.0.11.1.0.6.45.0.1
Realbasic search
http://store.apple.com/1-800-MY-APPLE/WebObjects/AppleStore.woa/71502/wo/NqzSeidBmxYv2IKanzr7Wtb2d1e/7.0.11.1.0.6.45.0.1
So if you dont want to go to the website, then here is a summary.
Nothing found when searching for runrev or revolution or runtime 
revolution. A search for realbasic showed that apple sell realbasic.

Now A NOVICE DEVELOPER who wants to make a wee programme for his mac may 
look on the apple store first and think a I should get this, it 
looks easy then later they discover runrev and think... Oh well I 
have realbasic so although runrev looks better, I now know how to use 
realbasic.

I did the opposite, I looked at realbasic and thought that runrev was 
better, however I cam uppon runrev by chance...

My 2p worth. 

--
No virus found in this outgoing message.
Checked by AVG Anti-Virus.
Version: 7.0.300 / Virus Database: 265.6.13 - Release Date: 16/01/2005
___
use-revolution mailing list
use-revolution@lists.runrev.com
http://lists.runrev.com/mailman/listinfo/use-revolution


Re: RunRev vs RealBasic (Richard Gaskin)

2005-01-15 Thread Thomas Gutzmann
Am 31.12.2004 um 05:30 schrieb Ken Ray:
Personally I think on of the biggest advantages that Rev has over RB 
is that
you can go from editing to running *immediately*; you don't need to 
compile
and run. So for example, if you're working on a dialog box that would
normally take you 5 mouse clicks to get to from the start of your 
program,
you would have to run that sequence every time you made a simple 
change to
the dialog box. In Rev, you'd just switch to the browse tool, and 
you're
running immediately; you can test right away.
I know that this discussion has been over since half a month, but I 
haven't read the thread before.

Using BBEdit as an external editor (on MacOS/X) gives even more power: 
stay in run mode, modify the script, save it, and go on testing. This 
is something I'm missing in RB. If you combine this with the power of a 
scriptable database like PostgreSQL or Oracle, you can can even go 
further, by modifying database procedures and functions on the fly 
(which would work in RB the same way). In my  30 years of software 
development I never had a development environment which gave me such a 
comfort. It's like a dream.

The good thing in RB is that you have true OOP. The bad thing in RB is 
that you have true OOP. If the application can be divided in small 
chunks, e.g. windows for working on different tables in a database, 
you're better off with Rev, because you can work on all of them 
separately - given that you don't switch to the second window (well, 
stack) before the first is really perfect. Then you can clone it, and 
making the second is amazingly quick.

But there are cases where OOP is simply better, and then RB is the 
better choice, of course (better than Java, too). I have an application 
where I need a very fast and complicated graphic interface with a large 
number of objects. This I have written in RB; the rest of the 
application is being written in Rev. All these single and largely 
independent windows can be done in RB, sure, but it simply takes too 
long.

I'm not sure yet how to do the printing and reporting part - maybe I 
switch to a third tool for that, like Perl.

There are some other points to consider.
- RB has more interface elements; it's easier to make tabbed windows (I 
have given this up in RB), there are much more options for lists, and 
so on.
- In Rev this good old HyperCard idea of cards, combined with the 
substacks, can be used to combine all elements of a user interface for 
a given part of the application (e.g. managing data entry using a 
selection list, modification dialogs, and so on) in one stack. This 
makes the code MUCH easier to maintain. We have stopped development in 
RB when the number of dialogs got about a certain threshold - 
development time exploded.
- It's also easier to share development in Rev, because there are less 
mutual dependencies. If you have one stack for common handlers and 
functions, you can reduce the sharing just to this stack, the rest can 
be distributed amongst developers (given, it's a database oriented 
application with a central db).
- Though both systems claim to be x-platform, my experience is that Rev 
is better in this respect than RB. Maybe that's due to the smaller 
amount of interface elements. It's a bit disappointing that Rev doesn't 
provide support for the other Unixes any more - that was one of the big 
advantages against RB.
- Documentation is often criticised in Rev, but after working with it 
for some time, I think it's not worse than RB. The online documentation 
is faster to work with, once you have found out how to get around the 
weak spots.
- Support is better in RB, but that may be due to the size of the 
company; RB brings out new versions faster, and their bug tracking 
system is better. But on the other hand there are VERY engaged people 
on this list which make good a lot - but not all.
- I sometimes have the impression that Revolution as a company doesn't 
really exist. They are hardly ever seen in this list, it's hard to get 
responses from them. I think that one of the secrets of the success for 
RB was (and is) their presence and visibility in the developer 
community. But that's also in our hands as customers: we must help them 
sell licenses...
- The IDE of RB was much better in the past, but with 2.5 Rev has 
improved so much that - after having worked with it for several weeks - 
I think it's as good as RB now, if not better. Hard to explain in 
detail - I don't want to waste more or your time.

Bottom line: we will continue developing with RB, Java etc. - but now 
that I'm nearly through with a pilot, we will start using Rev for many 
portions of applications where we used RB, Java and Perl before, and 
I'm sure that the larger percentage (by far) will be done with Rev. And 
once they have finished the transition to SunOS etc. (if ever), we can 
abandon Java for all GUI programs.

Now please don't flame!
Cheers,
Thomas G.
___

Re: RunRev vs RealBasic (Richard Gaskin)

2005-01-15 Thread Richard Gaskin
Thomas Gutzmann wrote:
 But there are cases where OOP is simply better, and then RB
 is the better choice, of course (better than Java, too). I
 have an application where I need a very fast and complicated
 graphic interface with a large number of objects. This I have
 written in RB; the rest of the application is being written
 in Rev. All these single and largely independent windows can
 be done in RB, sure, but it simply takes too long.
How does OOP help with that?
And with the recent 4000-fold increase in speed for same-size chunk 
replacements, I wonder if the kind of graphics processing you're doing 
could now be done in Rev.  What does that entail?

 I'm not sure yet how to do the printing and reporting part - maybe I
 switch to a third tool for that, like Perl.
In its simplest form, Rev prints a card.  So you can lay out a card to 
appear as you want it on paper, fill it with what you need, and execute 
a print card command.

It can get tricker if you need things like multi-column lists of 
variable size, but all the raw materials for figuring out the layout 
dynamically (see the print properties and formattedHeight, pageHeights, 
etc.) are available in the language for most printing needs.

 - RB has more interface elements;
Which common GUI elements are not also in Rev?
 it's easier to make tabbed windows (I have given this up in RB),
Did you mean Rev?  If so, what difficulties did you entounter?
You have two basic ways to work with tabs in Rev: putting the tab in a 
shared group and moving between cards in response to the menuPick 
message, or responding to that message by hiding and showing groups.

Is working with lists of controls in code easier in RB?  Or do they have 
another way of doing it?

 there are much more options for lists, and so on.
What options would be useful to have added to Rev lists?
 - It's also easier to share development in Rev, because there are less
 mutual dependencies. If you have one stack for common handlers and
 functions, you can reduce the sharing just to this stack, the rest can
 be distributed amongst developers (given, it's a database oriented
 application with a central db).
Amen to that, brother.  You can do minimal- or zero-dependancy code in 
Rev, as you wish.  Working on a stack doesn't mean pulling a long clique 
of classes along with it.

 It's a bit disappointing that Rev doesn't provide support
 for the other Unixes any more - that was one of the big
 advantages against RB.
Which ones are you using that are no longer supported?
In my understanding the dropped platforms simply weren't used.  With 
enough interest they might bring some back.

 - Support is better in RB, but that may be due to the size of the
 company; RB brings out new versions faster, and their bug tracking
 system is better. But on the other hand there are VERY engaged
 people on this list which make good a lot - but not all.
 - I sometimes have the impression that Revolution as a company
 doesn't really exist. They are hardly ever seen in this list,
 it's hard to get responses from them. I think that one of the
 secrets of the success for RB was (and is) their presence and
 visibility in the developer community.
Agreed 200% -- timely contact with a vendor is critical, as is a regular 
and ongoing vendor presence on their list.

Those were both so important I wanted to make sure they were included 
here, and have cc'd Kevin to make sure he doesn't miss it.

 Now please don't flame!
No reasonable person could flame such a balanced and thoughtful post. 
Thanks for taking the time.

--
 Richard Gaskin
 Fourth World Media Corporation
 __
 Rev tools and more: http://www.fourthworld.com/rev
___
use-revolution mailing list
use-revolution@lists.runrev.com
http://lists.runrev.com/mailman/listinfo/use-revolution


Re: RunRev vs RealBasic (Richard Gaskin)

2005-01-15 Thread Dan Shafer
On Jan 15, 2005, at 3:25 PM, Thomas Gutzmann wrote:
I have an application where I need a very fast and complicated graphic 
interface with a large number of objects. This I have written in RB; 
the rest of the application is being written in Rev. All these single 
and largely independent windows can be done in RB, sure, but it simply 
takes too long.

Thomas. Can you say something about how you get the separate pieces to 
work together seamlessly? I'd often like to use multiple languages for 
some apps but the problem of cooperation has always stymied me.

Dan
___
use-revolution mailing list
use-revolution@lists.runrev.com
http://lists.runrev.com/mailman/listinfo/use-revolution


Re: RunRev vs RealBasic (Richard Gaskin)

2004-12-31 Thread Frank D. Engel, Jr.
-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1
I have a very limited amount of experience with Visual Basic, and ran 
the RealBasic demo when trying to decide on a tool for the project I am 
doing.  I have had a little more experience with other languages, 
including other forms of Basic (Applesoft Basic, QuickBasic), C, Java, 
Pascal, Ada, etc.

I definitely agree that one of Rev's biggest advantages is that program 
execution can be overlapped with development.  While designing a 
program in the IDE, you can easily switch among form editing, script 
editing, and browse (execution) modes and not take extensive time for 
recompiling.  If there is a bug during execution, you can often patch 
it up in the script and restart the script operation w/o needing to go 
through and restart the entire program.  What traditional tools would 
provide as Debugging information, such as watch windows for 
variables, etc. are easily accessible through the Rev interface.  
Immediate command execution is possible through the Message box.  
There are numerous advantages to an interpreted environment, and even 
more with the modal used by Rev.

However, there are a few disadvantages, as well: some with the modal, 
and some with Rev specifically.  Rev's documentation is somewhat 
lacking for beginners, so if you do not already have familiarity with 
an XTalk environment such as HyperCard/SuperCard, it will be a bit of 
an adjustment to deal with -- of course, it would be an adjustment even 
with good docs, but it would at least come more easily.  However, once 
you have learned the modal of development used by Rev, and have some 
familiarity with how to search the docs and use this list, it is not 
difficult to pick up new topics and use them rather efficiently.  My 
own coding style and use of Rev's features is constantly improving with 
techniques I pick up on accidentally using this list.  Printing is 
also in need of some improvement, at least under Windows (which has 
different screen and printer font metrics).  Once a few issues have 
been worked out, and after you get on to how printing is done, you can 
access some quite powerful features rather easily, though.

Also, Rev is an interpreter, not a compiler.  Code execution is much 
slower than what you would get with a compiled language such as 
RealBasic.  This is somewhat compensated for by the fact that so many 
slow algorithms are already implemented and easy to access through 
simple instructions in Transcript, and can be further enhanced by using 
external routines in compiled modules bundled with your program (for 
computationally intensive tasks not easily covered by Transcript, or 
for accessing outside libraries or functions currently missing from 
Rev).  Overall though, for most functionality, Transcript is 
sufficiently fast that this is not a problem, except for 
computationally intensive algorithms.

The language itself is rather simple to learn, and allows you to write 
software quite quickly once you are on to it.

Another advantage of Rev over RealBasic is that many of the tools you 
use to develop your programs are actually included in the runtime 
engine for the programs.  Drawing/Painting tools, field layouts, etc. 
can be modified dynamically if you allow them to be, and it is possible 
to do some rather interesting things by combining the available tools.


So download the demo and give it a try.  It's not an end-all-else tool 
(nothing is), but it can be a very powerful way to create simple (and 
even very complex) programs quite rapidly.

On Dec 30, 2004, at 11:30 PM, Ken Ray wrote:
On 12/30/04 4:42 PM, [EMAIL PROTECTED] [EMAIL PROTECTED] wrote:
Thanks, Richard, point taken.  I'll begin by telling about myself.  I 
have
fairly extensive experience with the Windows API, Unix, and the 
Macintosh
environment.  I am very familiar with tools such as XCODE, GCC, etc.  
I have
recently (within the last 3 years) found that RealBasic strikes a 
very, very
good middle ground with power vs. ease of use; not sacrificing a 
great deal of
the former.  I can't really complain about their support either.  My 
only
knowledge of RunRev is what I'm reading from the website and hearing 
from
testimonials.

I'm sure you're familiar with the saying all science is magic until
discovered
(or thereabouts), so basically I am curious as to whether most users 
are
novice
developers and are only impressed with RunRev because it is 
something they
can use, or if it really does pack a great deal of power along with
flexibility
to do the complex things.
IMHO, Revolution packs a lot of power in an easy to use shell. I 
know RB
as well as Rev, and I would have to say that if your just looking for 
raw
functionality (i.e. can it do x), Rev and RB are very similar in
abilties (RB does a few things Rev can't and vice-versa). However, 
when it
comes to *ease* of implementation (which applies to speed of 
development and
efficiency), as Richard pointed out, Revolution can be much 

Re: RunRev vs RealBasic (Richard Gaskin)

2004-12-30 Thread cdunix
References: [EMAIL PROTECTED]
In-Reply-To: [EMAIL PROTECTED]
MIME-Version: 1.0
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: 8bit
User-Agent: Internet Messaging Program (IMP) 3.2.2
X-Originating-IP: 12.203.234.218

Thanks, Richard, point taken.  I'll begin by telling about myself.  I have
fairly extensive experience with the Windows API, Unix, and the Macintosh
environment.  I am very familiar with tools such as XCODE, GCC, etc.  I have
recently (within the last 3 years) found that RealBasic strikes a very, very
good middle ground with power vs. ease of use; not sacrificing a great deal of
the former.  I can't really complain about their support either.  My only
knowledge of RunRev is what I'm reading from the website and hearing from
testimonials.

I'm sure you're familiar with the saying all science is magic until discovered
(or thereabouts), so basically I am curious as to whether most users are novice
developers and are only impressed with RunRev because it is something they
can use, or if it really does pack a great deal of power along with flexibility
to do the complex things.

I am currently developing software as a contractor for several different
companies and am very interested in anything that can help me do the job faster
without losing much.  Currently, my primary interest would be in developing
data-connected finance and tracking applications.  From my ignorant position,
it would appear that RB is much more fit for the robust requirements, but as I
said I don't know that for a fact.

Hope that gives you a little more insight into where I am.

Thanks again,
Michael


 I would happily do my best to help explain why MacWorld UK calls Rev 
 the Best Rapid Application Development tool on the market (Dec 04, 
 p55) if you'll kindly tell us a bit more about your interest in Rev.
 
 A shotgun approach usually just turns into a pissing match, and there's 
 plenty in the archives of both lists and elsewhere to feed appetites for 
 that sort of thing.
 
 So if you can describe why you're considering Rev we can better address 
 your specific areas of interest.
 
 Also, when you say you're not interested in ease of use, does that 
 also rule out productivity?  Greater productivity is probably the 
 strongest argument for 4GLs over lower-level languages.  Osterhaut makes 
 one of the most cogent arguments in favor of 4GLs -- c check out his 
 seminal paper on the topic: http://home.pacbell.net/ouster/scripting.html.
 
 After you've read that please describe why you're considering switching 
 and we'll happly do out best to answer your questions.
 
 You may also want to check out Rev's web site:  http://www.runrev.com, 
 as most of the questions in your post are addressed there.  Your notions 
 about how Rev's pricing compares to RealBASIC's can be clarified there 
 as well, looking beyond the price of admission to total costs for 
 upgrades, support, etc.
 
 --
   Richard Gaskin
   Fourth World Media Corporation
   __
   Rev tools and more: http://www.fourthworld.com/rev



This message was sent using IMP, the Internet Messaging Program.

___
use-revolution mailing list
use-revolution@lists.runrev.com
http://lists.runrev.com/mailman/listinfo/use-revolution


Re: RunRev vs RealBasic (Richard Gaskin)

2004-12-30 Thread Ken Ray
On 12/30/04 4:42 PM, [EMAIL PROTECTED] [EMAIL PROTECTED] wrote:

 Thanks, Richard, point taken.  I'll begin by telling about myself.  I have
 fairly extensive experience with the Windows API, Unix, and the Macintosh
 environment.  I am very familiar with tools such as XCODE, GCC, etc.  I have
 recently (within the last 3 years) found that RealBasic strikes a very, very
 good middle ground with power vs. ease of use; not sacrificing a great deal of
 the former.  I can't really complain about their support either.  My only
 knowledge of RunRev is what I'm reading from the website and hearing from
 testimonials.
 
 I'm sure you're familiar with the saying all science is magic until
 discovered
 (or thereabouts), so basically I am curious as to whether most users are
 novice
 developers and are only impressed with RunRev because it is something they
 can use, or if it really does pack a great deal of power along with
 flexibility
 to do the complex things.

IMHO, Revolution packs a lot of power in an easy to use shell. I know RB
as well as Rev, and I would have to say that if your just looking for raw
functionality (i.e. can it do x), Rev and RB are very similar in
abilties (RB does a few things Rev can't and vice-versa). However, when it
comes to *ease* of implementation (which applies to speed of development and
efficiency), as Richard pointed out, Revolution can be much easier to use
than RB (IMHO), allowing for one-liners that would take RB several lines to
implement (to be fair, this happens the other way as well, but IMHO it seems
that more often than not Rev can do things more efficiently than RB).

Personally I think on of the biggest advantages that Rev has over RB is that
you can go from editing to running *immediately*; you don't need to compile
and run. So for example, if you're working on a dialog box that would
normally take you 5 mouse clicks to get to from the start of your program,
you would have to run that sequence every time you made a simple change to
the dialog box. In Rev, you'd just switch to the browse tool, and you're
running immediately; you can test right away.

Just my 2 cents,

Ken Ray
Sons of Thunder Software
Web site: http://www.sonsothunder.com/
Email: [EMAIL PROTECTED]
 


___
use-revolution mailing list
use-revolution@lists.runrev.com
http://lists.runrev.com/mailman/listinfo/use-revolution