Author Topic: FR: SLL :)  (Read 659 times)

0 Members and 1 Guest are viewing this topic.

Brian Alvarez

  • Guest
FR: SLL :)
« on: February 11, 2021, 01:02:17 PM »

 I got to the point that most code i throw at PluriBASIC + Oxygen gets compiled saisfactorily. However, i have created several core features that have to be compiled every time i make a test compilation.

 I was condering if having pre-compiled libraries would speed up the process...

 There are parts that must be compiled every time, like some DDT statements whose datatype is determined during compilation, but many other things (functions that are always the same) would benefit from being pre-compiled, speedwise.

 Is this already possible? otherwise, would it be possible?

JRS

  • Guest
Re: FR: SLL :)
« Reply #1 on: February 11, 2021, 01:31:15 PM »
I'm assuming that is why Charles made O2 a DLL.

ScriptBasic when embedded runs as a DLL (shared object) as well.

Charles Pegge

  • Guest
Re: FR: SLL :)
« Reply #2 on: February 15, 2021, 02:27:45 AM »
Hi Brian,

I have no plans for SLLs There is no compiler-independent standard. How far can you get with precompiled DLL distributables?

Brian Alvarez

  • Guest
Re: FR: SLL :)
« Reply #3 on: February 16, 2021, 01:33:01 PM »
...How far can you get with precompiled DLL distributables?

 Far enough. SLL's are not required for other reason than compilatoin speed. Right now the stock functions (TRIM$, UCASE$, PARSE$, etc) get compiled together with the user's code during every compilation.

 PluriBASIC 6 can generate its own source code in 5.5 seconds, and it gets compiled by PowerBASIC in 3 seconds. Pretty fast IMO, considering PluriBASIC 5 takes 29 seconds to just generate the source code for PluriBASIC 6. However, Oxygen takes like 25 seconds to get to the macro error that is being discussed in the other thread, which is at like line 11000 of 90000 lines in the source code. I dont know how long will it take to fully compile, i suspect like 5 or 6 minutes?

 However, 25 seconds is something that may be improved using SLL's. Not very much though since the binaries are just a small part of the source code.