1 puntos por GN⁺ 1 일 전 | 1 comentarios | Compartir por WhatsApp
  • El repositorio de Gleam, orientado a sistemas type-safe y escalables, también está disponible en Tangled
  • Tiene una única rama predeterminada, main, y registra cerca de 11.000 commits, 254 estrellas y 2 forks
  • El código del repositorio es mayormente Rust 92,9%, seguido por JavaScript 3,6%, Gleam 1,8%, entre otros
  • Desde el compilador y el servidor de lenguaje hasta el compilador WASM, el generador de código Erlang, el formateador y proyectos de prueba se gestionan en un solo repositorio
  • Gleam no pertenece a una empresa: es un proyecto apoyado por patrocinadores, y se puede patrocinar tanto al proyecto como a los miembros del equipo principal

Estructura del repositorio

  • gleam.run/gleam es el repositorio en Tangled del lenguaje Gleam
  • Sus componentes principales son los siguientes
    • compiler-cli, compiler-core, compiler-wasm
    • language-server, erlang-generation, erlang-term-format
    • format, hexpm, gleam-bin
    • Benchmarks, documentación, paquetes de la comunidad y proyectos de prueba relacionados con el compilador
  • main es la única rama y también la rama predeterminada; no hay tags públicos

Proporción por lenguaje y métodos de clonado

  • La proporción por lenguaje es Rust 92,9%, JavaScript 3,6% y Gleam 1,8%
  • HTML y CSS representan 0,4% cada uno; Erlang y Shell 0,3% cada uno, y también se incluyen TypeScript, Makefile, Dockerfile, Elixir y PowerShell
  • Se puede clonar por HTTPS y SSH, y también se admiten descargas en formatos tar.gz y .zip
  • En un Tangled knot autohospedado, la URL de clonado puede variar según la configuración

Trabajo de desarrollo reciente

  • Los commits recientes incluyen mejoras de rendimiento en el formateador y la generación de código JavaScript, además de una corrección en el código Erlang generado para external con argumentos descartados
  • En el servidor de lenguaje se incorporaron cambios como incluir el nombre del tipo en el título de la acción de código para generar variants y agregar una acción de código para convertir la base numérica de los números
  • También se permiten números negativos en distintas bases y se mejoraron los textos de sugerencias del compilador y de advertencias de todo
  • Si se configura HEXPM_READ_API_KEY, se autentican la búsqueda de dependencias de Hex y las solicitudes de descarga
    • En lugar de límites estrictos por IP, se puede acceder a límites de solicitudes por usuario más altos

Operación del proyecto

  • Gleam apunta a construir sistemas escalables sobre la base de la seguridad de tipos
  • No pertenece a ninguna empresa y se mantiene con el apoyo de patrocinadores
  • En la página de patrocinio de Gleam se puede patrocinar al proyecto o a miembros del equipo principal

