Кіріспе

Функционалдық логикалық бағдарламалау тілі Mercury Autocode

Mercury – нақты қолданысқа арналған функционалдық логикалық бағдарламалау тілі. Бірінші нұсқасы Фергус Хендерсон, Томас Конвей және Золтан Сомоги Мельбурн университетінің компьютерлік ғылымдар кафедрасында, Сомогидің жетекшілігімен әзірленді және 1995 жылдың 8 сәуірінде жарияланды. Mercury – таза декларативтік логикалық бағдарламалау тілі. Ол Prolog және Haskell тілдерімен байланысты. Ол берік, статикалық, полиморфты типтер жүйесімен және берік режимдік және детерминистік жүйемен сипатталады. Ресми Melbourne Mercury компиляторы Unix және Unix-қа ұқсас платформалар үшін, оның ішінде Linux, macOS және Windows үшін қолжетімді.

Шолу

Меркурий логикалық бағдарламалау тілі Prolog негізінде құрылған. Оның синтаксисі және таңдамалы сызықтық нақты сөйлемді шешу (SLD) алгоритмі сияқты негізгі ұғымдары Prolog тілімен бірдей. Оны Prolog тілінің күшті типтері мен режимдері бар таза кіші жиыны деп қарастыруға болады. Сондықтан, ол мүмкіндіктері және жұмыс уақытының тиімділігі тұрғысынан алдыңғы нұсқасымен жиі салыстырылады. Тіл бағдарламалық инженерия принциптерін қолдану арқылы жобаланған. Prolog тілінің бастапқы іске асырылымдарынан айырмашылығы, ол тікелей интерпретацияланбай, жеке компиляция фазасына ие. Бұл бағдарламаны іске қосу алдында көптеген қателерді анықтауға мүмкіндік береді. Оның авторлары Меркурийдің әлемдегі ең жылдам логикалық тіл екенін, айқын артықшылықпен, мәлімдейді. Бірақ ол кейбір бағдарламалау құрылымдарын (мысалы, бірнеше опциялар бойынша ауысу, әдепкі опциясымен бірге) білдіруді қиындатуы мүмкін. Меркурий таза емес функционалдылыққа рұқсат берсе де, ол негізінен шетел тілдеріндегі кодты шақыру тәсілі ретінде қызмет етеді. Барлық таза емес кодтар нақты түрде белгіленуі керек. Әдетте таза емес операциялар (мысалы, кіріс/шығыс) Меркурийде таза құрылымдарды пайдаланып, сызықтық типтер арқылы, барлық қатысты код арқылы жалған әлем мәнін өткізу арқылы көрсетіледі. Меркурийде жазылған танымал бағдарламаларға Меркурий компиляторы және Prince XML форматтаушысы жатады. ODASE бағдарламалық компаниясы сондай-ақ Меркурийді ODASE онтологияға бағытталған бағдарламалық жасақтама платформасын әзірлеу үшін пайдаланады.