بهترین زبان برنامه نویسی برای شروع

زبانهای سطح بالا را نیز می توان بر اساس نوع مدل برنامه نویسی که استفاده می کنند (رویه ای ، عملکردی ، شی گرا و غیره) طبقه بندی کرد. زبانهای نشانه گذاری نیز وجود دارند که زبانهای برنامه نویسی نیستند ، بهترین زبان برنامه نویسی برای شروع اما برای ساختار یا شکل دادن به یک متن استفاده می شوند. امروزه تعداد زیادی زبان وجود دارد که کم و بیش در کارهای مختلف تخصص دارند.عناصرهمه زبان های برنامه نویسی دارای برخی عناصر آموزشی اولیه برای توصیف داده ها و فرایندها یا تحولات اعمال شده بر روی آن داده ها هستند (مانند مجموع دو عدد یا انتخاب عنصری که بخشی از یک درس مشترک است). این عناصر اولیه با قواعد نحوی و معنایی تعریف می شوند که به ترتیب ساختار و معنی آنها را توصیف می کنند.حواغلب عناصر نحو به گونه ای ساخته می شوند که با رنگ های مختلف برجسته شوند تا خواندن آن آسان تر شود. این مثال در پایتون نوشته شده است. شکل قابل مشاهده یک زبان برنامه نویسی به عنوان نحو شناخته می شود. اکثر زبانهای برنامه نویسی صرفاً متنی هستندبه این معنی که از دنباله های متنی که شامل کلمات ، اعداد و علائم نگارشی است ، شبیه به زبانهای نوشتاری طبیعی استفاده می کنند. از سوی دیگر ، برخی از زبان های برنامه نویسی وجود دارند که بیشتر دارای بهترین زبان برنامه نویسی برای شروع ماهیت گرافیکی هستند و از روابط بصری بین نمادها برای تعیین برنامه استفاده می کنند.نحو زبان برنامه نویسی ترکیب احتمالی نمادهایی را که یک برنامه نحوی صحیح را تشکیل می دهند ، توصیف می کند. معنایی که به ترکیبی از نمادها داده می شود توسط معناشناسی آنها (اعم از رسمی یا بخشی از کد سخت مرجع پیاده سازی) اداره می شود. از آنجا که اکثر زبانها متنی هستند ، این مقاله به نحو متن می پردازد.نحو زبان های برنامه نویسی به طور کلی با استفاده از ترکیبی از عبارات منظم (برای ساختار واژگانی) و نماد (برای ساختار دستوری) تعریف می شود. در اینجا نمونه ای از یک دستور زبان ساده است که از Lisp به دست آمده است:این دستور زبان موارد زیر را مشخص می کند:یک عبارت می تواند یک اتم یا یک لیست باشد.یک اتم می تواند بهترین زبان برنامه نویسی برای شروع یک عدد یا نماد باشد.یک عدد یک دنباله پیوسته از یک یا چند رقم اعشاری است ، که به طور اختیاری با علامت بعلاوه یا علامت منفی منصوب می شود.نماد یک حرف است که به دنبال آن صفر یا بیشتر کاراکتر (به استثنای فاصله) وجود دارد.یک لیست دو جفت پرانتز است که باز و بسته می شوند و عبارات صفر یا بیشتر در وسط قرار دارند.چند نمونه از توالی های خوب شکل گرفته بر اساس این دستور زبان:همه برنامه های درست از لحاظ نحوی از نظر معنایی درست نیستند. بسیاری از برنامه های درست نحوی با قوانین زبان ناسازگاری دارند.و ممکن است (بسته به مشخصات زبان و استحکام اجرا) منجر به خطای ترجمه یا اجرا شود. در برخی موارد ، چنین برنامه هایی ممکن است رفتار نامحدودی از خود نشان دهند. همچنین ، حتی زمانی که بهترین زبان برنامه نویسی برای شروع یک برنامه به خوبی در یک زبان تعریف شده باشد ، باز هم می تواند معنایی داشته باشد که آن چیزی که شخص نویسنده آن سعی در ایجاد آن داشته ، نیست.برای مثال ، با استفاده از زبان طبیعی ، ممکن نیست بتوان به یک جمله معتبر دستوری معنا داد یا جمله نادرست است:"ایده های سبز و محو شده با خشم و عصبانیت می خوابند" یک جمله دستوری خوب شکل گرفته است اما به طور معمول معنی قابل قبول ندارد."پپت لیسانس متاهل است" از نظر دستوری نیز به خوبی شکل گرفته است اما معنایی را بیان می کند بهترین زبان برنامه نویسی برای شروع که نمی تواند درست باشد.قطعه زیر در زبان C از لحاظ نحوی صحیح است ، اما عملیاتی را اجرا می کند که از نظر معنایی تعریف نشده است (از آنجا که یک اشاره گر است ، عملیات معنی ندارند):اگر اعلامیه نوع اول حذف شود ، برنامه خطای کامپایل را ایجاد می کند ، ایرانیان سایبر زیرا متغیر "تعریف نمی شود. اما این برنامه هنوز از نظر نحوی درست است ، زیرا اعلانات نوع فقط اطلاعات معنایی را ارائه می دهند.دستور زبان مورد نیاز برای تعیین زبان برنامه نویسی را می توان بر اساس موقعیت آن در سلسله مراتب چامسکی طبقه بندی کرد.نحو اکثر زبان های برنامه نویسی را می توان با استفاده از دستور زبان نوع 2 مشخص کرد ، بهترین زبان برنامه نویسی برای شروع یعنی آنها گرامرهای بدون زمینه هستند. برخی از زبانها ، از جمله ، دارای ساختارهایی هستند که امکان اجرا در مرحله تجزیه و تحلیل را فراهم می آورند. زبانهایی که به ساختارهایی اجازه می دهند که برنامه نویس بتواند رفتار تجزیه کننده را تغییر دهد