بيكوليسب
| النماذج | وظيفية ، إجرائية ، موجهة نحو الكائنات ، إعلانية ، تأملية ، ميتافيزيقية |
|---|---|
| عائلة | ليشبس |
| صمم بواسطة | الكسندر برجر |
| ظهرت لأول مرة | 1988 |
| الانضباط في الطباعة | بطة ، ديناميكية ، قوية |
| لغة التنفيذ | LLVM ، بيكوليسب |
| نظام التشغيل | بوسيكس |
| رخصة | معهد ماساتشوستس للتكنولوجيا |
| ملحقات اسم الملف | .ل |
| موقع إلكتروني | بيكوليسب.كوم |
| اللهجات | |
| بديل PicoLisp، miniPicoLisp [1] | |
PicoLisp هي لغة برمجة، وهي لهجة من لغة Lisp . تعمل على أنظمة التشغيل بما في ذلك Linux وغيرها من الأنظمة المتوافقة مع واجهة نظام التشغيل المحمولة (POSIX). ومن أبرز ميزاتها البساطة والحد الأدنى . وهي مبنية على نوع بيانات داخلي واحد : الخلية. وعلى مستوى اللغة، يمكن للمبرمج استخدام ثلاثة أنواع مختلفة من البيانات (أرقام ورموز وقوائم) يتم تمثيلها بواسطة خلايا وتمييزها بواسطة بتات في نهاية الخلية. [2] إنه برنامج مجاني ومفتوح المصدر تم إصداره بموجب ترخيص MIT (X11).
سمات
يمكن للوظائف قبول أنواع وأعداد عشوائية من الحجج. لا تكون وحدات الماكرو مطلوبة إلا في حالات نادرة ويتم تنفيذها باستخدام دالة الاقتباس. لا تتضمن PicoLisp دالة lambda الخاصة بـ Lisp . وذلك لأن دالة الاقتباس تم تغييرها لإرجاع جميع حججها غير المقيمة، وليس فقط حجج carأولها. [3]
من بين الميزات الخاصة وظيفة الإنشاء والقراءة والتحديث والحذف (CRUD) الجوهرية. الرموز الدائمة هي مواطنون من الدرجة الأولى (كائنات)، يتم تحميلها من ملفات قاعدة البيانات تلقائيًا عند الوصول إليها، ويتم كتابتها مرة أخرى عند تعديلها. تتم كتابة التطبيقات باستخدام تسلسل هرمي للفئات من الكيانات والعلاقات .
تتضمن الميزات الأخرى: محرك Prolog ، ومحرك قاعدة البيانات واستعلامات قاعدة البيانات، وقواعد البيانات الموزعة، وتضمين وظائف لغة C واستدعاءات وظائف C الأصلية، وإدارة العمليات الفرعية، والاتصال بين العمليات ، وواجهة المستخدم الرسومية للمتصفح (GUI)، والتدويل والتوطين .
تاريخ
في ثمانينيات القرن العشرين، بدأ تطوير PicoLisp على نظام Macintosh ، وتم استخدامه في تطوير التطبيقات التجارية [ أي؟ ] منذ ذلك الحين. [ بحاجة لمصدر ] يشبه تصميم PicoLisp إلى حد كبير الإصدار الأول من MacLisp وInterlisp وPortable Standard Lisp بشكل أساسي. [4] تم نقله إلى DOS و SCO Unix . منذ عام 1993، تم استخدامه بشكل أساسي على Linux. في منتصف التسعينيات، تمت إضافة وظائف قاعدة البيانات.
تمت كتابة الإصدارات الأولى بمزيج من لغة C ولغة التجميع . في عام 1999، تمت إعادة كتابة أول نسخة من الصفر، بالكامل بلغة C. في عام 2002، تم إصدار هذه النسخة بموجب ترخيص GNU العمومي العام (GNU GPL). في عام 2010، تم تغييره إلى ترخيص MIT/X11.
في عام 2009، تم إصدار الإصدار 64 بت ، وهو عبارة عن إعادة كتابة أخرى، هذه المرة مكتوبة بلغة التجميع العامة، والتي يتم تنفيذها بدورها في PicoLisp. يضيف هذا الإصدار دعمًا للروتينات الفرعية .
في ديسمبر 2010، تم إصدار نسخة Java باسم Ersatz PicoLisp . [5]
في سبتمبر 2014، أعلن برجر عن مشروع PilMCU على قائمة تطوير PicoLisp ، وهو جهد مع جورج أوريس لتنفيذ PicoLisp في الأجهزة بشكل مباشر. [6]
في يوليو 2015، أعلن برجر عن PilOS - نظام التشغيل PicoLisp، وهو نموذج أولي بسيط يعتمد على تعديل PilMCU الذي يستهدف التطبيقات المضمنة. [7] يعمل على أجهزة كمبيوتر x86-64 القياسية، مباشرة من BIOS ويتضمن جميع ميزات PicoLisp 64 بت (باستثناء مكالمات الوظائف الأصلية، نظرًا لحقيقة عدم وجود بيئة أصلية أخرى مثل مكتبة C القياسية)؛ من حيث المبدأ، يعمل كنظام تشغيل خاص به. [8]
في صيف عام 2016، بدأ تطوير PilBox ("PicoLisp Box") - وهو تطبيق Android عام يسمح بكتابة التطبيقات بلغة PicoLisp الخالصة. ولا يزال قيد التطوير والصيانة. [9]
في عام 2021، أعيد تنفيذ PicoLisp في LLVM وتم إصداره باسم pil21 . لغة المصدر التي تم تجميعها إلى LLVM-IR موجودة أيضًا في صيغة PicoLisp.
| 1958 | 1960 | 1965 | 1970 | 1975 | 1980 | 1985 | 1990 | 1995 | 2000 | 2005 | 2010 | 2015 | 2020 | ||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| LISP 1، 1.5، LISP 2 (مهجورة) | |||||||||||||||
| ماكليسب | |||||||||||||||
| إنترليسب | |||||||||||||||
| مدل | |||||||||||||||
| آلة ليسب ليسب | |||||||||||||||
| مخطط | ر5 ار اس | ر6 ار اس | R7RS صغيرة | ||||||||||||
| لا شيء | |||||||||||||||
| ZIL (لغة تنفيذ Zork) | |||||||||||||||
| فرانز ليسب | |||||||||||||||
| اللغة الشائعة | معيار ANSI | ||||||||||||||
| اللغة الليسبية | |||||||||||||||
| مخطط معهد ماساتشوستس للتكنولوجيا | |||||||||||||||
| إكسليسب | |||||||||||||||
| ت | |||||||||||||||
| شيز سكيم | |||||||||||||||
| إيماكس ليسب | |||||||||||||||
| أوتوليسب | |||||||||||||||
| بيكوليسب | |||||||||||||||
| غامبيت | |||||||||||||||
| يوليسب | |||||||||||||||
| إيسليب | |||||||||||||||
| أوبن ليسب | |||||||||||||||
| مخطط PLT | مضرب | ||||||||||||||
| لغة ليسب الجديدة | |||||||||||||||
| جنو جايل | |||||||||||||||
| لغة ليسب المرئية | |||||||||||||||
| كلوجور | |||||||||||||||
| قوس | |||||||||||||||
| ل ف إ | |||||||||||||||
| هاى | |||||||||||||||
مراجع
- ^ "تنزيل PicoLisp". Software Lab . تم الاسترجاع في 18 نوفمبر 2018 .
- ^ برجر، ألكسندر. "الهياكل الداخلية". مختبر البرمجيات . تم الاسترجاع في 18 نوفمبر 2018 .
- ^ "حتى التفاصيل الصغيرة تصنع الفارق!".
- ^ "رد: جذور PicoLisp".
- ^ برجر، ألكسندر (8 مايو 2013). "بديل PicoLisp". مختبر البرمجيات .
- ^ "إعلان: PicoLisp في الأجهزة".
- ^ "PilMCU مات - عاش PilOS!".
- ^ "PicoLisp Wiki: Pilos".
- ^ "PicoLisp PilBox على Google PlayStore".
روابط خارجية
- الموقع الرسمي
- Picolisp على ويكي C2
- مدونة حول البرمجة الوظيفية في PicoLisp
- الإصدار المتداول من PicoLisp
- مستودع PicoLisp على GitHub
