Implement F# source text, lexing, directives, and layout
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 5/5
- Tiempo estimado
- Más de una semana
- Aptitud para principiantes
- 25/100
- Tipo de issue
- Nueva funcionalidad
- Claridad
- Bastante claro
- Estado de actividad
- Tranquilo
- Stack tecnológico
- fsharp
- Área
- compilers
Línea de trabajo
Comienza con el issue principal #8 y los bloqueadores #25, #26 y #27; después, lee el issue #2 y las ADRs 0008, 0014 y 0018. Se considera terminado cuando se haya implementado la capa de texto fuente y léxica, cumpliendo los criterios de aceptación indicados para la cobertura sintáctica, las directivas, el diseño, los diagnósticos, la inmutabilidad y resultados equivalentes tanto en ejecuciones en frío como reutilizadas.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
Parent: #8
Blocked by: #25, #26, and #27
Outcome
Implement the source-text and lexical layer for batch F# implementation and signature inputs.
Acceptance criteria
- The lexer handles Unicode identifiers, operators, keywords, numeric, character, byte, and string literal forms, comments, trivia, escaped identifiers, and compiler directives.
- Conditional compilation, line directives, source encoding, BOM handling, CRLF/LF differences, and indentation/offside behavior preserve exact source ranges.
- Language-version gates are data-driven and covered by the conformance manifest.
- Malformed tokens and directives produce recoverable, ordered Compatibility Oracle diagnostics.
- Token and trivia data are immutable and do not contain project-, file-name-, or external-corpus special cases.
- Cold and reused lexing return observably equivalent phase results.
Decision inputs
Issue #2; ADRs 0008, 0014, and 0018.
This issue inherits the corpus-neutral acceptance policy in #8.
- Lenguaje dominante
- F#
- Estrellas
- 0
- Forks
- 0
- Métricas de merge de PR
- Sin PR fusionados en 30 d
Preparar el entorno
Inicia el contenedor de desarrollo del proyecto en tu navegador, con tu propia cuenta de GitHub.
- Sin Dockerfile ni archivo de Docker Compose
- Tiene una plantilla de pull request
- Sin 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 TheAngryByrd/fsharp2
-
wayfinder:task
Dificultad 4/5 3-5 días Aptitud para principiantes 62/100
TheAngryByrd/fsharp2#46 ·
-
wayfinder:task
Dificultad 5/5 Más de una semana Aptitud para principiantes 35/100
TheAngryByrd/fsharp2#44 · 1 comentario ·
-
wayfinder:task
Dificultad 5/5 Más de una semana Aptitud para principiantes 20/100
TheAngryByrd/fsharp2#42 ·
-
wayfinder:task
Dificultad 5/5 Más de una semana Aptitud para principiantes 20/100
TheAngryByrd/fsharp2#41 ·
-
wayfinder:task
Dificultad 5/5 Más de una semana Aptitud para principiantes 25/100
TheAngryByrd/fsharp2#40 ·
Todos los issues de TheAngryByrd/fsharp2
Issues similares
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 63/100
KhronosGroup/SPIRV-LLVM-Translator#4151 ·
Los mantenedores suelen responder en 2 días
-
S3: friction & debt ws:emitter ws:wasm
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
MedakaLang/medaka#4913 ·
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 79/100
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 74/100
-
bug genc
Dificultad 2/5 1-3 horas Aptitud para principiantes 82/100
Los mantenedores suelen responder en 1 día