Jump to content


Photo

TMS Scripter


  • Please log in to reply
10 replies to this topic

#1 herculanojs

herculanojs

    Advanced Member

  • uniGUI Subscriber
  • PipPipPipPip
  • 300 posts
  • LocationCuiabá-Brasil

Posted 13 September 2017 - 07:08 PM

Is anyone successfully using TMS Scripter with Unigui?
I have approximately 80% of codes working properly, and some things still have problems.
 
Conform a previous post, it would be very interesting if we got a satisfactory interaction with TMS Scripter or some other pascal code interpreter, so we could have a more dynamic application possible.
 
Good the problems that I face:
a) In form creation, if it contains the property freeonclose as true, I get exception when closing the form: "There is no Default JavaScript Object "
B) In the clientEvents assignment: the added codes are not executed
 
 
Someone would know or could tell me some solution to these cases, or know some pascal code interpreter that works perfectly with unigui.

Attached Files


  • 0

#2 SBokhari

SBokhari

    Member

  • Members
  • PipPip
  • 16 posts

Posted 13 September 2017 - 10:55 PM

Hello Herculanojs,

 

Take a look at http://paxcompiler.com/. It is actively in development. I think it is free but I haven't read their licensing module.

If it's licensing model fits and works with UniGUI, then it should be in UniGUI by default like UniSynaxEditor. 

 

One of my friends has used it in his project and praised it.

 

 

According to their website:

 

About paxCompiler

paxCompiler is an embeddable cross-platform compiler of the Object Pascal, Basic and JavaScript programming languages. The key features of the paxCompiler are:

  • The compiler generates machine code for Intel compatible processors (IA-32/64 architecture) for platforms: Win32/Win64, Mac OS, iOS Simulator.
  • The second script runner is a cross-platform interpreter based on intermediate code. Supported platforms are Win32/Win64, Linux, Android, Mac OS, iOS Simulator, iOS Device.
  • The compiler is written in Delphi and it is compatible with Free Pascal/Lazarus 32/64 bit.
  • It is possible to use the compiler as a scripting engine, so you can customize and extend the application without having to recompile it.
  • The compiler supports Object Pascal language based on the Delphi 7 standard and extends it with generic types, operator overloading, anonymous functions and closures, lambda-expressions. Syntax of Basic language is similar to VB.NET. JavaScript implementation is based on ECMA-262 standard.
  • Cross-language programming support. You can use Pascal units in Basic and JavaScript programs and vice versa.
  • COM support.
  • paxCompiler components allow you to implement debugger and code explorer.
  • Script-defined types support run-time information (RTTI).
  • You can bind instances of script-defined classes with dfm files.
  • You can import host-defined types with paxCompiler importer. Automatic import of host-defined types is available for Delphi XE2-XE7.
  • You can create stand alone executable files and dlls.
  • Support of compiled units and run-time packages.
  • paxCompiler engine is thread safe.
  • The nearest milestones on road map of the compiler development include: C/C++ compiler and native code generator for ARM processors

 

Regards


  • 0
Project Manager at SyedTech.
Love Delphi and now UniGUI too.
 
Found of fishing and research in software development.
Can't stop myself to listen to favorite all-times hit music.

#3 wxb_km

wxb_km

    Active Member

  • Members
  • PipPipPip
  • 99 posts

Posted 14 September 2017 - 01:02 AM

hi,intersting!

you can try FastScript in Unigui. FastScript has small footprints and is simple to use,by using it you can create unicomponents(like uniform,...) in script.


  • 0

#4 herculanojs

herculanojs

    Advanced Member

  • uniGUI Subscriber
  • PipPipPipPip
  • 300 posts
  • LocationCuiabá-Brasil

Posted 14 September 2017 - 02:19 AM

I'll take a look at these engines.


  • 0

#5 itognet

itognet

    Active Member

  • Members
  • PipPipPip
  • 57 posts

Posted 26 September 2017 - 04:33 PM

bump. have you any results of trying the pax compiler ?


  • 0

#6 herculanojs

herculanojs

    Advanced Member

  • uniGUI Subscriber
  • PipPipPipPip
  • 300 posts
  • LocationCuiabá-Brasil

Posted 26 September 2017 - 04:59 PM

