AltSoftSerial returns entire buffer

I'm seeing odd behavior when using AltSoftSerial, to my understanding the read command should only be returning a single byte. However when I use the read command it appears to be returning the entire buffer.

I'm using a very bare bones bit of code, Th

#include <AltSoftSerial.h>

AltSoftSerial mySerial;


void setup(){
    Serial.begin(9600);
    mySerial.begin(9600);
}

void loop(){
    if (mySerial.available()){
         Serial.write(mySerial.read());
}

The output in the terminal shown show a string of about 64 bytes with a unique time stamp each time. Is there something I don't understand?

That code will not compile. Missing a } to close loop().

The loop() function loops. After each serial read the program loops back the the available() function and as long as a byte is available it will be read.

A good tutorial on handling serial input is the serial input basics tutorial. That tutorial helped me a lot.