1 comentarios

 
GN⁺ 1 일 전
Comentarios en Hacker News
  • A este texto le falta mucho más contexto explicativo. Tal como está, solo lo entiende de inmediato alguien que ya no necesita que se lo presenten
    https://knowyourmeme.com/memes/curtains-for-zoosha

    • Gleam es un lenguaje popular entre quienes disfrutan Erlang o Elixir, y todos se basan en la máquina virtual BEAM
      Tangled es una alternativa descentralizada a GitHub construida sobre ATProto, como Bluesky
    • Resulta irónico que la página enlazada estire un simple tuit republicado hasta convertirlo en varias pantallas de “contenido”, de modo que al final se lee como una nota de farándula
    • Entonces quizá también habría que empezar explicando qué es este sitio, HN (Hacker News)
  • Acabo de conocer Tangled y probé registrarme, pero todavía tienen que pulir la experiencia de usuario para nuevos usuarios. Ingresé mi correo, hice la verificación y creé un nombre de usuario, pero luego no podía iniciar sesión directamente con ese nombre y además tuve que aprender un protocolo de URL social que no conocía
    Durante la verificación me enviaron a una pantalla y una URL que parecían pertenecer al proyecto, pero con una marca y colores totalmente distintos, y mi administrador de contraseñas no pudo relacionarlos. Soy especialmente sensible a la fricción al registrarse, pero el proyecto me parece interesante, así que espero que esta retroalimentación sea útil

    • En mi caso, el proceso de registro e inicio de sesión fue solo “hacer clic en iniciar sesión → ingresar mi handle existente de Bluesky → escribir la contraseña en la pantalla de inicio de sesión del dominio bsky → hacer clic en aprobar”. Por ahora, esa ruta parece estar más optimizada
      Como la app y la identidad no están estrechamente acopladas, parece que montaron infraestructura aparte, pero aún no le han dedicado mucho tiempo al acabado de las pantallas. Si no creaste una cuenta propia y no puedes iniciar sesión con tu nombre de usuario, me pregunto entonces qué se supone que debes usar
    • En mi caso fue peor: solo apareció el error Failed to complete sign up. Try again later.
  • Gleam es un lenguaje interesante que apunta a un diseño pequeño y refinado. Hace poco conocí al equipo de Gleam en el Ubuntu Summit, y su charla transmitió muy bien esa filosofía de diseño de mantenerse pequeños y construir con cuidado
    Giacomo dijo que animó personalmente todas las transiciones de pantalla, y sentí que la presentación misma también estaba hecha de manera pequeña y meticulosa, reforzando aún más el mensaje central
    https://youtu.be/E6_JqYMeNqs
    https://discourse.ubuntu.com/t/gleam-and-the-value-of-small/...
    https://en.wikipedia.org/wiki/Gleam_(programming_language)

  • Probé operar mi propio servidor Knot en Tangled, pero aunque el repositorio se creaba correctamente en Knot, los cambios posteriores no aparecían en Tangled
    Knot tenía conectividad IPv6, pero para que funcionara de forma estable tuve que habilitar varios NAT de IPv4 e incluso crear un registro A ficticio; ya es un problema conocido: https://tangled.org/tangled.org/core/issues/494

  • Me pregunto por qué eligieron un forge financiado por capital de riesgo en vez de Codeberg. Tampoco parece encajar mucho con la idea de un “lenguaje amigable”

    • Estar “en Tangled” en realidad significa publicar registros ATProto sh.tangled.*. No es una estructura dependiente de la empresa financiada por capital de riesgo detrás de la app web tangled.org; la app simplemente lee repositorios Git expuestos a través del protocolo y los muestra en una interfaz agradable
      Otras apps de ATProto que lean esos mismos registros también pueden acceder a la misma información. Ni siquiera hace falta alojar el repositorio en Tangled: se puede hospedar directamente en un servidor que soporte Git, SSH, HTTP y WebSocket
    • No me gusta cómo se financia Tangled, pero creo que ATProto tiene mucho potencial para mejorar internet. En la comunidad de Gleam también hay bastante interés en este protocolo, así que me pareció un buen lugar para alojar un mirror de los repositorios de Gleam
    • Gleam sigue estando en GitHub. No es una migración oficial; simplemente también está publicado en un forge basado en ATProto
    • Parece muy probable que haya sido una condición del apoyo financiero, y al final deja la amarga impresión de que el valor central es el dinero y no la comunidad. Yo mejor me concentraría en usar Elixir en mi proyecto
  • Probé Tangled por primera vez, pero parece tener demasiados bugs como para usarlo de verdad. Creé un repositorio, pero salía 404 y no se podía ver, y aunque copiaba y pegaba el mismo handle de ATProto cada vez, el inicio de sesión falló varias veces
    Aun así, me alegra ver que más equipos desarrollen alternativas para hosting Git

    • En los primeros tiempos de GitHub pasaba lo mismo: el repositorio se creaba de forma asíncrona y te redirigían de inmediato, así que ocurría eso. Si actualizabas unos segundos después, ya aparecía, y luego recuerdo que agregaron una pantalla intermedia que esperaba antes de redirigir automáticamente
  • Llevo un tiempo buscando un servicio Git descentralizado e incluso empecé a hacer self-hosting, pero le faltaban funciones sociales. Me interesa saber más sobre Tangled

    • Radicle se acerca un poco más a ese objetivo y permite self-hosting y federación. Aun así, es difícil encontrar una alternativa con la gravedad social de GitHub, y todavía no está claro si ese elemento puede separarse del forge o si tiene que venir junto con él
    • Por ahora, parece que no se puede hacer self-hosting de la interfaz ni de la API. Sí se puede operar Knot, que es el servidor Git, y Spindle, que es el ejecutor de CI, pero el servicio completo todavía está algo centralizado, y están trabajando para cambiar eso
    • Más allá de saber que la empresa está registrada en Finlandia, fue difícil encontrar quién lo opera y cómo se financia
  • Estaría dispuesto a subir un proyecto a Tangled, pero en cuanto a conjunto de funciones todavía le falta bastante para cerrar la brecha con los servicios existentes. En especial, las caídas de GitHub, incluso cuando solo quieres ver repositorios, están siendo un obstáculo demasiado grande

    • Más que elegir Tangled solo por la vibra de ATProto, me pregunto por qué no usar Codeberg, o Forgejo o Gitea, que son más maduros y libres/de código abierto
    • Definitivamente empecé a buscar otros servicios por la frustración con las caídas de GitHub
  • Me pregunto en qué se diferencia Tangled de Codeberg y cómo sería el proceso de migración

    • Uso ambos, y a Tangled todavía le faltan funciones importantes como repositorios privados y ramas protegidas. En cambio, la interfaz de Tangled me resulta más cómoda y Codeberg es bastante lento en mi entorno
      No uso CI/CD, así que no sé cómo sería un proceso de migración más complejo, pero hacer push de un repositorio a un Knot hospedado es muy simple. Operar tu propio Knot tampoco es difícil, y me gusta la idea de ser dueño directo de al menos uno de los servidores a los que envías tu código
    • La diferencia clave es que Tangled, a diferencia de Forgejo o Codeberg, está construido alrededor del protocolo federado ATProto
  • Cuesta entender qué es Tangled y a cuál Gleam se refiere

    • Parece el tipo de publicación que solo entienden los iniciados. Incluso al abrir el enlace casi no había nada que pareciera relacionado con Tangled, y entre las publicaciones de HN con público limitado, esta destacaba especialmente en ese sentido
      La pista de que la URL tenía que ver con Tangled era tan sutil que no la noté hasta la tercera vez que la abrí, y en la página de destino prácticamente no había ninguna explicación de qué era Tangled