1 पॉइंट द्वारा GN⁺ 1 일 전 | 1 टिप्पणियां | WhatsApp पर शेयर करें
  • Gleam रिपॉज़िटरी, जो type-safe और scalable सिस्टम को लक्ष्य करती है, अब Tangled पर भी उपलब्ध है
  • डिफ़ॉल्ट ब्रांच केवल main है और इसमें लगभग 11,000 commits, 254 stars और 2 forks दर्ज हैं
  • रिपॉज़िटरी कोड में Rust 92.9% का सबसे बड़ा हिस्सा है, इसके बाद JavaScript 3.6%, Gleam 1.8% आदि हैं
  • compiler और language server से लेकर WASM compiler, Erlang code generator, formatter और test projects तक सब कुछ एक ही रिपॉज़िटरी में प्रबंधित किया जाता है
  • Gleam किसी कंपनी के स्वामित्व वाला नहीं, बल्कि sponsor-supported project है, और प्रोजेक्ट तथा core team members दोनों को sponsor किया जा सकता है

रिपॉज़िटरी संरचना

  • gleam.run/gleam Gleam भाषा की Tangled रिपॉज़िटरी है
  • मुख्य घटक इस प्रकार हैं
    • compiler-cli, compiler-core, compiler-wasm
    • language-server, erlang-generation, erlang-term-format
    • format, hexpm, gleam-bin
    • benchmarks, documentation, community packages और compiler-संबंधित test projects
  • main ही एकमात्र और डिफ़ॉल्ट ब्रांच है, और कोई public tags उपलब्ध नहीं हैं

भाषा अनुपात और clone करने का तरीका

  • भाषा अनुपात में Rust 92.9%, JavaScript 3.6%, Gleam 1.8% है
  • HTML और CSS क्रमशः 0.4% हैं, Erlang और Shell क्रमशः 0.3% हैं, और TypeScript, Makefile, Dockerfile, Elixir, PowerShell भी शामिल हैं
  • HTTPS और SSH से clone किया जा सकता है, और tar.gz तथा .zip फ़ॉर्मेट में download भी समर्थित है
  • self-hosted Tangled knot में settings के अनुसार clone URL अलग हो सकता है

हाल की development गतिविधियां

  • हाल के commits में formatter और JavaScript code generation के performance improvements, तथा deprecated arguments वाले external के लिए Erlang generated code में सुधार शामिल हैं
  • language server में variant generation code action title में type name जोड़ने और numbers के base conversion code action जोड़ने जैसे बदलाव शामिल किए गए हैं
  • अलग-अलग bases के negative numbers की अनुमति दी गई है, और compiler suggestion text तथा todo warning text भी बेहतर किए गए हैं
  • HEXPM_READ_API_KEY सेट करने पर Hex dependency lookup और download requests authenticated हो जाते हैं
    • सख्त per-IP limits के बजाय अधिक per-user request limit लागू हो सकती है

प्रोजेक्ट संचालन

  • Gleam type safety के आधार पर scalable सिस्टम बनाने का लक्ष्य रखता है
  • यह किसी कंपनी के स्वामित्व में नहीं है और sponsors के समर्थन से संचालित होता है
  • Gleam sponsor page पर प्रोजेक्ट या core team members को sponsor किया जा सकता है

