Difference: FRCVLabMLSA (5 vs. 6)

Revision 62017-04-11 - MaggieGates

Line: 1 to 1
 
META TOPICPARENT name="FRCVPublicProject"
<meta name="robots" content="noindex" />
Line: 7 to 7
 The Multi-Lingual Static Analysis (MLSA, pronounced Melissa for convenience) is a tool that analyzes software that is written in multiple languages and in which the languages call each other. The objective is to provide open-source tools that help analyze the way multilingual code inter operates to address security issues, software design and refactoring, efficiency and correctness. The first step in the project is to address multilingual call graphs for C/C++, Java, Javascript and Fortran.

Changed:
<
<
multilingual_system.png
>
>
multilingual_system.png
 
Changed:
<
<
The first tool set produced in this project reviews function (procedure) calls within source code. It generates a call graph in csv/graphviz format with formatted information about function calls and their arguments. The tool is currently capable of analyzing programs in C and in Python, and in which a C program calls Python code through the python.h interface. The result in all cases is a call graph that includes procedures in both languages showing their mutual call relationships. We are building up a database of multilingual code and evaluating the performance of this first version.

Immediate extensions include extending how much of the python.h interface can be handled by the tool. At the moment only the “SimpleFile” interface is handled. The next step is handling mutual C/Python calls.

>
>

The first tool set produced in this project reviews function (procedure) calls within source code. It generates a call graph in csv/graphviz format with formatted information about function calls and their arguments. The tool is currently capable of analyzing programs in C, Python and JavaScript, and in which a C program calls Python code through the python.h interface or a Python program calls JavaScript code through PyV8's eval function. The result in all cases is a call graph that includes procedures in all three languages showing their mutual call relationships. We are building up a database of multilingual code and evaluating the performance of this first version.

Immediate extensions include extending how much of the python.h interface can be handled by the tool. At the moment only the “SimpleFile” interface is handled. The next step is handling mutual C/Python calls, C/JavaScript calls, and JavaScript/Python calls.

 

More Details

System Requirements

Line: 35 to 31
 

-- (c) Fordham University Robotics and Computer Vision

Changed:
<
<
  • multilingual system:
>
>
  • multilingual system:
 
META FILEATTACHMENT attachment="multilingual_system.png" attr="" comment="multilingual system" date="1469630671" name="multilingual_system.png" path="multilingual_system.png" size="49163" user="DamianLyons" version="1"
 
This site is powered by the TWiki collaboration platform Powered by PerlCopyright © 2008-2019 by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding TWiki? Send feedback