This code looks strongly typed. Is this just a conduit/adapter to push xBase like code to function in C#?
If you have to learn the conduit, why not learn C#?
On Fri, Apr 5, 2019 at 7:11 AM Johan Nel johan.nel@xsinet.co.za wrote:
Good day all,
As I promised, will keep you updated.
On foxite I also made the same announcement I posted here, regarding the X# Roadmap for 2019.
Tom Knauf, then responded with the following. I also include my reply. Hope it is of interest to some of hopefully all:
What I am mising is something like execscript(cCode). I can have any code including if then, variables, calls to own
functions,... in a char variable and it will be executed.
We built a complex script system to allow user their own workflow and
never found a good replascement in c#, windev,...
An own parser would be extremly much work to do. Any plans/ideas on that ?
Hi Tom,
No plans/ideas are needed. X# already contains xsScript. The following will already run:
*File:HelloWord.prgx // Note the x in the file name if you want it to run directly.
CLASS MyHelloWorldClass PROTECTED txtAS STRING
CONSTRUCTOR()&& The Init of VFP classes txt :="Hello World from Class" RETURN
PROPERTY SpeakAS STRING GET txt&& Access/Assign = PROPERTY GET/SET in X# END CLASS FUNCTION HelloWorld()AS STRING RETURN "Hello World from Function" PROCEDURE HelloWorldProc() System.Windows.Forms.Console.Writeline("Hello world from Procedure") RETURN
FUNCTION Start()AS VOID ?HelloWorld() HelloWorldProc() ?MyHelloWorldClass{}:Speak RETURN
*End of File:HelloWorld.prgx
In your program you just have to
obj := xsScript(cCode :=FileToStr("c:...\HelloWorld.prgx")) && Note obj will now hold an in memory compiled version of HelloWorld.prgx, && that you can happily pass anywhere in your application, && no "parsing" of the script needed anymore!!!! obj:Start()
You now speaking to the Clipper guy who already work the last 25 years exclusively on what you describe above, called in the Clipper/VO/Vulcan/X# world Data-driven applications. I have a slightly different approach, I store my scripts in a Relational Database and not in zillions of txt files.
I am busy writing a series on the concept of which the first 12 of [Insert end of series here] articles are already available in the downloads area of the X# webpage. https://www.xsharp.info/itm-downloads?folder=general%252FLessons
Would you be interested in a joint venture, where we take the best of both those worlds
Solution := ((XBase := VFP * Clipper fork) * (Knowledge := Tom * Johan) * (Environment := X# * .NET)) ? Solution:ToString()&& A 100% .NET solution that runs at 99% of the speed of a compiled Application.NET, but was created in 1% of the time it will require a developer to roll out in PRG files?
Looking forward to hear from you or anybody else using data-driven techniques,
Johan Nel George, South Africa Friends of XSharp http://xsharp.info http://xsharp.info/
[excessive quoting removed by server]