Reconsideration request?
Posted: 11 Nov 2017, 10:57
@Lexikos, I really appreciate all your work over the years on AHK. For macros and personal productivity use cases, I've done more coding in AHK than any other language... leaving batch scripts, VBA, ad hoc python scripts, etc. by the wayside years ago. However, earlier this year, when it was decided to eliminate command syntax (or more accurately, the unquoted string with %deref% embedded), as well as moving a lot more of the quick-and-dirty GUI commands to a more structured syntax, I slowly found myself not using the language as much.
I realize I'm a sample size of one, but I have two primary use cases for AHK: (1) quick batch file replacement or text manipulation scripts (a lot of them, with a lot of literals) and (2) a more robust 5000-line personal macro script that runs at all times. I typically used unquoted command syntax with %var% derefs and quick-and-dirty gui creation a lot for the former case, and tried to use the more structured language features for the latter. In fact, I changed all of the personal macro script code to v2 a couple of years ago, because of single-quote strings, same-line ifs (now eliminated), derefs in string literals (now eliminated), and a few other features, others of which are now gone or different -- as is to be expected with an alpha. I realize too that a lot of what's feasible has been constrained by the fact that you inherited code that didn't come with a proper lexer/parser, etc.... and you've done a really amazing job adding a full object syntax and so much more... almost single-handedly making AHK nearly everything it is today.
I used to think AHK was unique because it had this cool dual existence -- part quick-and-dirty, but also part structured where you needed it to be. And you could share your function libraries between the two worlds. If everything moves toward exclusively structured, it seems to me that there are other more structured languages (particularly those with functional programming features and stronger library support) that I would move to. In fact, because I've already been using Kotlin a lot recently for Android work, I've since written a C-based keyboard hook that works with Kotlin to duplicate much of my AHK macro functionality.
TL;DR: Before I get too far down that path, I wanted to ask if there is any chance of reconsidering the unquoted string decision??? Or at least allowing for quick "string literal $interpolation or ${embedded + expressions} or what not" (like kotlin or maybe like python or ruby)? I think at one time you even used to allow "string %deref% in literals" but I think that's gone too. Like I said earlier, I very much respect your great work on AHK. That's part of why I wanted to ask the question before moving my code out of the language.
I definitely appreciate your time and consideration.
I realize I'm a sample size of one, but I have two primary use cases for AHK: (1) quick batch file replacement or text manipulation scripts (a lot of them, with a lot of literals) and (2) a more robust 5000-line personal macro script that runs at all times. I typically used unquoted command syntax with %var% derefs and quick-and-dirty gui creation a lot for the former case, and tried to use the more structured language features for the latter. In fact, I changed all of the personal macro script code to v2 a couple of years ago, because of single-quote strings, same-line ifs (now eliminated), derefs in string literals (now eliminated), and a few other features, others of which are now gone or different -- as is to be expected with an alpha. I realize too that a lot of what's feasible has been constrained by the fact that you inherited code that didn't come with a proper lexer/parser, etc.... and you've done a really amazing job adding a full object syntax and so much more... almost single-handedly making AHK nearly everything it is today.
I used to think AHK was unique because it had this cool dual existence -- part quick-and-dirty, but also part structured where you needed it to be. And you could share your function libraries between the two worlds. If everything moves toward exclusively structured, it seems to me that there are other more structured languages (particularly those with functional programming features and stronger library support) that I would move to. In fact, because I've already been using Kotlin a lot recently for Android work, I've since written a C-based keyboard hook that works with Kotlin to duplicate much of my AHK macro functionality.
TL;DR: Before I get too far down that path, I wanted to ask if there is any chance of reconsidering the unquoted string decision??? Or at least allowing for quick "string literal $interpolation or ${embedded + expressions} or what not" (like kotlin or maybe like python or ruby)? I think at one time you even used to allow "string %deref% in literals" but I think that's gone too. Like I said earlier, I very much respect your great work on AHK. That's part of why I wanted to ask the question before moving my code out of the language.
I definitely appreciate your time and consideration.