Curl (dasturlash tili) - Curl (programming language)

Jingalak
Curl logo.gif
Paradigmako'p paradigma: ob'ektga yo'naltirilgan, belgilash
LoyihalashtirilganStiv Uord, MIT
TuzuvchiCurl, Inc., Sumisho Computer Systems Corp., SCSK korporatsiyasi
Birinchi paydo bo'ldi1998
Barqaror chiqish
8.0.10 / 30 avgust 2019; 14 oy oldin (2019-08-30)
Matnni yozishkuchli
OSLinux, MacOS, Windows
Veb-saytwww.jurl.com
Lahjalar
yo'q
Ta'sirlangan
HTML, JavaScript, Lisp

Jingalak a aks ettiruvchi ob'ektga yo'naltirilgan dasturlash tili interaktiv uchun veb-ilovalar uning maqsadi formatlash va dasturlash o'rtasida yumshoq o'tishni ta'minlashdir. Bu dasturlash tillari yoki ishlab chiqish platformalari o'rtasida almashinuvga ehtiyoj sezmasdan murakkab ob'ektlarni oddiy hujjatlarga kiritish imkonini beradi. Curl dasturi dastlab faqat tarjimondan iborat edi, ammo keyinchalik kompilyator qo'shildi.

Curl matnni belgilashni birlashtiradi (kabi HTML ), skript (xuddi shunday) JavaScript ) va og'ir hisoblash texnikasi (kabi) Java, C #, yoki C ++ ) bitta yagona doirada. U bir qator ichki korxonalarda qo'llaniladi, B2B va B2C ilovalar.

Curl dasturlari Curl RTE, a yordamida ko'rib chiqiladigan Curl appletlarida to'planishi mumkin ish vaqti muhiti bilan plagin uchun veb-brauzerlar. Hozirda u qo'llab-quvvatlanadi Microsoft Windows. Linux va macOS 2019 yil 25 martda tashlab yuborilgan.[1] Curl-ni qo'llab-quvvatlaydi "alohida dasturlar", bu brauzer oynasidan mustaqil ravishda foydalanuvchining ish stolida ishlaydigan veb-o'rnatilgan dastur Silverlight 3 va Adobe AIR.

SCSK 2019-03-25 kunlari Curl Linux va MacOS-dagi yangi versiyalarini to'xtatishini e'lon qildi, ya'ni Curl endi Linux va MacOS orqali 8.0.8 versiyasidan ishlamaydi.[2]

Arxitektura

Curl tili uzoq vaqtdan beri davom etib kelayotgan muammoni hal qilishga urinmoqda: har qanday zamonaviy veb-hujjatni tashkil etuvchi turli xil bloklar ko'pincha amalga oshirishning turli xil usullarini talab qiladi: turli tillar, turli xil vositalar, turli xil ramkalar, ko'pincha umuman boshqa jamoalar. Eng so'nggi va ko'pincha eng qiyin to'siq bu bloklarning barchasini bir-biri bilan izchil ravishda aloqa qilishiga olib keldi. Curl veb-tarkib yaratishning barcha darajalarida izchil sintaktik va semantik interfeysni ta'minlash orqali ushbu muammolarni yonma-yon tashlamoqchi: oddiy HTML dan murakkabgacha ob'ektga yo'naltirilgan dasturlash.

Curl - bu belgilash tili HTML kabi - ya'ni oddiy matn matn sifatida ko'rsatiladi; shu bilan birga, Curl qo'llab-quvvatlaydigan ob'ektga yo'naltirilgan dasturlash tilini o'z ichiga oladi ko'p meros. Curl ilovalari ma'lumotlarning, uslubning va xatti-harakatlarning HTML-ning ajralishini kuzatishi shart emas, Kaskadli jadvallar (CSS) va JavaScript-ni o'rnatgan, ammo agar xohlasak, Curl-da dasturlashning ushbu uslubidan foydalanish mumkin.

Curl tili formatlangan matnni taqdim etish uchun HTML o'rnini bosuvchi vosita sifatida ishlatilishi mumkin bo'lsa-da, uning qobiliyatlari kompilyatsiya qilingan, kuchli terilgan va ob'ektga yo'naltirilgan tizim dasturlash tilining qobiliyatlariga qadar o'zgarib turadi.[3] Curl-ning mualliflik darajasi (HTML darajasi) va dasturlash konstruktsiyalari foydalanuvchi kodida kengaytirilishi mumkin. Til Curl dasturini mijoz mashinasining mahalliy kodiga tuzish uchun mo'ljallangan hozirda kompilyator va yuqori tezlikda yugurish. Curl applet-lari ham yozilishi mumkin, shunda ular tarmoqdan uzilganda off-layn ishlaydi (vaqti-vaqti bilan ulangan hisoblash ). Aslida Curl IDE Curl-da yozilgan dastur.

