For On/OFF control of digital I/O you can't beat the ladder logic. The ladder portion of the program is very compact, very fast compared to doing the same thing in BASIC. This is a reason why ladder logic programming is still widely used today in automation (some survey says greater than 70% !) regardless of all the fancy acronyms of programming languages available today for programming high power PCs or web site.
However, ladder logic is very cumbersome for handling data processing that involve more than bitwise logic. A high level language like BASIC can handle these much more easily. That's why we invented the ladder+BASIC. In fact we do not even provide those powerful TBASIC commands in ladder logic equivalent (yes, it can be done as can be seen from those traditional ladder logic PLCs that attempts to handle everything in ladder logic, such as adding two numbers together using ladder logic). This is because we don't think it make sense to use ladder logic say to try to receive an ASCII string from a bar code scanner and extract out the the first two and last two digital, add them up and then convert and format them into a string and send out to a serial printer or dial a modem. Whereas all these jobs can be easily handled by TBASIC custom function triggered by a ladder logic condition.