Hehe, actually, there is a very cool trick that you can do that involves exiting While loops. This allows you to use subroutines from inside your program instead of needing separate subprograms. It works like this:
Goto 0 ;skip the subroutines. Don't read what Label 1 does yet, otherwise it will get confusing. Just go to Lbl 0
Lbl 1 ;First subroutine
2 ;See below before
1 ;Modify Ans
While Ans ;loop until Ans is 0
If Ans=1 ;We intialised with 1 for this very purpose
Goto 1 ;goto Lbl 1. Note that Lbl 1 returns Ans as 2, then it hits End. When it hits End, it does not continue to the next line!! (the line that says 0, right below this). Instead, it starts from the beginning of the While loop. Since Ans is now 2, Goto 1 won't happen again.
0 ;once the code makes it here, Ans is 0, so the While loop will exit.
Goto 0 ;do it some more!
To answer your question, your code If A:Goto A will goto the label, hit the End, and go back to the start of the While loop. It won't eat memory, but it will be in an infinite loop.
I know that this is one of the more complicated BASIC techniques, so I doubt I explained it clearly, but I hope it answers your question!