SWIG: Simple Wrapper Interface Generator

All discussions of compiling from source should go here.
Post Reply
xAction
Posts: 285
Joined: Thu Sep 16, 2021 1:40 pm
Contact:

SWIG: Simple Wrapper Interface Generator

Post by xAction »

SWIG is a software development tool that connects programs written in C and C++ with a variety of high-level programming languages.

SWIG is used with different types of target languages including common scripting languages such as Javascript, Perl, PHP, Python, Tcl and Ruby. The list of supported languages also includes non-scripting languages such as C#, D, Go language, Java including Android, Lua, OCaml, Octave, Scilab and R. Also several interpreted and compiled Scheme implementations (Guile, MzScheme/Racket) are supported.

SWIG is most commonly used to create high-level interpreted or compiled programming environments, user interfaces, and as a tool for testing and prototyping C/C++ software. SWIG is typically used to parse C/C++ interfaces and generate the 'glue code' required for the above target languages to call into the C/C++ code. SWIG can also export its parse tree in the form of XML. SWIG is free software and the code that SWIG generates is compatible with both commercial and non-commercial projects
We can completely bypass builder? We could embed Xtalk in another software?
User avatar
OpenXTalkPaul
Posts: 2381
Joined: Sat Sep 11, 2021 4:19 pm
Contact:

Re: SWIG: Simple Wrapper Interface Generator

Post by OpenXTalkPaul »

xAction wrote: Tue Nov 16, 2021 10:36 am
SWIG is a software development tool that connects programs written in C and C++ with a variety of high-level programming languages.

SWIG is used with different types of target languages including common scripting languages such as Javascript, Perl, PHP, Python, Tcl and Ruby. The list of supported languages also includes non-scripting languages such as C#, D, Go language, Java including Android, Lua, OCaml, Octave, Scilab and R. Also several interpreted and compiled Scheme implementations (Guile, MzScheme/Racket) are supported.

SWIG is most commonly used to create high-level interpreted or compiled programming environments, user interfaces, and as a tool for testing and prototyping C/C++ software. SWIG is typically used to parse C/C++ interfaces and generate the 'glue code' required for the above target languages to call into the C/C++ code. SWIG can also export its parse tree in the form of XML. SWIG is free software and the code that SWIG generates is compatible with both commercial and non-commercial projects
We can completely bypass builder? We could embed Xtalk in another software?
That is interesting.

Builder itself was generated by a tool that can be used to build programming language compilers.
I posted about it somewhere on this forum.

As far as 'embed Xtalk', can't the CLI already be sort of "embedded" ? I'm guessing you mean making it into a dynamic library (like libOXT.dll)? There's several other small xTalks that have been developed by a few different people: OpenXION 1.x was built with JAVA, and there's ULI's StackSmith's underlying xTalk language interpreter called 'Hammer'. Those might be more suited towards an idea like that, I don't know.
xAction
Posts: 285
Joined: Thu Sep 16, 2021 1:40 pm
Contact:

Re: SWIG: Simple Wrapper Interface Generator

Post by xAction »

I'm talking about it being more like Lua, Python. If we can go over to LibreOffice (for instance) and embed xTalk, offer it up as an extension type thing, people who are put off by Python, as any sane peson would be, will be like "HOLY SMOKES!"

If we can make a library available for Unity , Godot, etc the way people make Lua and Python available we could at least place our footprint there.

It would be great to get other developers to use the lanaguge to empower the users of their software.
Slide it across the table to them as a GUI and scripting solution, that makes extending their app a snap, with an eternal IDE to make developing more complex features a breeze.

At least that's always been the dream which was always been held away by the iron fist of the corporation.

The language, as is, might be too heavy with features that make the IDE possible. Maybe we can modularize like Lua and Python are modular.

StackSmith development appears to have died three years ago.
User avatar
OpenXTalkPaul
Posts: 2381
Joined: Sat Sep 11, 2021 4:19 pm
Contact:

Re: SWIG: Simple Wrapper Interface Generator

Post by OpenXTalkPaul »

xAction wrote: Wed Nov 17, 2021 3:55 am I'm talking about it being more like Lua, Python. If we can go over to LibreOffice (for instance) and embed xTalk, offer it up as an extension type thing, people who are put off by Python, as any sane peson would be, will be like "HOLY SMOKES!"

If we can make a library available for Unity , Godot, etc the way people make Lua and Python available we could at least place our footprint there.
OK I gotcha. Basically the just the GUI-less / text processing features of the engine? Probably a good starting point for that would be the CLI LCC Server engine, make that into a libOXT.dll that can be wrapping into plugins for various software (such as LibreOffice)
xAction wrote: Wed Nov 17, 2021 3:55 am StackSmith development appears to have died three years ago.
Yeah, I don't know about "Died" but that and OpenXION are both glacial paced development.
They're both xTalk's by brilliant coders though, and they're both open source.
Post Reply

Who is online

Users browsing this forum: No registered users and 0 guests