کلوژر

کلوژر (به انگلیسی: Clojure) گویشی از زبان برنامه‌نویسی لیسپ است که توسط ریچ هیکی ایجاد شده‌است. این زبان، یک زبان همه‌منظوره تابعی است[6].

کلوژر
الگو برنامه‌نویسیتابعی
طراحی شده توسطریچ هیکی
ظهوریافته در۲۰۰۷ (۲۰۰۷)
انتشار پایدار
۱٫۸ [1]
۱۹ ژانویه ۲۰۱۶ (۲۰۱۶-۰۱-19)
dynamic, strong
بن‌سازه رایانشJVM, CLR, جاوااسکریپت
پروانهپروانه همگانی اکلیپس
.clj, .cljs, .cljc, .edn
وبگاه
متأثر از
سی پلاس‌پلاس,[2] سی شارپ, لیسپ معمولی, ارلنگ, هسکل, متمتیکا,[3] ام‌ال, پرولوگ, اسکیم, جاوا, راکت,[4] روبی[5]
تأثیر گذاشته بر
الیکسیر, هایی, پیکسی, راین

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

    کد کلوژر به بایت‌کد ماشین مجازی جاوا کامپایل می‌شود[7]، و بنابراین می‌توانید از کتابخانه‌های جاوا استفاده کند.

    برنامه‌نویسی هم‌روند

    اکثر زبان‌های مرسوم، ویژگی‌های پایه‌ای هم‌روندی، یعنی ریسمان‌ها و قفل‌ها را در اختیار می‌گذارند. زبان‌هایی مانند جاوا، تعدادی کتابخانه کمکی نیز برای کنترل هم‌روندی اضافه می‌کنند، ولی تغییری اساسی در چگونگی طراحی برنامه‌های همروند ایجاد نمی‌کنند، و تنها میزان کد مورد نیاز را کم می‌کنند[8].

    کلوژر به‌صورت اساسی از همهٔ لحاظها متفاوت است. کلوژر ابزارهای اولیه، ریسمان و قفل، را در اختیار نمی‌گذارد. در عوض، مدل‌های برنامه‌نویسی هم‌روند در کلوژر کاملاً متفاوت است بطوری‌که نیازی به ریسمان‌ها و قفل‌ها نیست[8].

    به علت اینکه داده‌ساختارهای اصلی زبان تغییرناپذیر هستند، می‌توان آن‌ها را بین ریسمان‌های اجرا به اشتراک گذاشت[9].

    مثال‌ها

    Hello World:

    (println "Hello world!")
    

    تعریف یک تابع:

    (defn square [x]
      (* x x))
    
    ریچ هیکی در سان فرانسیسکو

    پیوند به بیرون

    منابع

    This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.