I've been continuing to revise and expand the Wikipedia article that I started on BASIC interpreters. One of the criticisms was that it was too focused on the microcomputer era (which interested me the most). I've expanded it but realize that the section on coding focuses on machine- and assembly-language programming (my favorite is the Tiny BASIC Extended team that programmed in octal!). Anyway, I haven't had any luck identifying early BASIC interpreters that were coded in higher-level languages (presumably C). Do you know of any interpreters in the 1970s or 1980s that were coded above assembly?
https://github.com/pkimpel/retro-b5500/blob/master/source/XBASIC/XBASIC.alg_m is a BASIC interpreter for the B5500, written in ALGOL, and dated 1975.
This also mentions Burroughs's own BASIC, but a cursory search doesn't turn up a manual etc. so I can't ascribe a date to it. However ALL Burroughs system software was either written in ALGOL (this includes compilers etc.) or in ESPOL (an ALGOL derivative with inline machine code etc.), with the exception of the initial boot card and test programs which were strictly for internal use.
(Later) The system software tapes have the source of Burroughs's own BASIC compiler, Mark XII dated 1971.
Gordon Eubanks' BASIC-E for CP/M was written in PL/M around 1977. While PL/M is a fairly low-level systems programming language almost entirely targeting Intel processors, it's still higher level than directly targeting a specific processor in assembly language.
BASIC-E compiles to an intermediate p-code, which is then interpreted by a separate runtime. So it's still an interpreter, if not an interactive one.
BASIC for the MAI Basic Four minicomputer series was programmed in a version of TREE-META - a language for writing compilers in. I hesitate to call it a "high level language". TREE-META was more of a notation - very similar to BNF - with callouts to action routines. But it was not assembly language in any way. It was in fact an "attributed grammar" notation that happened to be executable.
(BTW, regardless of what the wikipedia article linked above implies, MAI's Basic Four computers were on the market by the mid 70s. I worked for them in '79-'81 and they were already very established in multiple vertical markets - car dealership parts&service, small doctor/dentist offices, to name two.)
Now I think of it: The TREE-META part was the lexer+parser+"byte" code generator. The "byte" code interpreter itself - not many instructions and those were high level as they handled BASIC string operations (e.g., concatenation) as single byte codes - was written in microcode. ("byte" code is in quotes because I'm not actually sure it was a one-byte-per-instruction coding scheme - I don't remember how it was encoded. But it was pretty simple! And you could recover the BASIC language source statements from the instructions.) Also in microcode was all of the memory management for the variables - which of course in BASIC means strings and arrays of numbers or strings as well as integers and floating point - and for the compiled byte code as well. (So whether BASIC Four BASIC answers the OP's question is up to him.)
The BASIC interpreter for the TI 99/4A computer is written in an intermediate language called GPL, which in turn runs natively on the TMS9900 microprocessor.