New realization re: documentation frustration
SquareFingersCreated:
I kinda is, you know. It was made with the intent of teaching kids how to program.educational gamewow
Except it was made with the intent of being a BASIC computer throwback/revival app. The intent of teaching people how to program is just a bonus. Nowhere in the official advertising does it say "learn programming!" Even in the official announcement video, Hakase gets nostalgic about the old BASIC way of programming and that he wants to bring it back.
TL;DR not an educational app
Lo, another one for the hall of shame! PROJECT() returns a string naming the active project, nowhere is it listed in the (English) documentation. They list PROJECT OUT PJ$ though.
If we ever wish to report this nonsense, just send them here. The documentation team, nay, the project managers should've never let it gotten this far.
Lo, another one for the hall of shame! PROJECT() returns a string naming the active project, nowhere is it listed in the (English) documentation. They list PROJECT OUT PJ$ though. If we ever wish to report this nonsense, just send them here. The documentation team, nay, the project managers should've never let it gotten this far.That one makes sense to me. Although its another undocumented feature that makes it alright. You can call most functions that return a single value as F() or F OUT R
That one makes sense. Although its another undocumented feature causing it. You can call most functions that return a single value as F() or F OUT RI just tried STR$ 5 OUT S$, and it definitely works. Why? This is such a bizarre feature,
I just tried STR$ 5 OUT S$, and it definitely works.NICE one! Not even the Japanese wiki has that one! EDIT: This works for user-defined functions too. You can define a function, and call it as a procedure with one OUT variable, and you can define a procedure with one OUT parameter and call it as a function.
What's the source of this image?TL;DR not an educational app
That's marketing. Programming is being pushed as "cool for kids," remember? So they're going to take that angle when they need to. Slacker's point is that the original idea was meant to be the opposite of a kid-friendly language, which is completely true. Then they realized that's a dumb thing to do when they can get rid of some of the worst features of classic BASIC. Is anyone that nostalgic for typing programs in by hand from magazines and hoping there aren't any printing errors? Introductory languages really push themselves as being so, while this is like "easy to use!" which I assume translates to "not machine code!"
That's marketing. Programming is being pushed as "cool for kids," remember? So they're going to take that angle when they need to. Slacker's point is that the original idea was meant to be the opposite of a kid-friendly language, which is completely true. Then they realized that's a dumb thing to do when they can get rid of some of the worst features of classic BASIC. Is anyone that nostalgic for typing programs in by hand from magazines and hoping there aren't any printing errors? Introductory languages really push themselves as being so, while this is like "easy to use!" which I assume translates to "not machine code!"You're exactly right. now can we stop derailing this thread that'd be great
I actually assumed all along that F() was short for F OUT, it just made sense in my head. One question that arises is: what happens when you use a function with MULTIPLE return values with the F() format? Edit: for example: VAR X = SPOFS(1) (after sprite 1 has been set and moved)It returned the Z value when I tested it. That probably means it returns the last given value.
Hehehe, I smell code exploit... This actually makes some sense when you keep in mind that you can ignore OUT return values, so this would be the same as SPOFS 1 OUT ,,X.I actually assumed all along that F() was short for F OUT, it just made sense in my head. One question that arises is: what happens when you use a function with MULTIPLE return values with the F() format? Edit: for example: VAR X = SPOFS(1) (after sprite 1 has been set and moved)It returned the Z value when I tested it. That probably means it returns the last given value.
Interesting. However, TOUCH OUT ,,X works, but X=TOUCH() doesn't. There's more to the story.