Elis (dasturlash tili) - Alice (programming language)

Elis
ParadigmaKo'p paradigma: majburiy, funktsional, tarqatildi, bir vaqtda
LoyihalashtirilganSaarland universiteti
Birinchi paydo bo'ldi2000; 20 yil oldin (2000)
Barqaror chiqish
1.4 / 2007 yil 3-may; 13 yil oldin (2007-05-03)
Matnni yozishkuchli, statik, xulosa qilingan
OSO'zaro faoliyat platforma
LitsenziyaMIT
Veb-saytwww.ps.uni-saarland.de/ alice[1]
Ta'sirlangan
ML, Oz

Elis ML a dasturlash tili dasturlash tizimlari laboratoriyasi tomonidan ishlab chiqilgan[2] da Saarland universiteti, Saarbruken, Germaniya. Bu lahjasi ning Standart ML, uchun qo'llab-quvvatlash bilan ko'paytirildi dangasa baholash, bir vaqtda (ko'p ishlov berish va tarqatilgan hisoblash orqali masofaviy protsedura qo'ng'iroqlari ) va cheklash dasturlash.

Umumiy nuqtai

Elis uzaytiradi Standart ML uni avvalgisidan ajratib turadigan bir qancha usullar bilan. Aice yordamida asosiy tilning bir qismi sifatida paralellik xususiyatlari mavjud kelajak mustaqil bajarilish ipi tomonidan ta'minlanadigan qiymatni ifodalovchi tip. Kelajakdagi qiymatdan foydalanadigan ip, uni bajaradigan ip hisoblashni tugatmaguncha qiymatga kirishga urinishni bloklaydi. Tegishli kontseptsiya a deb nomlangan va'da, ipning kelajakdagi qiymatini ta'minlashi uchun uni boshqa ipga hisoblashi mumkin. Ma'lumotlar oqimi sinxronizatsiyasini amalga oshirish uchun kelajak va va'da qilingan o'zgaruvchilar qo'llaniladi.

Kabi Xaskell funktsional tili, Elis a imkoniyatini beradi dangasa baholash an'anaviylardan farqli o'laroq dasturlarda strategiya ishtiyoq bilan baholash Standard ML strategiyasi. Haskell sukut bo'yicha dangasa modeldan foydalansa, Elis sukut bo'yicha g'ayratli baholash modelidan foydalanadi va dangasa baholash uchun hisoblash uchun aniq dasturlash bayonotiga muhtoj.

Saarland Universitetidan Elis dasturida oddiy kengaytiriladigan abstrakt mashinadan foydalaniladi (SEAM) virtual mashina. Bu bepul dasturiy ta'minot va xususiyatlari o'z vaqtida kompilyatsiya ga bayt kodi va mahalliy kod uchun x86 arxitekturasi.

Elisning dastlabki versiyalari Mozart dasturlash tizimida (Oz) virtual mashinada (VM) ishlagan va bu Elis bilan o'zaro aloqada bo'lish imkonini bergan. Oz kod.

Elisning masofadan qo'ng'iroq qilish jarayoni virtual mashinaga bog'liq, chunki u hisoblash uchun kodni bitta kompyuterdan boshqasiga yuborishi mumkin.

Misol

Elis Standard ML-ni dangasa baholash va birdamlik uchun bir nechta ibtidoiy narsalar bilan kengaytiradi. Masalan, yordamida iplar yaratilishi mumkin yumurtlamoq kalit so'z. Hisoblash uchun sodda algoritmni ko'rib chiqing Fibonachchi raqamlari:

 qiziqarli fib 0 = 0   | fib 1 = 1   | fib n = fib(n-1) + fib(n-2);

Ning katta qiymatlari uchun n, fib n hisoblash uchun ancha vaqt talab etiladi. Ushbu hisob-kitobni alohida ipda bajarish mumkin

 val x = yumurtlamoq fib n;

O'zgaruvchan x endi so'zda bilan bog'langan kelajak. Amaliyot qiymatini talab qilganda x, u ipni hisoblash bilan tugamaguncha blokirovka qiladi. Parallelizmdan foydalanish uchun fibni quyidagicha ta'riflash mumkin:

 qiziqarli fib 0 = 0   | fib 1 = 1   | fib n = yumurtlamoq fib(n-1) + fib(n-2);

Shuningdek qarang

Adabiyotlar

  1. ^ Elis, DE: Saarland universiteti
  2. ^ "Dasturlash tizimlari laboratoriyasi". Arxivlandi asl nusxasi 2006-10-05 kunlari. Olingan 2006-08-08.

Tashqi havolalar