Sintaksis

HelloWorld uchun oddiy Curl applet bo'lishi mumkin

 {Jingalak 7.0, 8.0 applet} {matn    rang = "ko'k",    shrift hajmi = 16pt,    Salom Dunyo}

Agar foydalanuvchi Curl 7.0 yoki 8.0 versiyalaridan kamida bittasi o'rnatilgan bo'lsa, ushbu kod ishlaydi.

Curl ikkalasini ham ta'minlaydi makrolar noma'lum protseduralar va nomlangan usullardan tashqari matn protseduralari, matn protsedurasidan foydalanishning alternativasi paragraf bo'lardi:

 {paragraf    paragraf-chap-indent = 0,5in,    {matn rang = "qizil", shrift hajmi = 12pt,      Salom}    {matn rang = "yashil", shrift hajmi = 12pt,      Dunyo}}

Yaqinda ushbu uslub uslubi "quruvchilar" tomonidan qabul qilingan Groovy JVM uchun til, lekin CSS yoki Tcl / Tk foydalanuvchilari uchun ham yaxshi tanish. JavaScript kutubxonalari + HTML + CSS kombinatsiyalari orqali amalga oshirilayotgan veb-ilovalar uchun aksariyat xususiyatlar Curl tilida allaqachon mavjud, shu jumladan odatda bog'liq xususiyatlar Prototip + script.aculo.us akkordeon oynalari kabi.

Curl qayta qo'ng'iroqlarni Groovy tomonidan qabul qilingan tarzda o'rnatadi:

 {Buyruq tugmasi kengligi = 100pt,    balandlik = 50pt,    yorliq = {markaz {qalin Chaqiradi an tadbir ishlov beruvchi qachon chertdi}},    nazorat rang = "apelsin",    || Biriktiring The quyidagi tadbir ishlov beruvchi ga bu Buyruq tugmasi    {kuni Amal qil        {popup-message            sarlavha = "Sizning Xabar ",            "Bu bu a foydalanuvchi xabar dialog oynasi. "        }    }}

Curl sharhlari vertikal chiziqni bir nechta o'zgarishlarda ishlatadi. Eng sodda:

 {matn Izoh satrda o'z-o'zidan bo'lishi mumkin, || Satrga sharh o'z-o'zidan yoki oxirida bo'lishi mumkin || Bir satr kodi bilan bir qatorda sharh.}

Engil belgi sifatida burish

Curl foydalanuvchi tomonidan belgilangan matn protseduralari va uslublar jadvallarini taqdim etganligi sababli, Curl domenga xos engil markirovka sifatida osonlikcha ishlatilishi mumkin. Oddiy matnli HTML belgisidan katta ustunligi shundaki, matnni kodlashni UTF-8 ga o'rnatish mumkin va matn Unicode-ga asoslangan muharrirga hech qanday belgidan qochmasdan kiritiladi (JavaScript kabi, Curl Unicode bilan do'st). She'riyat misoli:

 {she'r || butun she'rni o'raydi {stanza || har qanday tilda birinchi oyat bu erda} {stanza || bu erda har qanday tilda boshqa oyat}}

Dastlab she'rni va misrani belgilashni paragraf matni formati sifatida belgilash orqali amalga oshirish mumkin. Stanzaning o'zi matn protsedurasi bo'lgan Curl {destination} yordamida sahifani navigatsiya qilish uchun maxfiy navigatsiya langarini o'z ichiga olishi mumkin.

Xuddi shu belgi turli xil natijalar uchun ishlatilishi mumkin, chunki matnni bitta kontekstda ko'rinadigan, boshqasida esa ko'rinmaydigan qilib uslublash mumkin. Curl shuningdek, yuqori darajadagi fayllarni kiritishga ruxsat beradi, shunda belgilashdagi manba matni turli xil ota-ona fayllariga kiritilishi mumkin. Masalan, ta'lim sohasida test savollarining manba faylini yaratib, uni o'quvchiga ham, o'qituvchiga ham yozish mumkin.

Shuningdek qarang

Adabiyotlar

  1. ^ "Curl RTE mahsulotlarining qo'llab-quvvatlanadigan operatsion tizimlariga o'zgartirishlar". SCSK korporatsiyasi. Arxivlandi asl nusxasidan 2019-05-13. Olingan 2020-04-01.
  2. ^ http://www.curl.com/release/2019/20190325_1.html
  3. ^ M. Xostetter; D. Kranz; C. urug '; C. Terman; S. Uord. "Curl: Internet uchun yumshoq qiyalik tili". Kompyuter fanlari bo'yicha MIT laboratoriyasi. Arxivlandi asl nusxasi 2008-12-24 kunlari. Olingan 2005-12-20.

Tashqi havolalar