論文の概要: Understanding Python Linters through a Comprehensive and Systematic Empirical Study
- arxiv url: http://arxiv.org/abs/2610.35485v1
- Date: Mon, 26 Oct 2026 14:14:40 GMT
- ステータス: 翻訳完了
- システム内更新日: 2026-10-27 22:27:14.024143
- Title: Understanding Python Linters through a Comprehensive and Systematic Empirical Study
- Title(参考訳): 包括的で体系的な実証研究によるPythonリンタ理解
- Abstract要約: 本稿では,Ruff,Pylint,Frake8,Mypy,Blackの5つの広く使用されているPythonリンタについて,大規模な実証研究を行った。
我々は1,551のリンティングルールを分析し、それらを5つのタイプに分類し、ルールマッピングを構築する。
Ruffは非常に高速で、ランタイムは通常1秒以内である。
- 参考スコア(独自算出の注目度): 16.207714817540857
- License: http://creativecommons.org/licenses/by/4.0/
- Abstract: Code linters, tools that automatically detect code issues, help developers accelerate development and improve code quality by identifying errors early. Unlike previous studies that focused mainly on single linters or informal comparisons, this paper presents the first large-scale empirical study of five widely used Python linters: Ruff, Pylint, Flake8, Mypy and Black, through four key user concerns: linting rule checks, speed, configuration methods, and linter preferences. We analyze 1,551 linting rules, categorize them into five types, and construct rule mappings, finding that more than 40% are shared between multiple linters, with Ruff and Pylint together covering over 80% of all rules. Pylint has the most rules in the first two categories, and Ruff leads in the last three. Next, we measure their running times on 1,000 GitHub projects under three setups (single-rule, default, all-rules), finding a consistent speed ranking from fastest to slowest: Ruff, Mypy, Flake8, Black, and Pylint. Ruff is extremely fast, with runtimes typically within one second. Then, we summarize four configuration methods and four types of configuration options from 443 available options across the five linters. While all linters support the four configuration methods, they differ in project configuration formats and flexibility in their configuration options. Finally, an analysis of 3,094 GitHub projects using the five linters reveals that over 50% use multiple linters, share strong consensus on option selections and rule suppressions, but exhibit project-specific variations in enabled-rule configurations. Our findings provide actionable insights for linter users and establish a benchmark dataset and taxonomy to support future research, such as cross-linter rule mapping, performance modeling, and automated configuration.
- Abstract(参考訳): コードリンタ – コード問題を自動的に検出するツールで、開発者が早期にエラーを特定することで、開発を加速し、コード品質を改善するのに役立つ。
単一リンタや非公式比較に主眼を置いていた従来の研究とは異なり,本論文では,Ruff,Pylint,Frake8,Mypy,Blackの5つの広く使用されているPythonリンタについて,ルールチェック,スピード,設定方法,linter選好の4つの主要なユーザの関心事を通じて,大規模な実証研究を行った。
我々は1,551のリンティングルールを分析し、それらを5つのタイプに分類し、ルールマッピングを構築し、40%以上が複数のリンタ間で共有され、RuffとPylintは共にすべてのルールの80%以上をカバーしている。
Pylintは最初の2つのカテゴリでもっともルールがあり、Ruffは最後の3つをリードする。
次に、1000のGitHubプロジェクトでの実行時間を3つのセットアップ(シングルルール、デフォルト、オールルール)で測定し、Ruff、Mypy、Frake8、Black、Pylintのスピードランキングが最速から遅くなっています。
Ruffは非常に高速で、ランタイムは通常1秒以内である。
次に、4つの設定方法と4種類の設定オプションを5つのリンタにまたがる43のオプションから要約する。
すべてのlinterは4つの設定メソッドをサポートしているが、プロジェクト構成フォーマットと、その設定オプションの柔軟性が異なる。
最後に、5つのリンタを使った3,094のGitHubプロジェクトの分析によると、50%以上が複数のリンタを使用しており、オプションの選択とルールの抑制について強いコンセンサスを共有している。
本研究は,ユーザに対する実用的な洞察を提供するとともに,クロスラインルールマッピングやパフォーマンスモデリング,自動構成など,将来の研究を支援するためのベンチマークデータセットと分類基準を確立する。
関連論文リスト
- Causal Syntax Circuits in CodeLMs: Budget and Probe Decide What Looks Localised [2.65107203875379]
コードモデルは、プロンプトがどの言語を使うべきかを言わないときにPythonを記述する。
モデル内の小さな、発見可能なコンポーネントのグループによって生成されるのか?
我々は1つのパイプライン--平均アブレーション、アクティベーションパッチ、グリード回路抽出、ランダム制御重要度テスト、アクティベーションステアリングを実行する。
論文 参考訳(メタデータ) (2026-10-14T16:31:03Z) - On the Design of Qwen3.8-Next Architecture: Evaluation, Efficiency, and Training Stability [57.03393882933515]
Qwen3.8-Flash-Nextは125Bパラメータ、トークンあたり6Bアクティベートされ、加速器から保持されるn-gram埋め込みテーブルの51Bパラメータを持つスパースミックス・オブ・エキスパートモデルである。
トレーニング前の14のベンチマークでは、このモデルは前モデルの397B-A17Bを8点、残りを少なくとも2.6ポイント、アクティベートされたパラメータが1/3、トレーニングトークンが1/3、トレーニング用FLOPが1/9であった。
論文 参考訳(メタデータ) (2026-08-31T06:35:07Z) - optimize_anything: A Universal API for Optimizing any Text Parameter [98.42497715725356]
単一タスク検索をサポートする1つのAIベースの最適化システム、クロスプロブレム転送によるマルチタスク検索、および目に見えない入力への一般化を示す。
LLMに基づく検索によるテキストの最適化は汎用的な問題解決パラダイムであることを示す。
論文 参考訳(メタデータ) (2026-05-19T10:18:12Z) - Formalize, Don't Optimize: The Heuristic Trap in LLM-Generated Combinatorial Solvers [52.23061619664667]
大規模言語モデル(LLM)は直接推論によって複雑な問題を解くのに苦慮しているため、近年のニューロシンボリックシステムは、それを実行可能な解法を合成するためにますます利用している。
我々は,100の問題をベンチマークしたCP-SynC-XL(4,577インスタンス)を導入し,ネイティブアルゴリズム検索(Python),PythonソルバAPI(Python + OR-Tools)による制約モデリング,宣言的制約モデリングという3つのコンストラクションパラダイムを評価した。
論文 参考訳(メタデータ) (2026-05-12T17:15:45Z) - Instruction Adherence in Coding Agent Configuration Files: A Factorial Study of Four File-Structure Variables [0.0]
コーディングエージェントはセッション開始時に設定ファイルを読み、内部の規約に従うことが期待されている。
4つの操作変数を用いたこれらの選択の系統的要因分析を報告する。
4つの構造変数または3つの双方向相互作用は、多重検定補正後に検出可能なコントラストを生成しない。
論文 参考訳(メタデータ) (2026-05-11T06:09:47Z) - ClawArena: Benchmarking AI Agents in Evolving Information Environments [61.664633997138004]
ClawArenaは、進化する情報環境におけるAIエージェントの評価のためのベンチマークである。
それぞれのシナリオは、エージェントをノイズ、部分的、時には矛盾するトレースだけに露呈しながら、完全に隠された地上の真実を維持します。
評価は、マルチソースコンフリクト推論、動的信念修正、暗黙のパーソナライゼーションという3つの複合的な課題に基づいて構成される。
論文 参考訳(メタデータ) (2026-04-05T17:55:23Z) - cuGenOpt: A GPU-Accelerated General-Purpose Metaheuristic Framework for Combinatorial Optimization [12.89168708039677]
cuGenOptは汎用メタヒューリスティックフレームワークで、3つの次元すべてに同時に対処する。
エンジンレベルでは、cuGenOptは統一的なエンコーディング抽象化(置換、バイナリ、整数)、二段階演算子選択機構、ハードウェア対応リソース管理を採用する。
実験では、cuGenOptスイートは、MIPソルバを桁違いに上回り、特殊ソルバと競合する品質を示し、30秒以内にTSP-442の差は4.73%に達する。
論文 参考訳(メタデータ) (2026-03-19T17:19:21Z) - Analysing Python Machine Learning Notebooks with Moose [0.12249546377051435]
機械学習(ML)コードは、特にノートブック内では、従来のソフトウェアに比べて品質が低いことが多い。
悪いプラクティスは、一般的なPythonコーディング規約、ノートブック自体の組織構造、API利用のようなML固有の側面の3つの異なるレベルに現れます。
本稿では,Moose上に構築されたマルチレベル機能を備えた静的解析ツールであるVespucci Linterを紹介する。
論文 参考訳(メタデータ) (2025-09-15T09:59:49Z) - RuleKit 2: Faster and simpler rule learning [0.0]
RuleKitは、分類、回帰、生存の問題でその効果を証明している。
以前含まれていた新しいアルゴリズムと最適化された実装は、計算性能を著しく改善した。
Pythonパッケージとグラフィカルユーザインターフェースを備えたブラウザアプリケーションだ。
論文 参考訳(メタデータ) (2025-04-29T11:21:11Z) - PyPulse: A Python Library for Biosignal Imputation [58.35269251730328]
PyPulseは,臨床およびウェアラブルの両方のセンサ設定において生体信号の計算を行うPythonパッケージである。
PyPulseのフレームワークは、非機械学習バイオリサーバーを含む幅広いユーザーベースに対して、使い勝手の良いモジュラーで拡張可能なフレームワークを提供する。
PyPulseはMITライセンスでGithubとPyPIでリリースしました。
論文 参考訳(メタデータ) (2024-12-09T11:00:55Z) - A Large-Scale Study on Unsupervised Spatiotemporal Representation
Learning [60.720251418816815]
本稿では,ビデオからの教師なし表現学習に関する大規模研究を行う。
目的は同じビデオにおける時間的特徴を奨励する。
長時間持続を奨励することは,60秒であっても有効であることがわかった。
論文 参考訳(メタデータ) (2021-04-29T17:59:53Z)
関連論文リストは本サイト内にある論文のタイトル・アブストラクトから自動的に作成しています。
指定された論文の情報です。
本サイトの運営者は本サイト(すべての情報・翻訳含む)の品質を保証せず、本サイト(すべての情報・翻訳含む)を使用して発生したあらゆる結果について一切の責任を負いません。