Supported Languages

Don't see your language? Let us know! [email protected]

Ada

Support: Understand supports Ada83, Ada95, Ada05 and Ada2012 code separately, or in combination.
Description: A strongly typed, high-level language designed for reliability and maintainability, often used in critical systems like aerospace and defense.

Assembly

Support: Understand supports Coldfire 68k, JIPSE MIL-STD-1750A, and IBM System 370.
Description: A low-level language that provides a symbolic representation of a computer’s machine code, used for system programming and hardware manipulation.

C/C++

Support: Understand analyzes K&R or ANSI C source code and most constructs of the C++ language. Understand works with any C compiler, and has been tested with most of the popular ones. Objective C, Objective C++, C++11, C++14, C++17, and C++20 are also supported using the strict parser.
Description: C is a foundational language for system programming and applications, while C++ extends it with object-oriented features, supporting complex and high-performance software development.

C#

Support: Understand supports all versions up to and including C#11.
Description: A high-level language developed by Microsoft, used primarily for building Windows applications and services with a syntax similar to C++ but designed to be easier to use.

FORTRAN

Support: Understand supports FORTRAN 77, FORTRAN 90, FORTRAN 95, FORTRAN 2003 and FORTRAN 2008 in both free and fixed format. Extensions supported include Harris FORTRAN and DEC FORTRAN. We often expand Understand to support common compiler extensions. If you find that the compiler extensions you are using are not currently supported contact us.
Description: One of the oldest high-level languages, specialized in numerical and scientific computing, known for its efficiency in handling mathematical computations.

Java

Support: Understand supports all versions up to Java 18.
Description: A versatile, object-oriented language designed to be platform-independent through its "write once, run anywhere" capability, commonly used for web and enterprise applications.

JOVIAL

Support: JOVIAL73 and JOVIAL3 are supported.
Description: A high-level language used mainly in defense and aerospace, known for its structured programming and real-time capabilities.

Delphi/Pascal

Support: Understand supports all versions of Embarcadero’s Delphi language and Embarcadero’s Turbo Pascal language. It also supports ISO 7185: 1990 (also known as Unextended Pascal) with HP Pascal extensions. You can also enable support for Ingres embedded SQL statements.
Description: A procedural language designed for teaching programming concepts and known for its clear syntax, it has been used in academia and some commercial applications.

Python

Support: Understand supports Python Version 2 and Python Version 3.
Description: A high-level, interpreted language known for its simplicity and readability, widely used in web development, data analysis, and scripting.

VHDL

Support: We support VHDL-87, VHDL-93, and VHDL-2001.
Description: A hardware description language used for modeling and simulating digital systems, particularly in the design of electronic circuits and FPGA programming.

Visual Basic[.NET]

Support: VB 2002 through 2015 are supported.
Description: An object-oriented language from Microsoft, designed to be easy to learn and use for developing Windows applications, integrating with the .NET framework.

Web Languages

Support: Understand supports PHP, HTML, CSS, JavaScript, Typescript and XML.
Description: Used to create and manage websites and web applications, including both client-side and server-side technologies. They handle everything from the structure and style of web pages to the backend logic and database interactions that drive dynamic content.