Time for DWScript v2.3!

Or in other words, Delphi Web Script 2.2 has been branched!

“Rich. Small. Fast. Reliable. Choose any Four”

With v2.2, DWScript is now aiming for that motto*, and this new release represents a major step forward from 2.1 in terms of language features and robustness.

DWScript 2.2.0 (348 kB)

Here is a quick summary of additions to the language:

  • build systems and units
  • dynamic arrays
  • records with methods
  • universal delegates/functions pointers
  • operator overloading
  • class visibility scopes
  • contracts programming
  • class constants
  • “implies” operator
  • extensions to “in” / ” not in” operators
  • “new” keyword for object instantiation
  • $include_once
  • static classes
  • direct method implementation (inline in class body)
  • constant records, constant arrays
  • improved compiler errors, warnings and hints
  • stack traces in exceptions
  • misc. new language improvements and RTL functions

and there are new support tools:

  • JavaScript code generation
  • SynEdit highlighter for DWS
  • debugger component
  • profiler component
  • RTTI exposure classes
  • much improved unit tests coverage up to 90% overall, 93% to 100% for core units

as well as dozens of samples, which can be found at Rosetta Code or in the unit tests. Feel free to show your support DWScript by clicking on the “donate” button to the right 😉

Many things are already cooking up for 2.3, some of these are already present in the SVN…

*: yes “aiming”, and yes, it’s inspired from SQLite, we’re not there yet, but we may as well aim high!

4 thoughts on “Time for DWScript v2.3!

  1. Thanks for this update and your efforts.

    We are currently upgrading a desktop software. In this I would like to add scripting to it. I would like to know if it is possible to use DWS with some modifications in desktop app?

    Thanks,

    Yogi Yang

  2. @Yogi Yang
    Most everything should have a unit test, but there aren’t many elaborated demos at the moment. Though it would depend on what you seek by desktop apps, in our company, that’s mostly to perform custom actions and data manipulations, compile custom reports, perform custom data inputs, etc.
    For old DWSII there were same usage cases where DWS was used for mesh manipulations, AI, scenario scripting or template generation. I don’t know which are still “live” though, but technically speaking, there is nothing truly web-specific in DWS.

Comments are closed.