Unfortunately I did not get any satisfactory tests.
For some reason, I still could not concentrate on that. Even following some examples of pax, nothing seems to happen.
I have not tested it yet in the desktop environment, to check if it is something related to the web environment.

  • 0

#7 itognet

itognet

    Active Member

  • Members
  • PipPipPip
  • 57 posts

Posted 26 September 2017 - 05:50 PM

Here you go  :)

 

Add PaxCompiler, PaxPascalLanguage and PaxInterpreter to UniForm.

Add UniButton16 to UniForm

Add UniMemo2 to UniForm

 

Contents of UniMemo2:

begin
  UniButton16.Caption := 'Greets to Farshad';
end.
 

 

procedure TMainForm.UniButton16Click(Sender: TObject);
var
  I, H_TButton: Integer;
begin
  PaxCompiler1.Reset;
  PaxCompiler1.RegisterLanguage(PaxPascalLanguage1);
 
  H_TButton := PaxCompiler1.RegisterClassType(0, TUniButton);
  PaxCompiler1.RegisterVariable(0, 'UniButton16', H_TButton, @UniButton16);
 
  PaxCompiler1.AddModule('1', PaxPascalLanguage1.LanguageName);
  PaxCompiler1.AddCode('1', UniMemo2.Lines.Text);
 
 
  if PaxCompiler1.Compile(PaxInterpreter1) then
    PaxInterpreter1.Run
  else
    for I:=0 to PaxCompiler1.ErrorCount - 1 do
      ShowMessage(PaxCompiler1.ErrorMessage[I]);
end;

  • 0

#8 herculanojs

herculanojs

    Advanced Member

  • uniGUI Subscriber
  • PipPipPipPip
  • 300 posts
  • LocationCuiabá-Brasil

Posted 26 September 2017 - 05:54 PM

Okay, I'll soon be testing.
thank you

  • 0

#9 pedrisco

pedrisco

    Member

  • Members
  • PipPip
  • 13 posts

Posted 27 September 2017 - 01:24 AM

Hi

What about RemObjects Pascal Script ?, its license is very permissive, i have downloaded it many times but i don't have the time to test it,  i've tried some RemObjects products and they usually work fine.


  • 0

#10 herculanojs

herculanojs

    Advanced Member

  • uniGUI Subscriber
  • PipPipPipPip
  • 300 posts
  • LocationCuiabá-Brasil

Posted 25 October 2017 - 03:22 AM



 

Here you go  :)

 

Add PaxCompiler, PaxPascalLanguage and PaxInterpreter to UniForm.

Add UniButton16 to UniForm

Add UniMemo2 to UniForm

 

Contents of UniMemo2:

begin
  UniButton16.Caption := 'Greets to Farshad';
end.
 

 

procedure TMainForm.UniButton16Click(Sender: TObject);
var
  I, H_TButton: Integer;
begin
  PaxCompiler1.Reset;
  PaxCompiler1.RegisterLanguage(PaxPascalLanguage1);
 
  H_TButton := PaxCompiler1.RegisterClassType(0, TUniButton);
  PaxCompiler1.RegisterVariable(0, 'UniButton16', H_TButton, @UniButton16);
 
  PaxCompiler1.AddModule('1', PaxPascalLanguage1.LanguageName);
  PaxCompiler1.AddCode('1', UniMemo2.Lines.Text);
 
 
  if PaxCompiler1.Compile(PaxInterpreter1) then
    PaxInterpreter1.Run
  else
    for I:=0 to PaxCompiler1.ErrorCount - 1 do
      ShowMessage(PaxCompiler1.ErrorMessage[I]);
end;

 

Would anyone have an idea how to create a form using paxcompiler


  • 0

#11 Le Meur Guillaume

Le Meur Guillaume

    Newbie

  • Members
  • Pip
  • 4 posts

Posted 25 October 2017 - 07:41 AM

To my point of view :

 

- FastScript is very powerfull, easy to implement and to use. (Debug etc ...)

And it comes with FastReport ...

 

- PaxCompiler : I've never succed with it

 

- TMS Scripter : The only working under Android.

 

Using script with uniGui : the main problem is when you want a "ModalDialog" during your script, to allow user to answer question...

That's why we build something like "WorkFlow" to reproduce this step...


  • 0




0 user(s) are reading this topic

0 members, 0 guests, 0 anonymous users