While refactoring a bit the way some “special” functions were handled in DWScript, I came about a case where the compiler started accepting strings as Math functions parameters.
While this comes naturally as an “interesting” side-effects of automatic typecasts, it left a feeling of “wrongness”, accepting literal code like Abs(“foo”) and then failing at run-time is asking for trouble.
While I am not convinced GDPR will not turn into a perfect showcase for “the road to hell is paved with good intentions”, this is also a good opportunity to update BeginEnd.net to use the 64bit version of DWScript and add a few missing features.
Just a quick notice that the DWScript source code has begun a transition to Delphi 10.2.3 up from Delphi XE.
The goal is to target Win32 and Win64 compilers, mobile platforms and Delphi Linux are currently not in the scope.
Find beneath this paragraph a spring mishmash of recent happenings from the DWScript repository!
Overview Dialog, Lambdas and Templates.
A belated Happy New Year and Best Wishes for 2017!
This site and news have been neglected for much of 2016, this year’s resolution will be to try and revive it a bit.
In particular announcements and articles have fallen way behind the code as far as DWScript is concerned. So I will start the year by attempting to rectify that.
DWScript now has support for the BigInteger type, which supports numbers with as many decimals as the memory allows.
This support comes in two flavors, either through a MPIR dll (a GMP fork) or through Rudy Velthui’s BigIntegers unit.
It occurred to me that SHA-3 being a cryptographic hash, it is one of those peculiar bits of code that are fully self-testing. Any bug in a cryptographic hash will quickly cascade to a different result, no matter the bug or the input.
This means the ad-hoc-compiler-monkey can be unleashed “safely”, and can be allowed to try “improper changes.”
A new kernel for SHA-3 (Keccak) cryptographic hashing has been committed to the DWScript repository.
It is almost 3 times faster than the Pascal version, makes use of MMX asm, and involved an “ad hoc compiler”.
I have been using the feeds aggregator BeginEnd.net as more than just a news aggregator, it is also a Canary: once a new version of DWScript passes tests, it goes live there!
Latest Canary feature is for the new FastMM4 multi-threading improvements by Primož Gabrijelčič, which can be found under the Locking Improvements branch.
Non-English Blogs have been added to BeginEnd.net, not many just yet: three in Italian, one French and one Korean!
The BeginEnd.net website itself stays in English, and the posts titles & descriptions are going to be automatically-translated in English (currently through Microsoft Translator service).