論文の概要: Transforming C++11 Code to C++03 to Support Legacy Compilation Environments
- arxiv url: http://arxiv.org/abs/2405.07204v1
- Date: Sun, 12 May 2024 08:02:21 GMT
- ステータス: 処理完了
- システム内更新日: 2024-05-14 17:57:54.687399
- Title: Transforming C++11 Code to C++03 to Support Legacy Compilation Environments
- Title(参考訳): C++11コードをC++03に変換してレガシーコンパイル環境をサポートする
- Authors: Gábor Antal, Dávid Havas, István Siket, Árpád Beszédes, Rudolf Ferenc, József Mihalicza,
- Abstract要約: 我々は、C++11標準に従って書かれたコードを、機能的に等価なC++03変種に自動的にバックポートする、ソースコード変換フレームワークを作成します。
本稿では,トランスフォーメーションエンジンの技術的詳細と,大規模な2つのコードベースと4つのオープンソースシステムに適用した経験について報告する。
- 参考スコア(独自算出の注目度): 1.6851123188451185
- License: http://creativecommons.org/licenses/by-nc-sa/4.0/
- Abstract: Newer technologies - programming languages, environments, libraries - change very rapidly. However, various internal and external constraints often prevent projects from quickly adopting to these changes. Customers may require specific platform compatibility from a software vendor, for example. In this work, we deal with such an issue in the context of the C++ programming language. Our industrial partner is required to use SDKs that support only older C++ language editions. They, however, would like to allow their developers to use the newest language constructs in their code. To address this problem, we created a source code transformation framework to automatically backport source code written according to the C++11 standard to its functionally equivalent C++03 variant. With our framework developers are free to exploit the latest language features, while production code is still built by using a restricted set of available language constructs. This paper reports on the technical details of the transformation engine, and our experiences in applying it on two large industrial code bases and four open-source systems. Our solution is freely available and open-source.
- Abstract(参考訳): 新しい技術 - プログラミング言語、環境、ライブラリ - は急速に変化します。
しかし、様々な内部および外部の制約により、プロジェクトはこれらの変更に迅速に適用できなくなることが多い。
例えば、顧客は、ソフトウェアベンダーから特定のプラットフォーム互換性を必要とするかもしれません。
本研究では、C++プログラミング言語の文脈におけるそのような問題に対処する。
私たちの産業パートナーは、古いC++言語エディションのみをサポートするSDKを使用する必要があります。
しかし彼らは、開発者がコードで最新の言語構造を使えるようにしたいと思っている。
この問題に対処するため、私たちは、C++11標準に従って書かれたソースコードを、機能的に等価なC++03変種に自動的にバックポートする、ソースコード変換フレームワークを作成しました。
私たちのフレームワークでは、開発者は最新の言語機能を自由に利用できます。
本稿では,トランスフォーメーションエンジンの技術的詳細と,大規模な2つのコードベースと4つのオープンソースシステムに適用した経験について報告する。
私たちのソリューションは無料で、オープンソースです。
関連論文リスト
- CodeRosetta: Pushing the Boundaries of Unsupervised Code Translation for Parallel Programming [15.391781573025787]
我々は,プログラミング言語とHPC拡張間の翻訳に特化して設計されたエンコーダ・デコーダモデルであるCodeRosettaを紹介する。
CodeRosettaはC++から並列C++翻訳タスクで評価される。
以上の結果から,CodeRosettaはC++の最先端のベースラインよりも翻訳に優れていた。
論文 参考訳(メタデータ) (2024-10-27T17:34:07Z) - CodeGRAG: Bridging the Gap between Natural Language and Programming Language via Graphical Retrieval Augmented Generation [58.84212778960507]
我々は,LLMの性能を高めるため,グラフィカル検索拡張コード生成フレームワークであるCodeGRAGを提案する。
CodeGRAGは、制御フローとデータフローに基づいて、コードブロックのグラフィカルなビューを構築し、プログラミング言語と自然言語のギャップを埋める。
ハードメタグラフプロンプト、ソフトプロンプト技術、事前訓練されたGNN専門家の目的の有効性を検証するために、C++言語とピソン言語の両方を含む4つのデータセットで様々な実験と改善が行われた。
論文 参考訳(メタデータ) (2024-05-03T02:48:55Z) - IRCoder: Intermediate Representations Make Language Models Robust Multilingual Code Generators [49.903001442804594]
本研究では、コンパイラ中間表現(IR)を活用して、Code-LMの多言語機能を改善する可能性について検討する。
まず,約400万のソースコードファイルからなる並列データセットであるSLTransをコンパイルする。
次に、SLTransにおける因果言語モデリングトレーニングを継続して実施し、Code-LMはIR言語を学習せざるを得なかった。
IRCoderと呼ばれる結果のモデルは、さまざまなコード生成タスクやメトリクスに対して、サイズと一貫性のあるゲインを表示します。
論文 参考訳(メタデータ) (2024-03-06T17:52:08Z) - Creation of a CS1 Course with Modern C++ Principles [0.30458514384586394]
このポスターには、C++プログラミング言語を使用したCS1コースの設計の経験が含まれている。
私たちの目標は、C++プログラマの間でよく見られる悪い習慣を避けることです。
論文 参考訳(メタデータ) (2023-11-13T23:43:38Z) - Parsing Fortran-77 with proprietary extensions [0.0]
多くの組織は、"obsolete"プログラミング言語で書かれた古いコードに依存しています。
これらの"ベテランの言語"を扱うことの難しさのひとつは、ソースコードを解析して、その表現を構築することだ。
論文 参考訳(メタデータ) (2023-09-05T07:54:02Z) - Multilingual Code Co-Evolution Using Large Language Models [45.083171710527985]
あるプログラミング言語から別のプログラミング言語へのコード変更の翻訳は、開発者の作業方法ではない。
Codeditorは、明示的にコード変更を編集としてモデル化し、プログラミング言語間で変更を関連付けることを学習する。
Codeditorは、一般的に使用されるすべての自動メトリクスに対して、最先端のアプローチを大きなマージンで上回る。
論文 参考訳(メタデータ) (2023-07-27T16:37:30Z) - CodeTF: One-stop Transformer Library for State-of-the-art Code LLM [72.1638273937025]
我々は、最先端のCode LLMとコードインテリジェンスのためのオープンソースのTransformerベースのライブラリであるCodeTFを紹介する。
我々のライブラリは、事前訓練されたコードLLMモデルと人気のあるコードベンチマークのコレクションをサポートします。
CodeTFが機械学習/生成AIとソフトウェア工学のギャップを埋められることを願っている。
論文 参考訳(メタデータ) (2023-05-31T05:24:48Z) - CodeGeeX: A Pre-Trained Model for Code Generation with Multilingual Benchmarking on HumanEval-X [50.008474888951525]
コード生成に130億のパラメータを持つ多言語モデルであるCodeGeeXを紹介する。
CodeGeeXは、23のプログラミング言語の8500億のトークンで事前訓練されている。
論文 参考訳(メタデータ) (2023-03-30T17:34:01Z) - ANGLEr: A Next-Generation Natural Language Exploratory Framework [0.0]
提案した設計は、ANGLErと呼ばれる新しい自然言語処理フレームワークの実装に使用されている。
提案されたフレームワークの主な部分は,(a)プラグイン可能なDockerベースのアーキテクチャ,(b)汎用データモデル,(c)グラフィカルユーザインターフェースを備えたAPI記述で構成される。
論文 参考訳(メタデータ) (2022-05-10T13:32:13Z) - A Systematic Evaluation of Large Language Models of Code [88.34057460577957]
コードの大規模な言語モデル(LM)は、最近、コードを完成させ、自然言語記述からコードを合成する大きな可能性を示しています。
現在の最先端のコードLMは公開されておらず、モデルやデータ設計の決定について多くの疑問が残されている。
Codexはオープンソースではありませんが、既存のオープンソースモデルはいくつかのプログラミング言語でクローズな結果が得られることが分かりました。
GPT-2アーキテクチャに基づいた2.7Bパラメータを持つ新しいモデルPolyCoderをリリースし、12のプログラミング言語を1台のマシンで249GBのコードでトレーニングした。
論文 参考訳(メタデータ) (2022-02-26T15:53:55Z) - Unsupervised Translation of Programming Languages [19.56070393390029]
ソース・トゥ・ソース(source-to-source)またはトランスコンパイラ(transcompiler)は、ソースコードをハイレベルなプログラミング言語から別のプログラミング言語に変換するシステムである。
私たちは、オープンソースのGitHubプロジェクトからソースコードでモデルをトレーニングし、C++、Java、Python間の関数を高い精度で翻訳できることを示しています。
論文 参考訳(メタデータ) (2020-06-05T15:28:01Z)
関連論文リストは本サイト内にある論文のタイトル・アブストラクトから自動的に作成しています。
指定された論文の情報です。
本サイトの運営者は本サイト(すべての情報・翻訳含む)の品質を保証せず、本サイト(すべての情報・翻訳含む)を使用して発生したあらゆる結果について一切の責任を負いません。