لغة استعلام مستوحاة من GraphQL لنقل البيانات بين Clojure وClojureScript.
ولد هذا المشروع في سعيي لتعلم Clojure. تعجبني الفكرة وأخطط لتطويرها بشكل أكبر في الأشهر التالية. في المرحلة الحالية يعد الأمر خامًا جدًا بحيث لا يمكن استخدامه في أي مشروع بخلاف المتعة. أي اقتراحات وردود الفعل هي موضع ترحيب!
لقد كنت أقوم بإدارة المنتجات لسنوات حتى الآن. لكي أمارس مهاراتي البرمجية القديمة، قررت أن أتعلم شيئًا جديدًا. لقد سمعت الكثير من الأشياء اللطيفة عن Clojure، وخاصة جزء ClojureScript منه، لذلك كان الاختيار سهلاً. قررت أن أتعلمها ولكن القيام بتطبيق آخر لقائمة المهام لم يبدو جذابًا بالنسبة لي. كان GraphQL شيئًا آخر لم أتمكن من تجربته أثناء القيام بالواجهة الأمامية، لذلك قررت تنفيذه في Clojure كتمرين. وسرعان ما أدركت أن عظمة Clojure يمكن أن تسفر عن شيء أكثر أناقة (إذا اقتصرت على Clojure فقط) والآن بعد 10-12 تكرارًا، لدي الكثير من الميزات المعبأة في كمية صغيرة جدًا من التعليمات البرمجية.
(نعم، كل ذلك في حوالي 350 سطرًا من التعليمات البرمجية، مع التعليقات)
الكود الرئيسي موجود داخل ملف "core.cljc" ومثال على استخدامه موجود في ملف "cgql-demo.cljc".