برنامه نویسی به زبان ارلنگ

ارلنگ زبان برنامه نویسی تابعی و همروند است

برنامه نویسی به زبان ارلنگ

ارلنگ زبان برنامه نویسی تابعی و همروند است

برنامه نویسی به زبان ارلنگ

در این وبلاگ مطالب مربوط به ارلنگ و الیکسیر منتشر خواهد شد

۲ مطلب در مهر ۱۳۹۴ ثبت شده است

  • ۰
  • ۰

در این بخش تصمیم دارم تا در مورد انواع فرمت های داده در ارلنگ صحبت کنم. ابتدا با کامنت شروع می کنم. همانطور که ممکن است به مفهوم کامنت آشنا باشید، کامنت ها بخش هایی از کد هستند که نوشته می شوند اما توسط مفسر و کامپایلر خوانده نمی شوند. کامنت ها تنها برای خوانا کردن کد و توضیحات داخل کد برای برنامه نویس استفاده می شود. کامنت در زبان ارلنگ با "%" شروع می شود بدین معنی که خطی با این علامت آغاز شود کامنت خواهد بود.

% this is comment

ارلنگ دارای محیطی بنام REPL است که چیزی شبیه شل در لینوکس و محیط کامند در ویندوز است. برای استفاده از آن در لینوکس فرمان erl را تایپ کنید. در ویندوز کافی است این برنامه را از شاخه برنامه های خود اجرا نمائید.

متغیر ها در زبان ارلنگ با حروف بزرگ آغاز می شود. در ارلنگ در پایان هر عبارت باید "." گذاشت. برای مثال خط زیر مقدار 7 را به متغیر X نسبت می دهد:

X = 7.

شما به هر متغیر می توانید تنها یکبار مقدار بدهید، این نخستین تفاوت برنامه نویسی فانکشنال با زبانهای شی گرا می باشد. برای مثال چنانچه شما بخواهید مقدار 9 را به X  بدهید پیغام خطای زیر را دریافت خواهید کرد:

 

** exception error: no match of right hand side value 9

برای مقدار دهی نیاز به مشخص کرد نوع داده نیست بنابرین شما می توانید هر مقداری خواستید به هر متغیر بدهید برای مثال می توانید مقدار اعشاری وارد نمائید.

اتم ها نوع دیگری از داده هستند که در ظاهر شبیه کلمه هستند اما مقدار رشته ئی ندارند. اتم ها ثابت هایی هستند که می توانید از آنها استفاده کنید. در استفاده از آن ها دقت کنید زیرا اتم ها توسط آشغال جمع کن ارلنگ حذف نمی شوند و ابدی هستند.

Y = hello.

توپل ها گروهی از داده ها را در خود جای می دهند برای ایجاد آنها از { استفاده کنید. برای نمونه خط زیر یک توپل که حاوی دو مقدار عددی است را نشان می دهد:

Point = {7,8}.

قابلیت زیبای ارلنگ استخراج مقادیر از عبارات است برای مثال شما می توانید با استفاده از دستور زیر مقادیر داخل Point را در متغیر های جدید قرار دهید:

{X,Y} = Point.

با انجام این کار X برابر 7 و Y برابر 8 خواهد بود.

لیست ها آرایه هایی از مغادیر مختلف هستند. برای ایجاد یک لیست کافیست از ] استفاده کنید. برای مثال مانند زیر عمل کنید:

L = [1,2,3,4,5]

با استفاده از | شما می توانید راس یک لیست را از باقی آن جدا کنید برای مثال:

[H|T] = L.

که در این صورت خواهیم داشت:

H = 1 , T = [2,3,4,5]

ارلنگ نوع رشته ندارد و این یکی از ضعف های این زبان است در حقیقت رشته ها با استفاده از لیستی از اعداد که شماره حروف در جدول کاراکتر ها هستند تعریف می شوند:

[72, 101, 108, 108, 111] = "Hello".

 

  • مهدی حسینی مقدم
  • ۰
  • ۰

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

برای برنامه نویسی به زبان ارلنگ و الیکسیر ویرایش گر ها و محیط های توسعه زیادی موجود است. برای مثال اینتلی جی افزونه های مربوط به ارلنگ را دارد که امکانات خوبی ارائه می دهد. با این وجود من سعی می کنم از ویرایش گر VIM استفاده کنم و با استفاده از کمی تغییرات آن را برای محیط ارلنگ آماده کنم. 

ابتدا ویم را با استفاده از فرمان زیر نصب کنید:

sudo apt-get install vim

ویرایشگر ویم قابلیت افزدون ماژول های مختلف را دارد برای این منظور ابتدا نیاز است یک ماژول خاص جهت افزودن سایر ماژول های برنامه نویسی به آن اضافه کنیم. انتخاب من pathogen است. برای نصب آن فرامین زیر اجرا کنید:

mkdir -p ~/.vim/autoload ~/.vim/bundle && \

curl -LSso ~/.vim/autoload/pathogen.vim https://tpo.pe/pathogen.vim

سپس فایل vimrc. را که در پوشه خانه شما قرار دارد را ویرایش کنید. برای رفتن به خانه از فرمان cd ~ استفاده کنید. چنانچه این فایل موجود نبود آن را ایجاد کنید و سپس محتویات زیر را آن را قرار دهید:

execute pathogen#infect()

syntax on

filetype plugin indent on

حالا همه چیز آماده است برای نصب ماژول ارلنگ. برای این منظور فرامین زیر را اجرا کنید:

cd ~/.vim/bundle && \

git clone https://github.com/jimenezrick/vimerl.git

حال هر زمان شما فایلی را با پسوند erl باز کنید VIM کلمات و علائم زبان ارلنگ را با رنگ منحصر بفرد نشان می دهد.

  • مهدی حسینی مقدم