# Gleam 1.19 يتوقف عن توليد كود Erlang نصيًا ويخفض زمن البناء من 500 إلى 100 ميلي ثانية

> **المغزى:** المغزى: جزء كبير من البطء في أدوات البرمجة لا يأتي من الحساب، بل من تحويل البيانات إلى نص ثم إعادة قراءته، وحذف هذه الخطوة قد يكون أكبر تحسين متاح.

- المصدر: المغزى (https://almaghza.com/a/2026-10-06-gleam-1-19-erlang-abstract-forms/)
- التاريخ: 25 ربيع الآخر - 6 أكتوبر 2026 (2026-10-06)
- القسم: برمجيات
- الوسوم: Gleam، Erlang، المترجمات، تحسين الأداء

أصدرت لغة Gleam النسخة 1.19.0 في 5 أكتوبر 2026، وفيها تغيير في طريقة عمل المترجم.

فقبل هذه النسخة، كان مترجم Gleam يولّد كود Erlang في صورة نص، ثم يستدعي مترجم Erlang ليقرأ هذا النص ويحلله من جديد. أما الآن فيولّد مباشرة ما يُعرف بـ Erlang abstract forms، وهي الصيغة الوسيطة التي تفهمها بيئة Erlang دون تحليل نصي. وبذلك حُذفت خطوة كاملة: كتابة الكود نصًا ثم إعادة تحليله.

وبحسب الإعلان الرسمي، نزل زمن بناء المشروع المرجعي من الصفر من نحو 500 ميلي ثانية إلى نحو 100.

وجاء مع التغيير مكسب ثانٍ. فالصيغة الوسيطة تحمل بيانات وصفية تشير إلى سطر Gleam الأصلي، لا إلى سطر Erlang المولَّد. فصار أثر الخطأ (stack trace) يشير إلى مكان المشكلة في الكود الذي كتبه المطور، لا في كود لم يكتبه ولا يراه.

ولا يستخدم أغلب المطورين لغة Gleam، لكن الدرس أعم من اللغة. فكثير من البطء في أدوات البرمجة لا يأتي من الحساب نفسه، بل من تحويل البيانات إلى نص ثم إعادة قراءتها. ويتكرر هذا النمط في أماكن كثيرة، منها كل موضع تُكتب فيه البيانات بصيغة JSON لتُقرأ مرة أخرى بعد خطوة واحدة داخل النظام نفسه.

## المصادر

- [إعلان Gleam الرسمي](https://gleam.run/news/gleam-doesnt-compile-to-erlang-source-anymore/)
- [توثيق Erlang عن الـ abstract format](https://www.erlang.org/doc/apps/erts/absform.html)
- [صفحة إصدارات Gleam](https://github.com/gleam-lang/gleam/releases)
