How popular is Revolution?

Anything beyond the basics in using the LiveCode language. Share your handlers, functions and magic here.

Moderators: FourthWorld, heatherlaine, Klaus, kevinmiller, robinmiller

mwieder
VIP Livecode Opensource Backer
VIP Livecode Opensource Backer
Posts: 3581
Joined: Mon Jan 22, 2007 7:36 am
Contact:

Post by mwieder » Fri Apr 24, 2009 5:08 pm

Shouldn't we try to start a group of people trying to create the perfect language? Is it too crazy an idea?
I have a somewhat different approach. I think that part of maturing as a developer is being able to pick the right tool for the job. I don't really have an interest in having my hammer double as a drill or as a saw. I'm not sure the "perfect language" for every purpose can actually exist. And this, no doubt, is how Microsoft Word became the bloated unusable object it is today, trying to be everything to everybody.

On the other hand, there are features of different languages which are very useful and rev would benefit from havig these features grafted onto the product. I also really enjoy working with Ruby for things like driving Selenium automation tasks. The "yield" command in Ruby that gives it so much of its power has now been somewhat integrated into rev with the new "dispatch" command that was introduced with rev 3.5.

massung
Posts: 93
Joined: Thu Mar 19, 2009 5:34 pm

Post by massung » Fri Apr 24, 2009 7:01 pm

dartes wrote:Shouldn't we try to start a group of people trying to create the perfect language? Is it too crazy an idea?
Note: I have written many compilers professionally...

There is no such thing as "the perfect language." I cannot stress that enough. The great languages are ones that are designed to solve a particular problem, and do it very well. Some examples:

* String processing: Perl
* Operating system creation: C
* Object oriented: Smalltalk
* Micro-controller programming: Forth
* Embedded scripting: Lua
* Distributed computing: Erlang
* Accessibility: BASIC, Hypertalk

Revolution, while a nice environment with a simple language designed for accessibility to the masses, hardly exemplifies powerful computing. What kinds of things would your "perfect language" include?

* Continuations?
* Lexical environments?
* Closures?
* Multi-threading?
* Message passing across threads?
* Symbolic processing?
* Lazy evaluation?
* Tail calls?
* Regular expressions?
* Anonymous functions?

The list goes on and on... And to make things even more fun, often times one set of features is directly opposed to another set of features (like side effects and lazy evaluation).

This post wasn't meant to discourage. Just to bring reality to the thread. Language design and implementation is (or should be) strictly focused on solving a specific class of problems efficiently.

Jeff M.

dartes
Posts: 13
Joined: Sat Apr 11, 2009 12:43 pm

Post by dartes » Fri Apr 24, 2009 7:20 pm

FourthWorld wrote:I would be interested to see if we might craft a script library to bring some useful functionality of Rebol to Rev
yes, this was exactly my first idea: to create custom rev functions to reproduce some of the more interesting rebol functions (is that what you mean?)

For the moment I'm still studying the rev language (and comparing it with rebol) and it is a bit early to come up with some interesting suggestion. But I will surely do. I will make a list of the more interesting rebol functions not found in rev and start a new post sometime in the future...
mwieder wrote:I'm not sure the "perfect language" for every purpose can actually exist. And this, no doubt, is how Microsoft Word became the bloated unusable object it is today, trying to be everything to everybody.
I see what you mean and I agree 100%. I'm actually discovering a new "object oriented" language almost daily (today: IO and Sqweak Smalltalk). It seems like endless. Maybe there are already too many languages...

Another interesting approach is in Provue Panorama. Their language has built-in support for Ruby, Python etc. Unfortunately only on the Mac platform...
In this way everybody can customize his own toolbox.
mwieder wrote:On the other hand, there are features of different languages which are very useful and rev would benefit from havig these features grafted onto the product
Hopefully they will continue to upgrade this beautiful tool...

FourthWorld
VIP Livecode Opensource Backer
VIP Livecode Opensource Backer
Posts: 10043
Joined: Sat Apr 08, 2006 7:05 am
Contact:

Post by FourthWorld » Fri Apr 24, 2009 7:32 pm

dartes wrote:
FourthWorld wrote:I would be interested to see if we might craft a script library to bring some useful functionality of Rebol to Rev
yes, this was exactly my first idea: to create custom rev functions to reproduce some of the more interesting rebol functions (is that what you mean?)

For the moment I'm still studying the rev language (and comparing it with rebol) and it is a bit early to come up with some interesting suggestion. But I will surely do. I will make a list of the more interesting rebol functions not found in rev and start a new post sometime in the future...
We could start with what you know:

What do you most about Rebol? What do you like least?
Richard Gaskin
LiveCode development, training, and consulting services: Fourth World Systems
LiveCode Group on Facebook
LiveCode Group on LinkedIn

dartes
Posts: 13
Joined: Sat Apr 11, 2009 12:43 pm

Post by dartes » Sat Apr 25, 2009 8:32 am

massung wrote:* Continuations?
* Lexical environments?
* Closures?
* Multi-threading?
* Message passing across threads?
* Symbolic processing?
* Lazy evaluation?
* Tail calls?
* Regular expressions?
* Anonymous functions?
The only thing I undesrtood in this list is 'regular expression' (oh, maybe a little bit of 'closures'. How far is that from the 'Top' (as in Top Gun)? 8)
massung wrote:This post wasn't meant to discourage. Just to bring reality to the thread. Language design and implementation is (or should be) strictly focused on solving a specific class of problems efficiently.
No, no discouragement, maybe just a little dismay about the weakness of rev (I spent the night crying, but now I am fine...)

So what do you think about what I said in the post after your post (that for me was before your post) about Panorama in-built supporting of external languages? Is that feasible for a cross-platform environment? Is it not the perfect solution (for the perfect language) because everybody can decide what is perfect for himself?

'Perfect' is not my fixation in life. The meaning here is: "most confortable with". I saw many times in various forums, especially newbies or non programmer (like myself) express the fear of waisting time in learning the 'wrong' language. I'm sure pro have to learn more than just one tool. This is the reason for my joke about the perfect language. In fact, nowhere in life things are perfect. You need always to compromise...
So should we start a new post about why humans are always looking for 'perfection'?

dartes
Posts: 13
Joined: Sat Apr 11, 2009 12:43 pm

Post by dartes » Sat Apr 25, 2009 8:50 am

FourthWorld wrote:What do you most about Rebol? What do you like least?
Hi Richard, I'm very happy you are so eager to start. But if I have to disclose what little I know you will be disappointed 8) (I like this emoticon even if I'm not really sure of its meaning)

No, do not worry. I really want to do something on this direction. It could be useful for few other people.

Now I am filling up a database with all the functions/operators from rev and rebol (and possibly, later, from panorama, and maybe smalltalk since massung seems to think it is the best of the lot... and what about ruby...!?...and...)

It is a huge job but I feel it will give me a good basis for my learning of rev, even if it is just a glide.

As soon as I find something interesting I will publish it on a post called 'rev and rebol'...

Post Reply