Quote: "Yet if I use SET TEXT TO/FONT/SIZE and then run a print command, it will use the given font attributes."
Yeah it's been that way for a while now.
Quote: "I've also noticed that you do not have to assign a variable any value if you use the AS keyword, but otherwise you must or you get an error."
Generally we use AS STRING when we want to work with UDTs or when we don't want to use the $ symbol (which tells the compiler the variable is a string). Using the $ symbol then saying AS STRING is kinda redundant. B$ doesn't show anything because it doesn't have any value... if you make it B$="" then it'll add the carriage return so it'll show a blank line. D$ shows an error because it doesn't know what you want to do with it... do you want to define it something, or do you want to print it, or do you want to make it equal something else. Even Basic would freak out over that.
a$ = "Hi"
b$ = ""
c$ = "Bye"
print a$
print b$
print c$
print d$
wait key