1 टिप्पणियां

 
GN⁺ 1 일 전
Hacker News टिप्पणियाँ
  • इस पोस्ट में संदर्भ की व्याख्या की बहुत ज़्यादा ज़रूरत है। अभी की स्थिति में इसे वही लोग तुरंत समझ सकते हैं जिन्हें पहले से किसी घोषणा की ज़रूरत ही नहीं है
    https://knowyourmeme.com/memes/curtains-for-zoosha

    • Gleam उन लोगों के बीच लोकप्रिय भाषा है जिन्हें Erlang या Elixir पसंद हैं, और ये सभी BEAM virtual machine पर आधारित हैं
      Tangled, Bluesky जैसे ATProto पर बना एक decentralised GitHub alternative है
    • विडंबना यह है कि लिंक किया गया पेज बस दोबारा पोस्ट किए गए एक साधारण ट्वीट को कई स्क्रॉल लंबे ‘content’ में फैलाकर पेश करता है, इसलिए वह असल में celebrity news article जैसा लगता है
    • तो फिर शायद इस साइट, यानी HN(Hacker News), की भी पहले व्याख्या करनी पड़ेगी
  • Tangled पहली बार देखा और साइन अप करके देखा, लेकिन new user experience को और निखारने की ज़रूरत है। ईमेल भरकर verification किया और username बनाया, लेकिन उसी नाम से सीधे लॉगिन नहीं कर सका, और एक अनजान social URL protocol भी सीखना पड़ा
    verification के दौरान मुझे ऐसे स्क्रीन और URL पर भेजा गया जो प्रोजेक्ट का हिस्सा लग रहा था, लेकिन branding और रंग पूरी तरह अलग थे, इसलिए password manager भी इन्हें आपस में जोड़ नहीं पाया। मैं signup friction को लेकर असामान्य रूप से संवेदनशील हूँ, लेकिन प्रोजेक्ट खुद दिलचस्प लगा, इसलिए उम्मीद है यह feedback काम आएगा

    • मेरे signup·login का flow बस इतना था: “लॉगिन पर क्लिक → मौजूदा Bluesky handle दर्ज → bsky डोमेन के लॉगिन स्क्रीन में password दर्ज → approve पर क्लिक”। अभी के चरण में यह रास्ता ज़्यादा optimized लगता है
      लगता है कि app और identity बहुत क़रीब से जुड़े न रहें, इसलिए अलग infrastructure बनाया गया है, लेकिन UI polish पर अभी ज़्यादा समय नहीं लगा है। मैंने अलग account नहीं बनाया, तो अगर username से लॉगिन नहीं हो सकता, फिर क्या इस्तेमाल करना चाहिए यह जानना चाहूँगा
    • मेरे मामले में तो उससे भी बुरा हुआ, बस Failed to complete sign up. Try again later. यही error दिखा
  • Gleam एक दिलचस्प भाषा है जो छोटे और परिष्कृत design की ओर बढ़ती है। हाल ही में Ubuntu Summit में Gleam टीम से मिला, और उन्होंने छोटे रहकर बहुत सोच-समझकर बनाने वाली अपनी design philosophy को प्रस्तुति में बेहतरीन ढंग से रखा
    Giacomo ने कहा कि उन्होंने हर screen transition खुद animate किया, और मुझे लगा कि प्रस्तुति भी उसी तरह छोटी और बारीक ध्यान से बनाई गई थी, जिससे उसका मुख्य संदेश और मज़बूत हुआ
    https://youtu.be/E6_JqYMeNqs
    https://discourse.ubuntu.com/t/gleam-and-the-value-of-small/...
    https://en.wikipedia.org/wiki/Gleam_(programming_language)

  • Tangled पर अपना Knot server चलाकर देखा, लेकिन repository Knot पर सही से बन जाने के बाद भी आगे के बदलाव Tangled में दिखाई नहीं दिए
    Knot में IPv6 connectivity थी, लेकिन ठीक से चलाने के लिए कई IPv4 NAT चालू करने पड़े और dummy A record भी बनाना पड़ा; यह पहले से ज्ञात समस्या है: https://tangled.org/tangled.org/core/issues/494

  • यह जानना चाहूँगा कि Codeberg के बजाय venture-funded Forge क्यों चुना गया। यह ‘friendly language’ वाले दावे से भी बहुत मेल नहीं खाता

    • “Tangled पर है” का मतलब असल में sh.tangled.* ATProto record प्रकाशित करना है। यह tangled.org web app के पीछे की venture-funded company पर निर्भर ढाँचा नहीं है; app सिर्फ protocol के ज़रिए प्रकाशित Git repositories को पढ़कर उन्हें आसान UI में दिखाता है
      वही record पढ़ने वाले दूसरे ATProto apps भी उसी जानकारी तक पहुँच सकते हैं। repository को Tangled पर रखना भी ज़रूरी नहीं; उसे Git, SSH, HTTP, WebSocket सपोर्ट करने वाले server पर सीधे host किया जा सकता है
    • Tangled की funding approach मेरी पसंद नहीं है, लेकिन मुझे लगता है कि ATProto में इंटरनेट को बेहतर बनाने की बड़ी क्षमता है। Gleam community में भी इस protocol को लेकर काफ़ी रुचि है, इसलिए लगा कि Gleam repositories का mirror host करने के लिए यह ठीक जगह है
    • Gleam अभी भी GitHub पर मौजूद है। यह कोई आधिकारिक migration नहीं है, बस ATProto-आधारित Forge पर एक अतिरिक्त प्रकाशन है
    • काफ़ी संभव है कि यह financial support की शर्त रही हो, और आख़िर में यह कड़वा एहसास देता है कि मुख्य मूल्य community नहीं बल्कि पैसा है। मैं तो बेहतर समझूँगा कि प्रोजेक्ट में Elixir इस्तेमाल करने पर ही ध्यान दूँ
  • Tangled पहली बार इस्तेमाल किया, लेकिन यह इतना bugs से भरा लगा कि इसे व्यवहारिक रूप से इस्तेमाल करना मुश्किल है। repository बनाई, लेकिन 404 आया और उसे देख नहीं पाया; वही ATProto handle बार-बार कॉपी करके डालने के बावजूद कई बार लॉगिन विफल हुआ
    फिर भी, ज़्यादा टीमों को Git hosting alternatives बनाते देखना अच्छा है

    • शुरुआती GitHub में भी repository asynchronously बनाई जाती थी और तुरंत redirect कर दिया जाता था, इसलिए यही चीज़ होती थी। कुछ सेकंड बाद refresh करने पर वह दिख जाती थी, और बाद में शायद इंतज़ार कराने और फिर अपने-आप redirect करने वाला interstitial page जोड़ दिया गया था
  • मैं काफ़ी समय से decentralised Git service ढूँढ रहा था और self-hosting भी शुरू कर दी थी, लेकिन social features की कमी थी। Tangled के बारे में और जानना चाहूँगा

    • Radicle इस लक्ष्य के थोड़ा और क़रीब है, और self-hosting व federation दोनों संभव हैं। लेकिन GitHub जैसी social gravity वाला विकल्प ढूँढना मुश्किल है, और यह अब भी साफ़ नहीं है कि इस हिस्से को Forge से अलग किया जा सकता है या दोनों को साथ ही देना पड़ेगा
    • अभी ऐसा लगता है कि UI और API को self-host नहीं किया जा सकता। Git server Knot और CI runner Spindle चलाए जा सकते हैं, लेकिन पूरी service अभी भी कुछ हद तक centralised है, और इसे बदलने का काम चल रहा है
    • कंपनी फ़िनलैंड में registered है, यह जानने के अलावा यह पता लगाना मुश्किल था कि इसे कौन चला रहा है और funding कैसे हो रही है
  • मैं किसी एक प्रोजेक्ट को Tangled पर डालकर देखने को तैयार हूँ, लेकिन मौजूदा सेवाओं के साथ अंतर कम करने लायक feature set अभी बहुत दूर है। खासकर repository को सिर्फ़ देखना हो तब भी GitHub outages का असर पड़ना बहुत बड़ी रुकावट है

    • सिर्फ़ ATProto वाली vibe के कारण Tangled चुनने के बजाय, ज़्यादा mature Codeberg या free/open source Forgejo या Gitea क्यों नहीं इस्तेमाल किए जा रहे, यह जानना चाहूँगा
    • GitHub outages को लेकर झुंझलाहट की वजह से मैंने भी सच में दूसरी सेवाएँ ढूँढनी शुरू कीं
  • Tangled, Codeberg से कैसे अलग है, और migration process कैसी है, यह जानना चाहूँगा

    • मैं दोनों इस्तेमाल करता हूँ, और Tangled में अभी private repositories और protected branches जैसी अहम सुविधाएँ नहीं हैं। लेकिन UI मुझे Tangled का ज़्यादा सहज लगता है, और Codeberg मेरे environment में काफ़ी धीमा है
      मैं CI/CD इस्तेमाल नहीं करता, इसलिए जटिल migration process के बारे में नहीं जानता, लेकिन hosted Knot पर repository push करना बहुत आसान है। अपना Knot चलाना भी मुश्किल नहीं है, और मुझे यह पसंद है कि जिन servers पर code भेजता हूँ उनमें कम-से-कम एक तो मेरा अपना हो
    • Forgejo या Codeberg के उलट, Tangled का मुख्य अंतर यह है कि इसे ATProto federation protocol को केंद्र में रखकर बनाया गया है
  • यह समझना मुश्किल है कि Tangled क्या है और किस Gleam की बात हो रही है

    • यह वैसा पोस्ट लगता है जिसे सिर्फ़ जानकार लोग ही समझ सकते हैं। लिंक खोलने पर भी Tangled से जुड़ी कोई बात लगभग नहीं दिखी, और सीमित audience वाले HN पोस्टों में भी यह मामला कुछ ज़्यादा ही था
      URL में Tangled का संकेत इतना सूक्ष्म था कि मुझे तीसरी बार खोलने के बाद समझ आया, और landing page पर Tangled की व्याख्या लगभग थी ही नहीं