James George "Jim" Mitchell (born 25 April 1943) is a Canadian computer scientist. He has worked on programming language design and implementation (FORTRAN WATFOR, Mesa, Euclid, C++, Java), interactive programming systems, dynamic interpreting and compiling, document preparing systems, user interface design, distributed transactional file systems, and distributed, object-oriented operating systems. He has also worked on the design of hardware for computer graphics, high-level programming language execution, and audio input/output.