Exploring Cross-Language Software Similarity Analysis Using Source Code Context
Notice bibliographique
Résumé
The rapid growth of multi-language and cross-platform software development has created an urgent need for effective techniques to identify functional similarity across programming languages. Developers routinely reuse or reimplement functionally similar code blocks across cross-language and multilingual software systems, resulting in intentional and unintentional cross-language similar code fragments, as well as the adaptation of APIs and libraries that serve similar purposes but are implemented in different languages. While these adaptations can improve portability and broaden software reach to various users, they also increase development cost, maintenance complexity, and the potential for inconsistency or defects. Despite recent advances in machine learning, code representation learning, and Large Language Models (LLMs), existing approaches for cross-language software similarity often struggle with deep syntactic reasoning, diverse coding styles, and limited availability of high-quality multi-lingual code datasets. This thesis is grounded in the premise that accurate detection of cross-language code similarity can significantly mitigate longstanding challenges in cross-language software development and maintenance. Motivated by this premise, the thesis investigates the foundational problem of establishing reliable, robust cross-language code-similarity measures. The proposed investigation aims to support a wide range of software engineering tasks, including single-language, cross-language, and multi-language development and maintenance activities. Drawing on a comprehensive systematic literature review, the thesis identifies key limitations in the state of the art and proposes five complementary contributions across four levels of code granularity. First, it introduces a universal software similarity detector (CroLSim) that categorizes cross-language software applications by leveraging API call documentation similarity. Second, it presents a source code feature-driven and API documentation-adapted cross-language clone detection model (CLCDSA) that combines syntactic features with API documentation semantics similarity to identify cross-language clones more accurately. Third, it develops an LLM-guided, multimodal framework (XLCoCo) that fuses multi-intent source code information retrieval from LLMs and attention-based VAEs to predict structural feature similarity, improving the performance of cross-language code-to-code search and clone detection tasks. Fourth, it proposes XLibRec, a technique for recommending analogical cross-language libraries by mining reliable library usage information from different developer community discussion forums, along with Library short descriptions collected from various package managers. Finally, it introduces XAPIRec, an efficient method for analogical API mapping based on API usage patterns, mined from functionally equivalent API usage patterns collected in an automatic way, and LLM-driven API document similarity, which completely replaces the need to manually mine functionally similar parallel code fragments or any prior knowledge of true mapped API or a labeled API mapping dataset. Together, these contributions form a scalable ecosystem that advances automation, accuracy, and practical applicability in industry-level cross-language software development and maintenance. The techniques are extensively evaluated against state-of-the-art baselines across diverse datasets and programming languages, demonstrating consistent improvements in precision, recall, ranking quality, and real-world usability. Overall, this thesis offers a unified framework to support developers and organizations in building, understanding, and maintaining robust cross-language software systems in large scale.
Récupéré en direct depuis OpenAlex et désinversé. Les résumés ne sont pas conservés dans cette base de données : les index inversés représentent 8,6 Go des 9,3 Go de texte de la base, et le serveur dispose de 13 Go libres.
Comment cette classification a été obtenuedéplier
Prédiction machine sur la base complète
Imitation des enseignantsNi prévalence calibrée, ni vérité terrain. Validation humaine à venir. Le volet Gemma est une étiquette directe du modèle pour chaque travail de la base, lue sur la notice réduite au titre. Le volet Codex est un classifieur appris des 10 348 étiquettes directes de Codex et calibré sur les taux pondérés de l'échantillon; les champs sans appui suffisant ne portent aucun appel Codex. Le mode candidate est l'union des deux volets; le consensus est leur intersection. Ces sorties portent le statut machine_predicted_unvalidated et ne sont pas des étiquettes humaines.
Scores du classifieur distillé par catégorie (deux têtes)
| Catégorie | Codex | Gemma |
|---|---|---|
| Métarecherche | 0,007 | 0,060 |
| Méta-épidémiologie (sens strict) | 0,001 | 0,000 |
| Méta-épidémiologie (sens large) | 0,001 | 0,001 |
| Bibliométrie | 0,023 | 0,013 |
| Études des sciences et des technologies | 0,001 | 0,001 |
| Communication savante | 0,004 | 0,008 |
| Science ouverte | 0,002 | 0,004 |
| Intégrité de la recherche | 0,001 | 0,001 |
| Charge utile insuffisante (le modèle a refusé de juger) | 0,001 | 0,000 |
Scores machine (provisoires)
Les deux têtes enseignantes du modèle étudiant, lues sur ce travail. Un score ordonne la base pour la relecture; il n'affirme jamais une catégorie, et le statut de validation accompagne chaque rangée tel quel.
Scores de référence d'un modèle non mature (critères de maturité non atteints, 7 itérations). Un score ordonne; il n'affirme jamais une catégorie.
score_only:v0-immature-baseline · tel quel depuis la passe de notation : score_only signifie que le nombre peut ordonner les travaux, et qu'aucune étiquette de catégorie n'en découleClassification
machine, non validéePrédiction automatique; un appel candidat d’une seule source (Gemma direct ou Codex distillé), pas un consensus.
Le détail, modèle par modèle et score par score, se trouve en fin de page sous « Comment cette classification a été obtenue ».