Emerald Editor Discussion
September 19, 2017, 06:02:36 pm *
Welcome, Guest. Please login or register.
Did you miss your activation email?

Login with username, password and session length
News:
 
   Home   Help Search Login Register  
Pages: [1]
  Print  
Author Topic: Scripting  (Read 7252 times)
0 Members and 1 Guest are viewing this topic.
Wahooney
Miner
**
Posts: 25


« on: July 22, 2006, 09:05:49 pm »

Perhaps instead of macros there could be scripting (macros could possibly even be broken into script), something like Squirrel could be cool, but it would need some powerful string handling functions and perhaps eventually the ability to create dialogs for scripted plugins.  Shocked
Logged
daemon
Developers
Gem Cutter
***
Posts: 107


WWW
« Reply #1 on: July 23, 2006, 05:44:06 am »

There's a discussion of an entire plug-in system here in which I brought up Squirrel as an option, but nothing has been finalized, yet.
Logged
Arantor
Site Administrator
Administrator
Master Jeweller
*****
Posts: 618



« Reply #2 on: July 23, 2006, 10:18:15 am »

A scripting engine is probably one of the biggest features of EE, so it will definitely be included, but the exact form has yet to be decided.

On the table so far are: Lua, AppleScript, Tcl, Squirrel and the ever-present option of building our own from scratch. Everyone seems to be a bit on the fence about this - me included since I'm not enough of a C++ whiz to see about linking, implementation, testing etc.

What do people want to build extensions with?
Logged

"Cleverly disguised as a responsible adult!"
Wahooney
Miner
**
Posts: 25


« Reply #3 on: July 23, 2006, 10:34:19 am »

Well Lua and Squirrel are apparently very similar in the background the main difference between them is that Squirrel is more C-style and Lua is more 'verbal'. Personally I like C-style, but that's just me.
Logged
awmyhr
Senior Miner
***
Posts: 95

Maintainer of Obscure and Unused Ports


WWW
« Reply #4 on: July 23, 2006, 03:47:33 pm »

I'd like to through REXX into the ring (see this thread: http://forum.emeraldeditor.com/index.php?topic=160.0 )
Logged

-->>  This Space 4 Rent  <<--
daemon
Developers
Gem Cutter
***
Posts: 107


WWW
« Reply #5 on: July 24, 2006, 02:03:16 am »

I like C-style, too, so I'm not so much a fan of Lua, Tcl, and REXX.

Regardless of that, here's what I've come up with from reading the documentation so far in terms of implementation:

Lua: shouldn't be used because has no concept of an "object"
Squirrel: seems like a hassle to imbed due to its "stack" mechanism for sending things to the VM
REXX: After looking through the documentation for half an hour, I'm still at a loss as to how to even begin imbedding it; granted, it's 103F so it's a little hard to concentrate
Tcl: should work with SWIG, which is an added build step to fiddle with
AppleScript: out because it's Mac-only
AngelCode: looks like it would integrate nicely, but you have to register each symbol you want to declare, which could become a hassle depending on the size of our API
Logged
awmyhr
Senior Miner
***
Posts: 95

Maintainer of Obscure and Unused Ports


WWW
« Reply #6 on: July 24, 2006, 03:31:19 am »

Looks like Regina Rexx http://regina-rexx.sourceforge.net/index.html is specifically designed to be imbeddable (as well as being available for just about any platform we'd want to use), while OpenObject Rexx http://www.oorexx.org has the objects.  Chapter 8 of the Regina manual describes interfacing in detail, while Appendix A of OOREXX specifically states that calling it from an application program is via shared library.

As this type of stuff really tests the limit of my current knowledge, that's really the best I can offer up at the moment...
Logged

-->>  This Space 4 Rent  <<--
daemon
Developers
Gem Cutter
***
Posts: 107


WWW
« Reply #7 on: July 24, 2006, 09:18:56 am »

Well, after even more extensive reading, I think that SWIG and then imbedding Python or Tcl (I'd prefer Python because I think Tcl is ugly Cheesy) or some other SWIG-compatible language would work the best as it generates the native symbols for relatively well-known languages. Plus, there's a few examples I found that use SWIG, C++, and imbedded Python that we can look at for guidance.

Looks like Regina Rexx http://regina-rexx.sourceforge.net/index.html is specifically designed to be imbeddable (as well as being available for just about any platform we'd want to use), while OpenObject Rexx http://www.oorexx.org has the objects.  Chapter 8 of the Regina manual describes interfacing in detail, while Appendix A of OOREXX specifically states that calling it from an application program is via shared library.

As this type of stuff really tests the limit of my current knowledge, that's really the best I can offer up at the moment...

Interesting. Unfortunately, we need both objects and implantation capabilities. I'll take a further look tomorrow, but unless we can easily have both, I don't think it's worth the effort.
Logged
moosegoose
Prospector
*
Posts: 3


« Reply #8 on: January 30, 2008, 07:45:34 pm »

Perhaps instead of macros there could be scripting (macros could possibly even be broken into script), something like Squirrel could be cool, but it would need some powerful string handling functions and perhaps eventually the ability to create dialogs for scripted plugins.  Shocked

Macro language would be better than one (or dozen of) programming/scripting languages.
Extension language should definitely support editor at work, not common programming tasks.
What ever , it should be simple with its core, and have potential for code reuse.
Logged
Pages: [1]
  Print  
 
Jump to:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.19 | SMF © 2013, Simple Machines Valid XHTML 1.0! Valid CSS!
Page created in 0.104 seconds with 19 queries.