Why can't variable names start with numbers

Almost all programming languages I have seen so far don't allow me to start variable names with numbers. So I search it up, and found on StackOverflow that the reason is quite simple:

  1. string of digits would be a valid identifier

    1
    int 1 = 2;

  2. if you allow the format of digits + alpha, then the following would still cause the problem:

    1
    2
    int 1f = 2;
    float a = 1f; // a is 1.0 or 2.0?

Reference