کرل (زبان برنامه‌نویسی)

کرل زبان برنامه‌نویسی (به انگلیسی: Curl) شی‌گرای انعکاسی برای برنامه‌های کاربردی وب تعاملی است، هدف انتقال راحت بین قالب بندی و برنامه‌نویسی است. این امکان باعث می‌شود که به اشیاء پیچیده در اسناد ساده بدون نیاز به سوئیچ بین زبان‌های برنامه‌نویسی و پایگاههای پیشرفته بدهد.

کرل
الگو برنامه‌نویسیپارادایم برنامه‌نویسی: برنامه‌نویسی شیءگرا, زبان نشانه‌گذاری
طراحی شده توسطSteve Ward, مؤسسه فناوری ماساچوست
توسعه‌دهندهCurl, Inc. , Sumisho Computer Systems Corp. , SCSK Corporation
ظهوریافته در۱۹۹۸
انتشار پایدار
۸٫۰٫۳
۲۹ نوامبر ۲۰۱۲ (۲۰۱۲-۱۱-۲۹)
strong
سیستم‌عاملچندسکویی: مایکروسافت ویندوز, لینوکس, اواس ده
وبگاه
گویش
none
متأثر از
اچ‌تی‌ام‌ال, جاوااسکریپت, لیسپ

    Curl در ویکی‌کتاب (انگلیسی)

    زبان در صدد است به رفع یک مشکل طولانی مدت: بلوک‌های مختلف ساختمان که هر سند وب مدرن را تشکیل می‌دهند که اغلب نیاز به روش‌های بسیار مختلف پیاده‌سازی دارد: زبان‌های مختلف، ابزارهای مختلف، قالب‌های مختلف، اغلب گروه‌ها کاملاً متفاوت هستند. در نهایت - و اغلب دشوارترین – جمع آوری همه این بلوکها در ارتباط با یکدیگر به شیوه‌ای سازگاراست. کرل تلاش می‌کند برای اجتناب ازین مشکلات توسط فراهم آوردن یک رابط نحوی و معنایی سازگار در تمام سطوح ایجاد محتوای وب: از HTML ساده تابرنامه‌نویسی شی گرا پیچیده.

    کرل ترکیبی از متن نشانه گذاری (مشابه HTML) اسکریپتی (مشابه جاوا اسکریپت)، و محاسبات سنگین امری (مانند جاوا، #C، c++)در یک چارچوب واحد و یکپارچه است. به همین خاطر در طیف وسیعی از شرکت‌های داخلی، B2B B2C و برنامه‌های کاربردی استفاده می‌شود.

    کرل یک زبان نشانه گذاری شبیه HTML-است که، متنی ساده به عنوان متن نشان داده شده‌است، در همان زمان، کرل شامل یک زبان برنامه‌نویسی شی گرا است که از ارث بری چندگانه پشتیبانی می‌کند. برنامه‌های کاربردی کرل به رعایت تفکیک اطلاعات، سبک و رفتار که HTML، شیوه نامه آبشاری (CSS)، و جاوا اسکریپت وضع کرده‌اند احتیاجی ندارد، همچنین آن سبک برنامه‌نویسی را می‌توان در صورت دلخواه در کرل استفاده کرد.

    در حالی که زبان کرل را می‌توان به عنوان یک جایگزین HTML برای ارائه متن فرمت شده‌استفاده کرد، محدودهٔ توانایی‌های آن در روش کامپایل، نوع داده‌ای قوی، سیستم زبان برنامه‌نویسی شی گرا هم می‌باشد.

    هر دو تألیف (در سطح HTML) و ساختار برنامه در کرل را می‌توان در کد کاربر توسعه داد. زبان طراحی شده برنامه‌های کاربردی کرل می‌توانند به کد محلی ماشین مشتری توسط کامپایلر همزمان و اجرا با سرعت بالا ترجمه کنند.

    مشاهده شده‌است که اپلتهای کرل از کرلRTE که یک محیط زمان اجرا با یک افزونه برای مرورگر وب است استفاده می‌کنند. در حال حاضر، در مایکروسافت ویندوز، لینوکس، و MacOS پشتیبانی می‌شود.

    کرل یکی از ویژگی‌های اپلتهای جدا را برای چندین سال داشت، که یک اپلت وب گسترده شده‌است که به صورت مستقل روی کامپیوتر کاربر، یک پنجره مرورگر اجرا می‌شود همانند سیلورلایت ۳ و Adobe AIR. همچنین مرورگر مخصوص سایت را مشاهده کنید. اپلتهای کرل نیز می‌توانند نوشته شوند به طوری که آن‌ها را آفلاین اجرا خواهد کرد. در واقع، IDE کرل یک برنامه نوشته شده به کرل است.

    نحو

    یک اپلت سادهٔ کرل برای hello world هست:

    {Curl 5.0, 6.0, 7.0 applet}
    {text
       color = "blue",
       font-size = 16pt,
       Hello World}

    این کد را اجرا خواهد کرد در صورتی که کاربر حداقل یکی از نسخه‌های حلقه ۵٫۰، ۶٫۰، یا ۷٫۰ نصب کرده باشد.

    کرل هر دو ماکروها و متن روش را علاوه بر روش‌های ناشناس و روش‌ها نام برده فراهم می‌کند. یک جایگزین با استفاده از پاراگراف متن روش خواهد بود:

    {paragraph
       paragraph-left-indent=۰٫۵in,
       {text color = "red", font-size = 12pt,
         Hello}
       {text color = "green", font-size = 12pt,
         World}}

    به تازگی این سبک از طرح توسط "سازندگان" در زبان Groovy برای JVM به تصویب رسیده است، اما همچنین برای کاربران CSS و Tcl / TK آشنا است. بیشترین امکانات را برای برنامه‌های کاربردی وب در حال حاضر از طریق ترکیبی از کتابخانه‌های جاوا اسکریپت + HTML + CSS در زبان کرل پیاده‌سازی کرد، از جمله ویژگی‌های معمول آن با نمونه اولیه + script.aculo.us مانند پانل آکوردئون همراه می‌شود. کرل مجموعه فراخوانی مجدد در شیوه نیز توسط Groovy پذیرفته شده‌است:

    {CommandButton width=100pt,
       height = 50pt,
       label = {center {bold Invokes an event handler when clicked}},
       control-color = "orange",
       || Attach the following event handler to this CommandButton
       {on Action do
           {popup-message
               title = "Your Message",
               "This is a user message dialog."
           }

    }}

    پیشنهاد کرل استفاده از نوار عمودی در برخی تغییرات است. ساده‌ترین به شرح زیر است:

    {text A comment can be on a line by itself,
    || A comment on a line by itself
    or it can be at the end || A comment on the same line as code
    of a line.}

    کرل‌های نشانه گذاری به عنوان سبک وزن

    از آنجا که کرل هر دو روش متن تعریف شده توسط کاربر و شیوه را فراهم می‌کند، کرل می‌تواند به آسانی به عنوان نشانه گذاری بسیار سبک وزن و دامنه خاص استفاده شود. مزیت عمده بر متن نشانه گذاری HTML این است که متن رابه عنوان مثال، utf-۸ پشتیبانی می‌کند. و متن را در یک ویرایشگر یونیکد فعال می‌کند بدون هیچ گونه صرف نظر کردن از کاراکتر (مانند جاوا اسکریپت، کرل یونیکد پسند است.) شعر به عنوان مثال خواهد بود:

    {poem || wraps entire poem
       {stanza  || first verse here in any language
       }
       {stanza  || another verse here in any language
       }
    }

    که در ابتدا می‌تواند با تعریف شعر و نشانه گذاری بند به عنوان فرمت‌های متن پاراگراف اجرا شود. بند می‌تواند بیشتر تصفیه شده که شامل یک لنگر ناوبری مخفی برای ناوبری صفحه با استفاده از کرل {قسمت} که خود یک روش متنی است.

    همان نشانه گذاری می‌تواند برای نتایج مختلف استفاده شود، به عنوان یک سبک می‌تواند متن را در یک چارچوب قابل مشاهده کرده و در دیگر نامرئی باشد. کرل همچنین به ورود فایل سطح بالااجازه می‌دهدبه طوری که یک متن منبع در نشانه گذاری می‌توان در فایل پدر و مادرهای مختلف گنجانده شود. در آموزش، به عنوان مثال، یک نفر می‌تواند یک فایل منبع سوالات آزمون ایجاد، و آن را در هر دو دانشجو و یک نسخه معلم از متن قرار دهد.

    جستارهای وابسته

    • Homoiconicity: کرل هم یک زبان برنامه‌نویسی و فرمت داده است

    منابع

      پیوندهای اضافه

      در ویکی‌کتاب کتابی با عنوان: Curl وجود دارد.
      This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.