<meta name="robots" content="noindex" />

MLSA_logo.png MultiLingual Static Software Analyis

Our objective is to provide open-source tools that help analyze the way multilingual code interoperates to address security issues, software design and refactoring, efficiency and correctness. The first step is to create call graphs that represent the relationship between C/C++, Python, and JavaScript programs. The MultiLingual Static Software Analysis software tool (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 and produces a multi-lingual call graph.

multilingual_system.png

The MLSA software tool reviews function (procedure) calls within a set of source code files. It generates a call graph in csv/graphviz format with formatted information about function calls and their arguments and what files they are in. The tool is currently capable of analyzing programs in C/C++, Python and JavaScript, and in which a C/C++ program calls Python code through the python.h interface, a Python program calls C/C++ procedure using pybind11 interface, a Python program calls JavaScript code through PyV8 's eval function, or a JavaScript program calls Python code through JQuery's ajax command. The result in all cases is a call graph that includes procedures in all three languages showing their mutual call relationships. For more details, read on.

Background

Architecture

System Requirements

Installation

Execution

IG/repostats.py

IG/cFunCall2.py

Filters and Pipelines

Data Files

Status per Module

Known Issues for Version 0.1

Future Work

Permissions

Persons/group who can view/change the page:

-- (c) Fordham University Robotics and Computer Vision

  • multilingual system:
Topic attachments
I Attachment History Action Size DateSorted ascending Who Comment
PNGpng multilingual_system.png r1 manage 48.0 K 2016-07-27 - 14:44 DamianLyons multilingual system
PNGpng MLSA_logo.png r1 manage 38.5 K 2017-07-12 - 19:21 AnneMarieBogar  
Edit | Attach | Watch | Print version | History: r15 < r14 < r13 < r12 < r11 | Backlinks | Raw View | Raw edit | More topic actions...
Topic revision: r14 - 2019-05-29 - LabTech
 
  • Edit
  • Attach
This site is powered by the TWiki collaboration platform Powered by PerlCopyright © 2008-2024 by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding TWiki? Send feedback