> > Back in the early days when I was beginning to explore Rev > and was doing a good bit of Python work, I remember > experimenting with calling Python scripts from Rev using the > shell() command and having some success. I suspect that > approach has some real potential when we want to do things in > Rev that are down at a lower level than Rev normally reaches > or when we want to do something at which Python is just > better (perhaps, e.g., XML parsing).
Im shure that once we find a vector of action (shell calls or open process or sockets or file-level data-sharing for example) we could integrate a library to make python easy to call from RunRev like I do in WinNT administration! This is the way i managed other programming languages or shell interfaces in TAOO: For example the C function foobar is the same as the Rev script function foobar. (it could be a plotxy() or log10 function that doesn't exist in rev as well. We can do the same for functions that call Python (or whatever script language) functions. The variables, parameters and output formats equally use the same naming and the formats where applicable/practical. So in the end you end up with scripts and functions in Rev or any language that are sometimes exactly the same and can easily correspond across applications, IAC agents or network connections. This way you can transliterate code much easier - a crossplatform-code design principle that's quite a cool thing to do. The next step is making that work across the two environment without blocking either environment (a big shell limitation that could have been implemented as sockets were (do shell(x) with message shelldone). But that depends on how you want to process the info, etc... So that covers the operation across IDEs but not how to manage objects or actions across the two IDEs or runtimes. The data exchange is dependent only on what you need to transfer. But whatever is fastest is usually the best. XML is a good solution but is Rev's XML compatible with Python's? It may be simpler to roll out your own... Sometimes a simple cvs or tab format text is enough... Since you can't really send messages to RunRev from other programs (on pcs - without relaunching a new runrev exe???), the output can be a transaction log listed file by file in a process queue folder (a zillion advantages over other methods imoho) or an sql database! I like files because they are easy and simple and are much faster, safer and distributed processing capable! I haven't done a language library in Rev for Python yet for code interchange but I can share the template stack so you can make one for yourself... C java, javascript, php, flash are available. Only C is most complete but not extensively so. If there is interest in a python to transcript translation matrix or if you have one already, I might make some cool tools end of next week for it! Cheers Xavier _______________________________________________ use-revolution mailing list [email protected] http://lists.runrev.com/mailman/listinfo/use-revolution
