The Wiert Corner – irregular stream of stuff

Jeroen W. Pluimers on .NET, C#, Delphi, databases, and personal interests

  • My badges

  • Twitter Updates

  • My Flickr Stream

  • Pages

  • All categories

  • Enter your email address to subscribe to this blog and receive notifications of new posts by email.

    Join 1,860 other subscribers

Archive for the ‘Development’ Category

“Everybody should have an obsession with Lisp-like language at least once in their life” @KevlinHenney

Posted by jpluimers on 2025/08/27

The tweet [WaybackSave/Archive] Jakub Kočí on X: “”Everybody should have an obsession with Lisp-like language at least once in their life” @KevlinHenney I’m glad that I had one with Clojure.” mentioned a great talk:

[Wayback/Archive] The Past, Present & Future of Programming Languages • Kevlin Henney • GOTO 2024 – YouTube

The quote brought instant memories to my early computing days that I had almost forgotten: the muMATH (the muMATH-80 version on Apple II) computer algebra system which was based on muLISP (the German muLISP page has more detailed information), a LISP dialect.

In retrospect, I was way too young to really grasp LISP which was way harder than just using the muMATH wrapper. But it was also my first encounter to reasoning systems, or what we now collectively would call AI systems as back in the 70s there was a strong LISP connection to artificial intelligence . Do not confuse muMath with MuMath-Code however, that is a different LLM beast: [Wayback/Archive] GitHub – youweihao-tal/MuMath-Code

So hopefully I will have a chance to revisit LISP with a LISP-like language one day, maybe even using the discontinued muMATH-83 on MS-DOS (also named “Microsoft LISP“), maybe even the (also discontinued) Derive 6.1 for Windows which is also based on muLISP, or even Clojure itself.

Read the rest of this entry »

Posted in AI and ML; Artificial Intelligence & Machine Learning, Development, History, LISP, LLM, Power User, Retrocomputing, Software Development | Tagged: | Leave a Comment »

In case I ever want to import another SVN repository into GitHub (for instance form SourceForge)

Posted by jpluimers on 2025/08/27

The odd thing is that SourceForge has (sf.net) a GitHub project importer (for more than 10 years now!), but not vice versa. You can import a SVN repository in GitHub, but that’s far from importing a complete sf.net project.

More on the importer to import GitHub to SourceForge below, but first the other way around:

These steps worked to get xn-resource-editor.sf.net into github.com/jpluimers/XN-Resource-Editor-TWM (which I did because the GitHub web UI is so much better at browsing and searching commits and files than the SourceForge web UI):

Read the rest of this entry »

Posted in Development, DVCS - Distributed Version Control, GitHub, Software Development, Source Code Management, SourceForge, Subversion/SVN | Leave a Comment »

GitHub – rbwebdev/lemmings-page-404: My 404 page with a little game of Lemmings

Posted by jpluimers on 2025/08/26

Last week I wrote about Example how not to return a HTPP-500 result: Amazon DE – Tut uns Leid!.

Today I found https://archive.is/undefined which consistently returns a HTTP 404 in the HTTP result.

It reminded me of an old (well, what is old anyway <g>) post Best 404 page ever. back in the days (returning both 404 in the HTTP result and page content) I did not yet archive outgoing links (it took me a few more years to realise many URLs are ephemeral and have queued up a post on that for early next year),  and found out the site has changed since then. Time for archived and updated links, and a repository too as by now the source has been published on GitHub:

Read the rest of this entry »

Posted in Communications Development, Development, HTML, HTTP, Internet protocol suite, Software Development, Web Development | Leave a Comment »

List of Delphi language features and version in which they were introduced/deprecated – Stack Overflow

Posted by jpluimers on 2025/08/26

Especially with the documentation for all versions of Delphi 2010 through the second-last version of Delphi have been killed from the docwiki (see The Delphi documentation site docwiki.embarcadero.com has been down/up oscillating for 4 days is now down for almost a day.), I wish that Embarcadero would put effort into maintaining the [Wayback/Archive] List of Delphi language features and version in which they were introduced/deprecated – Stack Overflow

