love to see a youtube video that references a script that's linked in the comments and it's an obfuscated link to a one-click hoster.

THAT'S DEFINITELY STILL GONNA WORK IN FOUR YEARS

it does still work, but that's because it's only been 2 years.

also, wow, this is horrible.
the script is to generate random kanji/han characters and insert them into minecraft books.
but the video references there being two hotkeys to generate two distinct books, which seemed odd. so I thought I'd check.
it turns out by "random" they mean "pre-randomized and is hardcoded into the 45 kilobyte autohotkey scripot"
I mean, I get it. I don't want to write AutoHotKey scripts either. it's a horrible, horrible language.

BUT STILL
it's like PHP designed by someone who learned on Visual Basic for Applications
ANYWAY I decided to not just complain about it, and archived it:
https://t.co/IKxjNQMZMK
that's the script for this video:
https://t.co/GPvTp17RDR
naturally I would comment and add a link to it, but of course I can't post links in the comments.
anyway, autohotkey is great.
have you ever wanted to get a list of drives on a system?
That's simple!

DriveGet, drives, List
now you have a variable named "drives" which is a string containing a list like "ACDEFP"
that's how programming languages work, right?
assigning variables
small brain: a=1 (fortran, C, descendants of C)
big brain: a := 1 (ALGOL, Pascal)
cosmic brain: LET A=1 (early BASIC)
multiverse brain: a <- 1 (F#, OCaml)
brane cosmology bulk brain: there is no assignment, functions output to one of their arguments (AHK)
fun fact: AHK actually also uses = and :=

it just doesn't use them for functions.
it's got "=" which is called legacy... assignment? they don't actually call it assignment.
legacy variable storage, let's say.
the fun thing is that = only takes integers, unquoted strings, and other variables.
so:

a=1
b=FOOBAR
c=%b%
but if you do:
a=1+2

that's either an error, or you'll get a string containing "1+2".
I'm not sure which. I don't really want to find out
whereas if you do:
a := 1+2

a will be set to "3"
BTW these differences in = and := mean that if you convert that above example from = to :=, you get:

a=1
b="FOOBAR"
c=b
in computer science, we call this "consistency"
this is the fundamental problem with AutoHotKey as a language:
it started as a bad batch scripting language and got a little powerful with some visual basic ideas, and then it got "fixed" into being a more usable language, but THEY LEFT THE OLD SYNTAX VALID FOR COMPATIBILITY
it's like having a language that uses Go's syntax but you can always just drop down to
10 PRINT "HELLO WORLD"
20 GOTO 10
in the middle of a method
autohotkey is a language that could have been fixed, and they tried to fix it, but they tried to fix it by nailing the "fixed" version onto the side of the broken version
I guess it's fortunate then that microsoft is trying so hard to murder autohotkey.
once it stops working there won't be any more language evolution
maybe I should port autohotkey to an arduino keyboard+mouse.

or maybe I shouldn't torture tiny computers

More from foone

More from Culture

One of the authors of the Policy Exchange report on academic free speech thinks it is "ridiculous" to expect him to accurately portray an incident at Cardiff University in his study, both in the reporting and in a question put to a student sample.


Here is the incident Kaufmann incorporated into his study, as told by a Cardiff professor who was there. As you can see, the incident involved the university intervening to *uphold* free speech principles:


Here is the first mention of the Greer at Cardiff incident in Kaufmann's report. It refers to the "concrete case" of the "no-platforming of Germaine Greer". Any reasonable reader would assume that refers to an incident of no-platforming instead of its opposite.


Here is the next mention of Greer in the report. The text asks whether the University "should have overruled protestors" and "stepped in...and guaranteed Greer the right to speak". Again the strong implication is that this did not happen and Greer was "no platformed".


The authors could easily have added a footnote at this point explaining what actually happened in Cardiff. They did not.

You May Also Like