It never ceases to make me smile that any discussion about BASIC invariably brings BBC BASIC fans out of the woodwork, and I'll add myself to that list.
To be honest, BBC BASIC spoilt me. I was familiar with the concepts of using procedures and functions, but never progressed to the built in assembler. The thing is that BBC BASIC and the sheer power (for the time) of the MOS (operating system) was so far advanced of the other 8bit machines available at the time. I then moved to the 32bit Acorn Archimedes range which also features BBC BASIC. So, when I got my first PC it was a complete shock - there was QBASIC, but it didn't work the same way and seemed far more limited. It didn't integrate so elegantly with the operating system.
For me, BBC BASIC and the MOS is a truly amazing piece of work and went with a truly revolutionary piece of the hardware. As an example, the BBC B hardware (the most common computer to run BBC BASIC in the early 80s) has a built in floppy disk drive port, parallel and serial, a programmable ADC port, a digital "User" port for controlling mice etc, a 1Mhz(!) bus for controlling other devices such as sound synthesisers, the ability to add an Econet module to create a local network and the "Tube", an interface/protocol for interfacing with a second processor (the first ARM processor was designed using the Tube interface). How many other 8bit machines in the early 80s could do any of that? The operating system also supported paged RAM/ROM and a very sophisticated display driver (called "VDU") where screen co-ordinates mapped to a virtual screen resolution, effectively allowing your routines to be resolution independent.
If you have an interest in old computers, or elegant design, but have never played with a BBC or even a BBC Emulator, you owe it to yourself to track one down.