Currently, the only alternative is the conditional defines from [Wayback/Archive] jedi/jedi.inc at master · project-jedi/jedi and (which in turn is included by for instance [Wayback/Archive] jcl/jcl.inc at master · project-jedi/jcl and [Wayback/Archive] jvcl/jvcl.inc at master · project-jedi/jvcl, but that one does not provide links to existing documentation.

Thanks to all the maintainers on Stack Overflow that have tirelessly edited this answer over and over again to keep it up to date on current and past Delphi versions, see [Wayback/Archive] Revisions to List of Delphi language features and version in which they were introduced/deprecated – Stack Overflow.

Via [Wayback/Archive] Server Overflow.

–jeroen

Posted in Delphi, Development, Software Development | Leave a Comment »

Fix a “Automatic Repair couldn’t repair your PC” on an UEFI system: when Windows cannot be located

Posted by jpluimers on 2025/08/22

I got the below error when booting a Dell Optiplex 7060 Micro, a machine not just supporting supporting UEFI but preferring it, on which I had copied a backed-up disk image, then moved the hidden Recovery partition to the end of the physical disk (to make room to extend either the OS or DATA partitions).

Fixing it lead me to a trip that was on the boundary of software archaeology, so this blog post has a truckload of archived links to information that is still relevant, but for which the original links have long vanished due to link rot or (often worse) part of the historic information got lost because of migration to new tooling forgot to cover important additions (especially in comments).

One thing that I had to unlearn was MBR disk basics, for instance the fact that on GPT disks a partition can be active (they can only be on MBR disks, but despite UEFI supporting both MBT and GPT, GPT disks are way more common and required). The same holds for partitions having a boot flag: that too only applies to MBR disks. For the same reason, bootrec is only useful for MBR disks. More details towards the end of this blog post. CSM (Compatibility Support Module) booting is the UEFI way to simulate BIOS boot for operating systems that do no support UEFI.

Back to the error at hand:

Read the rest of this entry »

Posted in Development, History, link rot, Power User, Software Archeology, Software Development, Windows, Windows 10, Windows 11, Windows Server 2003, Windows Server 2008, Windows Vista, Windows XP, WWW - the World Wide Web of information | Tagged: | Leave a Comment »

Ioan Popovici @ MEM.Zone on X: “The Inno setup uninstall switches are the funniest thing ever. SILENT, /VERYSILENT I knew about this but didn’t think that the silent uninstall registry keys would be just SILENT. I’ve fixed that in the bulk uninstall tool but man microsoft should have forced”

Posted by jpluimers on 2025/08/21

For my link archive: [WaybackSave/Archive] Ioan Popovici @ MEM.Zone on X: “The Inno setup uninstall switches are the funniest thing ever. SILENT, /VERYSILENT I knew about this but didn’t think that the silent uninstall registry keys would be just SILENT. I’ve fixed that in the bulk uninstall tool but man microsoft should have forced”

Read the rest of this entry »

Posted in Development, Inno Setup ISS, InnoSetup, Installer-Development, Power User, Software Development, Windows, Windows Development | Leave a Comment »

Redux: Which Windows Resource Editor do you use?

Posted by jpluimers on 2025/08/21

A long time I wrote about Which Windows Resource Editor do you use? containing a poll to choose between XN Resource Editor, IcoFX, ResEdit and Resource Hacker.

In the meantime and betweentime more than 10 years have passed and there seems to be little maintenance in (especially the non-commercial part of) Windows Resource Editor land.

From the poll back then, I also learned about a (for me) new [Wayback/Archive] Resource Editor | MelanderBlog which is still maintained every now and then. The download is at [Wayback/Archive] Downloads | MelanderBlog (at the time of writing [Wayback] ResourceEditor20190421b.zip).

More on that and download/install locations of various resource editors below a new poll.

This new poll adds Resource Editor and allows you to make multiple choices (in case you use more than one tool):

Read the rest of this entry »

Posted in .NET, Delphi, Development, Software Development, Windows Development | Tagged: , , | Leave a Comment »

Jeroen Wiert Pluimers @wiert@mastodon.social on X: “@_ObomheseR Since JavaScript is in the group of curly based programming languages influenced by the B programming language, integer constants starting with zero are tried first in octal base. 017 octal is 15 decimal 018 octal is not possible, so becomes 18.”

Posted by jpluimers on 2025/08/20

With the constant influx of JavaScript programmers, it keeps worth repeating that you should always run JavaScript in strict mode via "use strict"; (like in the past Visual Basic 6 developers should use option strict and option explicit) to forget risky JavaScript syntax like implicit ocal constants (which were removed from the documentation in the 2009 ECMAScript 5 specification for JavaScript), and every codeline should have a test code covering it, especially for comparisons involving non-strict behaviour like the use of leading zeros.

As of the succeeding 2015 standard (ECMAScript 6), octal numbers in JavaScript start with 0o or 0O followed by a series of octal digits.

Oh, and the history of octal in computing of course has to do with 6-bit systems and also lead to 6-six bit character codes including BCD character encoding..

My tweet back earlier this year: [WaybackSave/Archive] Jeroen Wiert Pluimers @wiert@mastodon.social on X: “@_ObomheseR Since JavaScript is in the group of curly based programming languages influenced by the B programming language, integer constants starting with zero are tried first in octal base. 017 octal is 15 decimal 018 octal is not possible, so becomes 18.”

Inhteritence:

Read the rest of this entry »

Posted in B, BASIC, C, Development, JavaScript/ECMAScript, MarkDown, Retrocomputing, Scripting, Software Development, VB6, Visual BASIC | Leave a Comment »

When Delphi cannot output the .exe file because it is locked

Posted by jpluimers on 2025/08/20

Sometimes Delphi cannot output the .exe file because it is locked. In even rarer times, Delphi itself keeps the .exe file locked (this has done it for decades and I think this is caused by a bug in the debugger).

A long time ago, I answered how to figure out where the lock comes from. A decade later a comment was added (thanks [Wayback/Archive] Server Overflow) with a command-line tool you can use for that too (but sometimes returns less results). Both are in [Wayback/Archive] compilation – Delphi does not generate any exe file – Stack Overflow Read the rest of this entry »

Posted in Delphi, Development, Power User, Software Development, Windows, Windows 10, Windows 11, Windows 7, Windows 8, Windows 8.1, Windows Development | Leave a Comment »

The spring (a twig) components – How to improve the use of Delphi Frames – Stack Overflow

Posted by jpluimers on 2025/08/19

In [Wayback/Archive] components – How to improve the use of Delphi Frames – Stack Overflow (thanks [Wayback/Archive] Brian Frost for asking!) I referred to a blog post I wrote more than 15 years ago about registering Delphi frames as components in Delphi: Delphi – Frames as visual Components – don’t forget your Sprig!

It is still a technique few use, but it is very powerful as it resolves many design time issues that arise when using Delphi frames in a normal fashion especially:

Read the rest of this entry »

Posted in Delphi, Development, Software Development | Leave a Comment »