سؤال

في الوقت الحالي، أستخدم لغة PHP في كل شيء أقوم بتطويره للويب تقريبًا، لكن القيود اللغوية بدأت تزعجني.ومع ذلك، نظرًا لأنني طورت بعض الممارسات واحتفظت ببعض مكتبات PHP التي ساعدتني كثيرًا، لا أشعر أنني سأكون مستعدًا للانتقال إلى LISP والتخلص من كل مخرجات PHP الخاصة بي.قد يكون الأمر مستحيلًا على الخوادم حيث كل ما يمكنني الوصول إليه هو حساب استضافة LAMP عادي.

إذن أسئلتي هي:هل يمكن دمج كود LISP مع كود PHP؟هل هناك حلول لـ LISP/PHP جنبًا إلى جنب، أو واجهة لقابلية التشغيل البيني الخاصة بهم أو ربما مجرد تطبيق لأحدهما للآخر؟أم أنه خيار متبادل؟

هل كانت مفيدة؟

المحلول

إنه ليس خيارًا حصريًا للطرفين، يمكنك تشغيل كليهما على نظام واحد، بنفس الطريقة التي يتم بها تشغيل Perl وphp (على سبيل المثال) جنبًا إلى جنب على العديد من الأنظمة.

هناك وظيفة جيدة هنا في موضوع مماثل، والذي يقترح استخدام مآخذ التوصيل للتواصل بين اللغتين -

إذا كنت تريد اتباع مسار PHP<->Lisp، فإن أسهل ما يمكنك فعله هو جعل PHP تتواصل مع عملية Lisp باستخدام المقابس.

http://php.net/manual/en/ref.sockets.php

http://www.sbcl.org/manual/Networking.html

لا يزال هذا النهج يتركك في مواجهة التعقيد الإضافي المحتمل ومشكلات الصيانة التي تواجهها من وجود لغتين في مشروعك، ولكنه قد يكون مناسبًا لحالة الاستخدام الخاصة بك.

نصائح أخرى

من المرجح أنك لن ترغب في كتابة تعليمات برمجية بلغة PHP بمجرد بدء التطوير في Lisp.(بالمناسبة، الكتابة بالأحرف الكبيرة الجديدة منذ حوالي الثمانينات)

Hunchentoot هو خادم مشهور يمنحك الأساسيات فيما يتعلق بربط المرسلين بالطلبات.هناك سلسلة من تسجيلات للشاشة عند كتابة نسخة من reddit في LispCast.com

الويب غير المشترك (يبدو وكأنه تورية في وصف بيتر نورفيج للمخطط في PAIP) مما يمكنني قوله إطار عمل أكثر اكتمالًا يعتمد بشكل كبير على فكرة الاستمرارية، يشبه إلى حد كبير شاطئ البحر ل سمولتوك.

كتل الويب هو إطار ويب آخر قائم على الاستمرارية ويبدو جميلًا.المؤلف (في defmacro.org) يكتب مقالات جيدة، وأعجبني ما رأيته في نموذج تطبيق Weblocks.

أنا في نفس الوضع تقريبًا في الوقت الحالي.لدي الكثير من PHP تحت حزامي، لكن اللغة بدأت تزعجني حقًا.لقد قمت بتجربة لغات مختلفة، ولكني قمت بالتعديل كثيرًا على المخطط مؤخرًا، وأنا أفكر في التبديل التدريجي.ربما ينبغي لنا أن نبدأ مجموعة مستخدمين أو شيء من هذا؟

قادمة من خلفية PHP، ربما تكون معتادًا على العمل بمستوى رفيع من التجريد لبروتوكول HTTP.أعتقد أن هذا هو الشيء الذي يسهل في الواقع الانتقال إلى لغة جديدة؛خاصة عندما لا يوجد إطار واحد مهيمن.بهذه الطريقة، هناك بعض أوجه التشابه بين PHP ومجتمع Lisp (ولكن الأمر نفسه ينطبق أيضًا على الأنظمة الأساسية الأخرى مفتوحة المصدر المجزأة، مثل Python وPerl).

إحدى مشكلات Lisp هي أن هناك الكثير للاختيار من بينها.لقد قررت أنني أفضل Scheme على Common Lisp، مما يضيق نطاقه قليلاً.بعد بعض التجارب، أنا الآن أركز على مخطط قانون البراءات, ، والذي يبدو أنه المخطط الوحيد الذي يتمتع بأكبر قدر من الزخم.من بين أشياء أخرى، فهو يحتوي على خادم ويب مرفق به.

لسوء الحظ، لا يمكنني التفكير في أي مكتبات لذلك، لكنني كنت في موقف مماثل، حيث كان لدي كود PHP، لكنني تعبت من "محاولة" منطق الكود (منطق اللعبة) في PHP، لذلك استخدمت مآخذ PHP للاتصال إلى Lua، وبالتالي أقوم الآن ببرمجة كل منطق الخادم في Lua واستخدام PHP (إعداد LAMP) كخادم الواجهة الأمامية الخاص بي.

امل ان يساعد.

أنصحك بالمحاولة كتل الويب.

لتطوير صفحات الويب العادية بلغة PHP، قمت بإنشاء ملف lib يسمى xilla_tags.

ملخص هنا

هناك أيضًا بعض التقنيات الجيدة على موقع البرامج الضارة الخاص بـ Jacob Hanssens.

تحقق من الحل المثير للاهتمام للجمع بين Lisp وPHPhttps://github.com/lisphp/lisphp

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top