FourthWorld wrote:Maybe it would be helpful if we looked at this from a different angle: what specific task do you want to accomplish?
I don't really want to talk about it (I'd like to be the first one to implement it ...), but one part of the whole is a user entering some scripts to be used for data transformation. I want it to scale, handle huge data sets through lazy evaluation, no limits imposed on how many data sources, and so of course no limits can be applied on the length of scripts which have to combine this data (I like to make things as general and as flexible as possible). But even in the case of a few sources and handful of rows the logic easily gets longer than 10 lines.
I have few other use cases, some of which might not even require scripts, I won't argue, but that's not as important to me. It's not only about what i need (i can and will turn elsewhere if only because real threads aren't a bad thing to have - unavoidable blocking calls, parallelism / concurrency and zero-copy message-passing are among reasons why to have them - as an implementation tool, not to scare users with 'em

), it 's also about the fact that my opinion on the matter of "protection" seems to differ with the general opinion of Rev denizens (I just wanted to voice it and I acknowledge that I might have done so too loud according to somebody's taste / standarts).
FourthWorld wrote:Theoretically, there are a great many things Rev doesn't have that other languages do, and vice versa. So stepping back from the theoretical to the applied may help us point you to a solution that completely solves the problem at hand and lets you move forward completing your project.
If you truly need to be able to set scripts longer than 10 executable lines at runtime you can request a special build from RunRev to do that. Given the risk exposure such an engine creates for them it may be accompanied by a special license with an explicit non-compete clause; I don't know, I've never needed it myself, but Kevin Miller has made the offer publicly so I know that option's available.
Sadly google hadn't brought this up when i hunted for "scriptLimits revolution some-other-bulls**t", thx for the info.
I allways considered this to the the default for any development environment (you cannot just overwrite our copyright and ship your version), bar the free ones. When/if this becomes true for Revolution I'll consider purchasing the license both because Rev seems like a nice solution for a broad spectrum of applications (i have some niche cases which it wouldn't fit just yet, but overally it's really nice client side development tool), and to support the IMO right move.
FourthWorld wrote:That might seem onerous, but the language is just flexible enough to create a competing product in a few days if one were sufficiently motivated, essentially letting RunRev deliver 90+% of what one would need to drive them out of business. This is not purely hypothetical, it's happened once before in this family of languages, in which the vendor found the sales of their product cannibalized by a direct competitor made with their engine. FOSS languages have no such concerns, but the FOSS world has yet to produce a good xTalk (though I wish they would; as a consultant nothing would be better for my work than an open source xTalk).
Is there an "hacker" skilled both in say Lisp/Haskell and xTalk who could somehow sum up his feelings about both alternatives ? I only scratched the surface of RevTalk, i'm sure of it, I'm trying to get some incentive to want to learn more about it; while it looks somewhat speech-like and like it contains a lot of conveniences, it also look highly irregular compared to said languages. And languages like Smalltalk/Io/Falcon/Tcl/Factor allow for nearly same degree of linguistic shenanigans while offering (not every language necessarily each of the mentioned): coroutines or even full blown first-class continuations, time-traveling debugger, just-in-time compilation, full run-time introspection / redefinability, even to the point that "there is no syntax/it's anything you make it" / "everything can be redefined" and image-based application-state persistence.
Revolution have some of these and couldn't dream of others, I've heard a lot of overall praise (even if some of it must be attributed to the fact that some just cannot grasp the complexity that other languages incur trying to adhere rather to a strict set of general rules enabling other kinds of productivity / elegance rather than trying to sound like a bed-time story

), but I miss some juicy details / insight into where exactly lies RevTalk's true mojo/power.
Can this arcane knowledge be taught / transfered to others, can others be pointed to a shortcut or must one just soak in the concentrated goodness until the zen AHA moment ? Or are there documented cases of people so twisted (fancier word for "used to"; I'm really not trying to provoke as much as some would attribute to me, it's just my style of expression, and when one doesn't see me grinning like an idiot, it might get interpreted as open hostility

) by traditional (i know some langs I mentioned really stretch or even don't meet with the word) languages so that they weren't able to see the light ?
FourthWorld wrote:So that's the story with scriptLimits, but as you know from C/C#/C++, etc., most of the world is driven by non-runtime-modifiable code, and still they're able to implement things like genetic algorithms and other dynamic behaviors which can be done in Rev too, using the version you have right now.
One thing no amount of "design time" effort can supplement is some kind of run-time evaluation / interpretation / execution of an algorithm that has been supplied during run-time. You can (more or less) implement your own scripting language or something like it, you can bind to another scripting engine or you can just use the host language. Oh, wait, you cannot, certainly not on the first date. You have to dine and wine em for a while

.
FourthWorld wrote:And remember, within the IDE there are no sciptLimits, so there's no limit to what you can do to automate scripting tasks. And since RevMedia is free, sharing your automated scripting solutions with others costs them nothing, and is a win-win all around: folks get turned on to RevTalk, and you don't need to document 3000 tokens for them since Rev's already done it.
A valid point and surely something to keep in mind, thx.
But on the other hand, there are people who cannot be trusted with an IDE (if it would depend on me I wouldn't trust them with a mouse and keyboard

) and it wont work for corporate / commercial environment (enforceability of business rules etc).
And i don't think I just verified it the free version cannot handle database connections, which disqualifies it right away.
FourthWorld wrote:To help find a good solution we'll need to know more about the specifics of the problem you're looking to solve.
Thanks for the offer (really) but I already know the answer (or the better part of it anyway, cause it's still open-ended, now its time to stop prototyping and start building it for real to see how far it can grow) to my problem and I'm just looking for the most flexible implementation environment. Different environments impose different constraints and shape the resulting product, that's why I am trying a bunch of different tools to see which would fit my intents the best / allow me to offer more functionality.