Aldor - Aldor

Aldor
ParadigmaKo'p paradigma: ob'ektga yo'naltirilgan, funktsional, majburiy, qaram yozilgan, mantiq
LoyihalashtirilganRichard Dimik Jenks, Barri Trager, Stiven Vatt, Jeyms Davenport, Robert Sutor, Skott Morrison
TuzuvchiTomas J. Vatson tadqiqot markazi
Birinchi paydo bo'ldi1990; 30 yil oldin (1990)
Barqaror chiqish
1.0.3
Ko'rib chiqish versiyasi
1.1.0
PlatformaAxiom kompyuter algebra tizimi
OSLinux, Solaris, Windows
LitsenziyaAldor Public 2.0, Apache 2.0
Fayl nomi kengaytmalari.al, .as
Veb-saytwww.aldor.org
Mayor amalga oshirish
Axiom kompyuter algebra tizimi
Ta'sirlangan
A #, Paskal, Xaskell

Aldor a dasturlash tili. Bu voris A # kengaytma tili sifatida Axiom kompyuter algebra tizimi.

Aldor imperativ, funktsional va ob'ektga yo'naltirilgan Xususiyatlari. Bu ishlab chiqilgan turdagi tizimga ega,"Aldor dasturlash tili". Aldor.org. Olingan 12 fevral 2017. turlarini birinchi darajali qiymat sifatida ishlatishga imkon beradi. Aldor sintaksisiga katta ta'sir ko'rsatiladi Paskal, lekin u ixtiyoriy ravishda indentatsiyaga sezgir bo'ladi bo'shliq belgilar va tashqi qoidalar, kabi Python. Amaldagi dasturda u tuzilgan, ammo interaktiv tinglovchi ta'minlangan.

Aldor sifatida tarqatiladi bepul va ochiq manbali dasturiy ta'minot, ostida Apache litsenziyasi 2.0.

Misollar

The Salom dunyo dasturi quyidagicha ko'rinadi:

# shu jumladan "aldor"# shu jumladan "aldorio"stdout << "Salom Dunyo!" << yangi qator;

Bog'liq turlarga misol (foydalanuvchi qo'llanmasidan):

#o'z ichiga oladi "aldor"#o'z ichiga oladi "aldorio"#qoziqsumlist(R: ArithmeticType, l: Ro'yxat R): R ==     s: R := 0;    uchun x yilda l takrorlang s := s + x    sImport dan Ro'yxat Butun son, Butun son, Ro'yxat SingleFloat, SingleFloatstdout << sumlist(Butun son, [2,3,4,5]) << yangi qatorstdout << sumlist(SingleFloat, [2.0, 2.1, 2.2, 2.4]) << yangi qator

99 shisha pivo:

#o'z ichiga oladi "aldor"#o'z ichiga oladi "aldorio"Import dan Butun son, Ip;Bob(n: Butun son): Ip == {    b: Ip := "shisha";    agar n ~= 1 keyin b := b + "s";    b + "pivo";}asosiy(): () == {    n: Butun son := 99;    otw: Ip := "devorda";    - tiyilish    esa n > 0 takrorlang {        stdout << n << Bob(n) << otw << ", " << n << Bob(n) << "." << yangi qator;        stdout << "Bittasini tushirib, aylanib o'ting".;        n := n - 1;        agar n > 0 keyin stdout << n;        boshqa stdout << "boshqa emas; boshqa ... bo'lmaydi; Endi yo'q";        stdout << Bob(n) << otw << "." << yangi qator;        stdout << yangi qator;    }    - oxirgi oyat    stdout << "Boshqa emas; boshqa ... bo'lmaydi; Endi yo'q" << Bob(n) << otw << ", boshqa emas; boshqa ... bo'lmaydi; Endi yo'q" << Bob(n) << "." << yangi qator;    stdout << "Do'konga borib, yana bir oz sotib oling";    n: Butun son := 99;    stdout << n << Bob(n) << otw << "." << yangi qator;}asosiy();

Tashqi havolalar