INFRASTRUKTURA LINVAST ZA JEZIČKI-INVARIJANTNA APSTRAKTNA SINTAKSIČKA STABLA PROGRAMA.

Uloženo v:
Podrobná bibliografie
Název: INFRASTRUKTURA LINVAST ZA JEZIČKI-INVARIJANTNA APSTRAKTNA SINTAKSIČKA STABLA PROGRAMA. (Bosnian)
Alternate Title: LINVAST INFRASTRUCTURE FOR LANGUAGE-INVARIANT ABSTRACT SYNTAX TREES. (English)
Autoři: Ristović, Ivan
Zdroj: InfoM; 2025, Issue 81/82, p47-54, 8p
Témata: PROGRAMMING languages, SOFTWARE development tools, ABSTRACTION (Computer science), PROGRAMMING language semantics, INFORMATION technology
Abstract (English): Tools for static program analysis, i.e., analysis without executing the program, rely on various abstract representations of the program. These representations are created through parsing the program’s source code, abstracting, and transforming the results of the parser. As a result, such intermediate representations are tightly coupled with specific programming languages and are therefore incompatible across different languages. This tight coupling of tools with particular languages makes it difficult to develop tools for source-code analysis that are language-independent, and makes it difficult to extend existing tools with support for other programming languages. This paper presents the LINVAST infrastructure — a common language-invariant source-code abstraction based on abstract syntax trees. LINVAST models syntactic constructs of different programming languages in a uniform way, enabling the creation of tools that operate on source code regardless of the programming language in which the program is written. The LINVAST infrastructure, implemented in the C# programming language, is publicly available and has nearly ten thousand downloads. It currently implements common abstractions for the C, Java, Lua, and Go programming languages. [ABSTRACT FROM AUTHOR]
Abstract (Bosnian): Alati za statičku analizu programa, drugim rečima analizu programa bez njegovog izvršavanja, koriste razne apstraktne reprezentacije programa. Takve reprezentacije nastaju parsiranjem izvornog koda programa, apstrahovanjem i transformacijom rezultata parsera. Zbog toga, takve međureprezentacije su usko vezane za konkretan programski jezik i stoga su nekompatibilne između različitih programskih jezika. Uska povezanost alata i programskog jezika otežava izradu alata za analizu izvornog koda nezavisno od programskog jezika, i otežava nadogradnju postojećih alata podrškom za nove programske jezike. Ovaj rad predstavlja infrastrukturu LINVAST — opštu jezički-invarijantnu apstrakciju izvornog koda zasnovanu na apstraktnim sintaksičkim stablima. LINVAST modeluje sintaksičke konstrukte različitih programskih jezika na uniforman način, što omogućava izradu alata koji rade nad izvornim kodom programa bez obzira na programski jezik u kojem je program napisan. Infrastruktura LINVAST u programskom jeziku C# je javno dostupna i ima skoro deset hiljada preuzimanja. Trenutno implementira podršku apstrahovanja programskih jezika C, Java, Lua i Go. [ABSTRACT FROM AUTHOR]
Copyright of InfoM is the property of Belgrade University, Faculty of Organizational Science and its content may not be copied or emailed to multiple sites without the copyright holder's express written permission. Additionally, content may not be used with any artificial intelligence tools or machine learning technologies. However, users may print, download, or email articles for individual use. This abstract may be abridged. No warranty is given about the accuracy of the copy. Users should refer to the original published version of the material for the full abstract. (Copyright applies to all Abstracts.)
Databáze: Complementary Index
Buďte první, kdo okomentuje tento záznam!
Nejprve se musíte přihlásit.