Add C# as a playable language
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 5/5
- Tiempo estimado
- Más de una semana
- Aptitud para principiantes
- 54/100
Línea de trabajo
Start with backend/arena/runner/harness.js, especially pythonProgram and javascriptProgram, then inspect LANGUAGES and starterCode; review the problem type list and per-problem runnableLanguages support. Add the C# driver and typed starter code for supported problems, wire Judge0 ID 51, and add coverage under backend/tests/. Verify against real Judge0, run npm test, and confirm node scripts/check-boundary.js passes.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
A common interview language. System.Text.Json handles input and output, and value tuples such as (string, int) cover every tuple type, so no problems should need to be left out.
CodeArena runs player code in Python, JavaScript and TypeScript. Adding a language is self-contained and a great way to get into the codebase.
Where the code lives
backend/arena/runner/harness.js: one small driver per language. The driver reads{"tests":[{"args":[...]}]}as JSON on stdin, calls the player's function once per test, and prints the per-run marker line followed by a JSON array of{ ok, value }/{ ok, error }. Copy the shape ofpythonProgram/javascriptProgram. The marker nonce must stay per-run.LANGUAGESin the same file: add{ label, judge0Id }.starterCode(problem, language): typed starter code built fromproblem.function(name,params[].type,returns).backend/arena/runner/executors.js:localExecutoronly knowsnodeandpython3; add your compiler for local development if you like (it is never used in production).
Types the 45 problems use
integer, integer[], integer[][], number[], string, string[], boolean, and tuples: [integer, integer], [integer, integer][], [integer, integer, integer][], [string, integer][], [string, string, string][], [integer, integer, string].
Statically typed languages need a mapping for each of these. If a mixed tuple such as [string, integer] has no clean equivalent in your language, it is fine to leave that problem out for your language rather than force an awkward type: the loader supports per-problem languages via runnableLanguages.
Definition of done
- Driver plus typed starter code for every problem your language supports.
- Judge0 language id wired up (Judge0 CE: C# (Mono) 51; confirm on your Judge0 instance).
- Proof: correct solutions pass and wrong ones fail on a spread of problems (easy, medium, hard, and every type above) against a real Judge0 (
docker-compose.judge0.ymlin the repo root runs one locally). - Tests in
backend/tests/covering the driver output and starter code;npm teststays green. node scripts/check-boundary.jspasses.
- Lenguaje dominante
- JavaScript
- Estrellas
- 0
- Forks
- 2
- Métricas de merge de PR
- Sin PR fusionados en 30 d
Preparar el entorno
- Sin Dockerfile ni archivo de Docker Compose
- Sin plantilla de pull request
- Leer la guía de contribución
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de sennaicodes/codearena
-
Add issue and pull request templatesQuizá libre de nuevo @franciscorodr26 la tomó hace 19 días y no hay ningún pull request abierto. Abiertodocumentation good first issue
Dificultad 2/5 1-3 horas Aptitud para principiantes 85/100
sennaicodes/codearena#13 · 1 comentario ·
-
enhancement help wanted
Dificultad 5/5 Más de una semana Aptitud para principiantes 45/100
sennaicodes/codearena#34 ·
-
enhancement help wanted
Dificultad 5/5 Más de una semana Aptitud para principiantes 35/100
sennaicodes/codearena#33 ·
-
enhancement help wanted
Dificultad 5/5 Más de una semana Aptitud para principiantes 45/100
sennaicodes/codearena#32 ·
-
enhancement help wanted
Dificultad 5/5 Más de una semana Aptitud para principiantes 38/100
sennaicodes/codearena#31 ·
Todos los issues de sennaicodes/codearena
Issues similares
-
[version] Windows WMPF 26042 偏移Abierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 68/100
evi0s/WMPFDebugger#303 ·
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 76/100
HakanSeven12/OpenCADStudio#2257 · 1 comentario ·
Los mantenedores suelen responder en 1 día
-
[bug] extension mappingAbierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 64/100
-
bug good first issue
Dificultad 2/5 1-3 horas Aptitud para principiantes 85/100
-
bug code-annotation
Dificultad 2/5 1-3 horas Aptitud para principiantes 76/100
quarto-dev/quarto-cli#15215 ·
Los mantenedores suelen responder en 1 día