Gaining Visual Basic OLE super-powers
Visual Basic in its various incarnations and off-springs has super-powers when it comes to OLE Automation, aka late-bound COM through IDispatch.
Where do they come from?
Visual Basic in its various incarnations and off-springs has super-powers when it comes to OLE Automation, aka late-bound COM through IDispatch.
Where do they come from?
For a few weeks now, an experimental JIT compiler has been available in the DWScript SVN for 32bits code. A more detailed article into the hows and whats and WTFs will come later.
Consider this article as an extended teaser, and a sort of call for test cases, benchmarks and eyeballs on the source code.
(more…)
Answering the call for showcases, Steffen Binas prepared a very nice set of screenshots for AquaSoft‘s Slide Show impressive product, which went far beyond the minimal requirement, so I’m posting a full-blown article about it. Following is the presentation of their software and how DWScript is used inside it.
When you need a powerful showcase I’d bet AquaSoft SlideShow is the one: http://www.aquasoft.de/diashow
Despite the simple name of the application it’s very powerful, just have look at the trailer video created completely with it.
(more…)
DWScript COM Connector has just received a spring cleanup, as it had grown a bit mouldy over the last years. The COM Connector optionally gives scripts direct access to ActiveX and COM objects.
As part of the cleanup, it now support IEnumVARIANT and ComVariantArray can now be enumerated as well with “for in“.
This is a belated followup to the L-System Fiddle series from last year (more like a forgotten article), which ended with a Pascal-based HTML5 app being used to generate fractals and publish them to imgur.
Object Pascal does allow binding a property to a field for direct read/writer, but we all have seen properties that required a slightly more complex getter or setter, and that usually meant a method for both. DWScript (svn trunk) & Smart Pascal (1.1) now support property expressions and statements, so the syntax is extended to allow:
property Name : Type read (expression) write (expression|statement)
Under the hood, the compiler will generate an unnamed getter or setter method when appropriate.
(more…)
DWScript now has database support classes built-in, these are based on a thin, interface-based layer, and can be used Delphi-side as well to get automatic memory management for simple DB access.
It currently supports mORMot SynDB and Universal InterBase, meaning it gets high performance native connectivity to SQLite, FireBird, Oracle, ODBC and OleDB (MySQL, MS SQLServer, MS Jet, AS400…).
“if” expressions are now supported in DWScript SVN, those were introduced to Pascal by Oxygene a couple years back, and are Pascal’s verbose version of the C ternary operator (?:).