kenkoooo / AtCoderProblems

Extend your AtCoder
https://kenkoooo.com/atcoder/
MIT License
1.39k stars 149 forks source link

言語アップデート以降、言語名の正規化が上手くいっていない #1436

Closed roumcha closed 8 months ago

roumcha commented 9 months ago

言語名にバージョンや環境名などが入り込み、正規化が上手く働かなくなっています。

C++(と Python)は #1424 で議論されています。

すでに提案されている #1431 によっていくらか修正されますが、 C# 11.0 AOT や、 Assembly x64 などが残りそうです。

解決策

言語名から削除する文字列を \d*\s*\(.*\) から \s*[\d(\-].* (下図)に変更 + 個別対応はどうでしょうか。

image

現在修正が必要な言語

現在 修正後
C++(末尾空白) C++
C# 11., C# 11.0 AOT C#
F# 7. F#
Scala 3.3. Scala
TypeScript 5. TypeScript
Awk, AWK AWK
Assembly x Assembly x64
Seed Seed7

議論の余地がありそうな言語

現在 修正後 備考
COBOL - Fixed, COBOL - Free COBOL ※1
Haxe; Java, Haxe; js Haxe ※1
PyPy2, PyPy3 Python ※1, 2
PyPy3 Python ※1, 2
Python (Cython... Cython ※2
IOI-Style C++ C++ ※1
LuaJIT Lua ※1

備考

  1. 2023/01 アプデより前から別言語になっていたものを束ねる変更になるので、変えたらまずいという意見がありえます
  2. #1424 にある提案を反映しています
roumcha commented 8 months ago

Fixed by #1440