Originally, no translator was used to compile or assemble the first-generation language. The first-generation programming instructions were entered through the front panel switches of the computer system.
The main benefit of programming in a first-generation programming language is that code a user writes runs very fast and efficiently since it is directly executed by the CPU, but machine language is somewhat more difficult to learn than higher generational programming languages, and it is somewhat more difficult to edit if errors occur, or, for example, if instructions need to be added into memory at some location, then all the instructions after the insertion point need to be moved down to make room in memory to accomodate the new instructions. Doing so on a front panel with switches can be very difficult. Furthermore portability is significantly reduced - in order to transfer code to a different computer it needs to be completely rewritten since the machine language for one computer could be significantly different from another computer. Architectural considerations make portability difficult too. For example the amount of registers on one CPU architecture could be different to another.
See also: