وقف در قرآن و احادیث

در قرآن کریم کلمهٔ وقف نیامده است، ولی عناوینی مترادف همچون صدقه، خیر، برّ، انفاق، احسان در مواردی از قرآن آمده است، و هر یک از این عناوین بر وقف صدق می‌کند، زیرا وقف، هم صدقه است و هم برّ و نیکی است ولی در عین حال عنوانی خاص برای وقف است، یعنی بین وقف و بین این عناوین عام و خاص مطلق است و وقف عنوانی خاص می‌باشد.





در اکثر قریب به اتفاق احادیث نیز لفظ وقف به کار برده نشده است اما برای تشویق مردم به آن روایات و حدیث‌های متعددی موجود است و ثواب‌های فراوانی برای کسانی که به انجام آن همت بگمارند وعده داده شده است. یکی از این احادیث حدیث «صدقهٔ جاریه» است که در جواهر آمده: در مسالک است و از تذکره نیز حکایت شده و در مهذب‌البارع و تنقیح هم آمده که علماء فرموده‌اند: مراد از صدقه جاریه همان وقف است.






اهمیت وقف در اسلام

یکی از خصوصیات انسان مومن تخصیص دادن قسمتی از مالش برای نیازمندان است «و فی اموالهم حق معلوم* للسائل والمحروم». یکی از بهترین نوع تخصیص مال، وقف است که انسان مومن قسمتی از مالش را در جهت رفع مشکل موسسه‌های خدمات رسانی به اجتماع و نیازمندان وقف می‌کند که دائماً صرف آن شود.






پیشینه در ایران

در اواخر شاهنشاهی ساسانیان بنیادهای نیکوکاری به منظور رستگاری روان در ایران بنیاد شد که پول آن صرف کمک به تنگدستان و احداث تأسیسات عام‌المنفعه می‌شد. همین بنیادها بعدها الگویی برای وقف اسلامی شدند.

در ایران در تشکیلات اداری دورهٔ سامانیان (۲۶۱ – ۳۸۹ هجری) از دیوان موقوفات و یا دیوان اوقاف نام برده شده که کار آن رسیدگی به امور مساجد و اراضی موقوفه بوده‌است.






شرایط وقف

برای انعقاد وقف به جز «شرایط اساسی صحت قراردادها» شرایط خاصی ضروری می‌باشد که عبارت‌اند از:

حبس عین: واقف (وقف دهنده) در مدت وقف، حق هیچ گونه دخل و تصرفی در عین موقوفه ندارد. یعنی واقف حق ندارد که مال موقوفه را بفروشد یا اینکه هرگونه نقل و انتقال حقوقی نسبت به مال موقوفه انجام دهد یا تصرفی در مال موقوفه بکند که منافی وقف باشد.
تسبیل منفعت: ،قف در صورتی صحیح می‌باشد که منظور واقف از وقف حبس عین به منظور قرب الهی و فی سبیل الله باشد.
قابلیت بقای عین: «فقط وقف مالی جایز می‌باشد که با بقای عین بتوان از آن منتفع شد...»(ماده ۵۸ قانون مدنی) بنابراین وقف مالی که در صورت استفاده از آن مال، قابلیت بقا ندارد باطل می‌باشد؛ به عنوان مثال خوراکیها را نمی‌توان وقف نمود.
قبض عین:وقف از عقود تشریفاتی می‌باشد بنابراین وقف زمانی تحقق پیدا می‌کند که واقف عین موقوفه را در اختیار موقوف علیه(کسی که وقف به نفع اوست) یا موقوف علیهم قرار دهد و عین موقوفه به قبض موقوف علیه یا موقوف علیهم درآید.







هدیه

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

هدیه می‌تواند هر چیزی باشد که سبب خشنودی دیگری شود یا از غمش کاسته شود، به‌ویژه خدمتی چون بخشندگی یا مهربانی.






مناسبت‌ها

مردم سراسر جهان به مناسبت‌های گوناگون هدیه می‌دهند یا می‌گیرند، از جمله به مناسبت‌های:

اشتغال
بازنشستگی
تبلیغات
جشن‌‌ها
خانهٔ نو
ره‌آورد سفر (سوغات)
عیدی
زادروز
روز عشق
روز مادر
زایمان
سال نو
سپاسگزاری
عروسی
فارغ‌التحصیلی
قبولی در امتحانات
مجلس ترحیم
مراسم دینی
نامزدی
همکاری
یادبود
دوستی






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





همدلی

همدلی یا هم‌احساسی توانایی درک و اشتراک احساس دیگران با مشاهده وضع حال و هیجان‌های آنان است.
واژه‌شناسی

واژهٔ انگلیسی Empathy نخستین بار در سال ۱۹۰۹ توسط ادوارد بردفورد تیچنر استفاده شد که به منظور ترجمه واژه آلمانی Einfühlungsvermögen ابداع شده بود. در اواخر قرن ۱۹ میلادی پدیده جدیدی توسط تئودور لیپس کشف شد که آن را از انگلیسی به آلمانی Empathie ترجمه کردند که هنوز در آن کشور استفاده می‌شود.





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





فلسفه اخلاق

فلسفه اخلاق شاخه‌ای است از فلسفه که به استدلال درباره پرسش‌های بنیادین اخلاقیات می‌پردازد. درستی و نادرستی امور، شناخت امور خیر و شر، و باز شناسی فضایل، مسائل بنیادین اخلاق را تشکیل می‌دهند. پرسش از این مسائل بنیادین منجر به شکل‌گیری دو حوزه نظری می‌شود: فرا اخلاق و اخلاق هنجاری؛ فلسفه اخلاق این دو حوزه را شامل می‌شود.

فلسفه اخلاق یکی از رویکردهای علم اخلاق است و بدون در نظر گرفتن نقش و اهمیت آن و پیش کشیدن سؤالاتی که این حوزه از فلسفه مطرح می‌کند نمی‌توان فهم کاملی از اخلاق و اخلاقیات کسب کرد. نهایتاً فلسفه اخلاق در شرایط بحرانی یا فوری بیش از دیگر علوم انتزاعی به دادمان نخواهد رسید اما مطمئناً اصول و مسائل اخلاقی که توسط فلسفه اخلاق مورد بررسی قرار می‌گیرند می‌توانند به صورت پیشینی بسیار از رخداد‌ها را ممکن و یا غیر ممکن سازند. به این معنا که ساختار شکل گرفته اخلاقی پیرامون ما (به عنوان دستاورد اندیشه و فلسفه اخلاق)، رخ دادن امور را از صافی اخلاقیات حاکم رد می‌کند و در نتیجه شناخت این محیط اخلاقی به ما در تصمیم گیری‌های موقعی مان کمک فراوان خواهد رساند.






تاریخچه

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

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

افلاطون مکالمات فراوانی در باب فلسفه نوشت و در این آثار اشارات و بررسی‌های ضمنی بسیاری درباره اخلاقیات کرد؛ اما فلسفه اخلاق راه خود را رسماً از زمان ارسطو آغاز کرد. نگارش اخلاق نیکوماخوس شروع تاریخ فلسفه اخلاق است. پس از ارسطو اپیکوریان و رواقیون سردمداران نگرش فلسفی به اخلاق بودند. پس از تحول بزرگ مسیحیت فلسفه اخلاق وارد مسیری جدید شد. آگوستین یکی از تأثیرگذارترین فلاسفه اخلاق بود و با آراء خود به تبیین موضوعات فلسفه اخلاق از منظر مسیحیت کاتولیک پرداخت. در دوران قرون وسطی فلسفه اخلاق رشد روزافزونی داشت اما تنها در مسیر اخلاقیات مسیحی پیش می‌رفت. اوج فلسفه اخلاق در قرون وسطی را می‌توان در آراء توماس آکویناس مشاهده کرد. پس از دوران رنسانس اندک اندک آزادی اندیشه و بیان در جوامع اروپایی نهادینه شد و با وجود مشکلات به جا مانده از دوران تاریکی انقلاب فلسفی آغاز گشت. این انقلاب همان شروع دوران جدید است. دوران مذکور دوران شکوفایی علم و فلسفه بود. تمام فلاسفه بزرگ این دوران درباره اخلاق نظریات مهمی را مطرح ساختند اما قابل توجه‌ترین این فلاسفه باروخ اسپینوزا است. پیش از دوران جدید تمامی فلاسفه به اخلاق رویکردی مبتنی بر فضیلت داشتند. انقلاب اسپینوزا در فلسفه اخلاق تغییر این رویکرد به اخلاق مبتنی بر کردار بود. تأثیر متفکران دوران جدید بر عصر روشنگری غیر قابل انکار است. در پایان دوران روشنگری بارزترین چهره فلسفه اخلاق طول تاریخ یعنی ایمانوئل کانت رخ می‌نماید. در حقیقت کانت مفهوم امروزی فلسفه اخلاق را ساخت. پس از کانتجان استوارت میل و آرتور شوپنهاور علم اخلاق را بیش از پیش متحول ساختند. در قرن بیستم نیز فلاسفه بزرگی در دو شاخه فلسفه تحلیلی و فلسفه قاره‌ای آثار مهمی از خود بر جای گذاشتند.
مسائل

فلسفه اخلاق مانند هر شاخه دیگری از فلسفه، برای پاسخ دادن به سؤالات پیش رویش به تبیین و توضیح پاره ای مسائل می پردازد. این مسائل می توانند مخصوص اخلاق باشند و یا می توانند مسائلی باشند که هم در اخلاق و هم در علوم دیگر مورد بررسی است. اصولاً فلسفه اخلاق رابطه نزدیکی با فلسفه سیاسی، فلسفه حقوق، جامعه شناسی و روان شناسی دارد؛ در نتیجه بعضی از مسائل فلسفه اخلاق مسائل حوزه‌های مذکور نیز هستند.






خیر و شر

مبنای اخلاقیات بر این عقیده استوار است که آن چه برای انسان‌های (و یا حتی حیوانات) به خصوصی خوب یا بد است، نه فقط از دیدگاه آنان، بلکه از دیدگاه فراگیرتری خوب یا بد می باشد.

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

خیر می تواند به واسطه روابط علّی، هنجاری و مفهومی با درستی در ارتباط باشد. با این حال امکان عدم رابطه میان این دو مفهوم نیز وجود دارد. تبیین روابط خیر و درستی نیز در نظریات مختلف به اشکال مختلف بیان شده است.






اخلاق

علم اخلاق شاخه‌ای از علوم انسانی∗ است که موضوع آن شناخت مصادیق ارزش ها و بیانگر راه های کسب فضائل و ترک رذائل اخلاقی است. در فلسفه اخلاق دربارهٔ خوب یا بد بودن یک امر چند گرایش وجود دارد. یک گرایش تنها در صورتی یک امر را خوب می‌داند که نتیجه‌(ها)یی دلخواه به همراه داشته باشد(نتیجه گرایی/پیامدگرایی/غایت گروی) اما گرایشی دیگر بدون رد نتیجه‌های دلخواه خوب بودن یک امر را ذاتی می‌داند (وظیفه گرایی). برخی از ادیان گرایش دوم در اخلاق را پذیرفته و ادعا می نمایند. در اخلاق دین‌مدار این نتیجه‌ها ممکن است در جهان دیگر که فرامادی است نیز اتفاق بیافتند اما در اخلاق نا-دین‌مدار رخداد نتیجه‌های دلخواه برای مثلا جامعهٔ انسانی تنها در جهان مادی مد نظر است. در این اخلاق ریز الگوهای اخلاقی و این‌که چه اموری نتیجه‌هایی دلخواه برای مثلا جامعهٔ انسانی دارند، ممکن است با اجماع روانشناسان و جامعه‌شناسان برجسته تعیین شود نه متولیان دین.






واژه‌شناسی

اخلاقیات در دو زمینه به کار می روند،اوّل: تمییز فردی (خوب از بد) و دوم: روش‌های رفتاری که گاه به عنوان «عرف رفتاری» نهادینه شده در یک گروه فرهنگی، مذهبی، اجتماعی یا فلسفی شناخته می شود. اخلاقیات فردی با اهداف درست یا غلط، انگیزه‌ها یا اعمال تعریف و تمییز داده می شوند؛ اهدافی که آموخته شده اند، ایجاد شده اند و یا از طرف اشخاصی که در گروه هستند، توسعه یافته اند.

در زبان فرانسه واژه اخلاقیات به معنای آداب و رسوم نیز به کار می رود. تعریف فرهنگ لاروس (le Petit Larousse) از اخلاقیات:

Morale به لاتین (mores, mœurs):

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

همچنین فرهنگ فرانسه روبر (Le Petit Robert) اینگونه تعرف شده است: اخلاقیات: علم خوبی و بدی، اصول رفتار؛ تئوری رفتار انسانی به مثابه تکالیفی برای رسیدن به خوبی.

علم اخلاقیات، مجموعه اشکال مختلف خُلق و خوی یک شخص، تعریف کننده یک رفتار. اخلاقیات اغلب به یک سنت آرمانی وابسته است (مدل کانتی) که بین چیزی که هست و چیزی که باید باشد، تمایز ایجاد می کند، در حالیکه آداب و رسوم وابسته به یک سنت مادی گرا است (مدل اسپینوزی) که تنها به دنبال پیشبرد واقعیت‌های موجود برای دستیابی به خوشبختی همگانی، از طریق رفتار منطقی است.

از دیدگاه درست‌رفتاری (déontologie)، اخلاقیات در مورد نظام تکالیفی که باید در یک حرفه انجام شود، بحث می شود.

از دیدگاه زبان عامی و فنی اخلاق به سه معنی به کار می‌رود∗

خُلق یعنی خوی، طبع، سجیه، عادت∗، و جمع آن اخلاق است.
صفت اخلاقی: عامل انجام یک عمل اخلاقی در شرایط خاص، به طور ناخودآگاه و شرطی∗ مثل بخشندگی و دروغگویی
عمل اخلاقی: آن نوع عمل که بتوان در مورد خوب یا بد بودن آن قضاوت کرد. می‌تواند آگاهانه یا بی اختیار و عادتی(در اثر یک خلق) باشد . مثل یک بار بخشیدن و دروغ گفتن و ...
7:06 pm
خصوصیات

یک زبان برنامه نویسی باید تعریفی فراهم کند که کاربران و پیاده کننده‌های زبان می‌توانند از آن استفاده کنند تا مشخص کنند که رفتار یک برنامه درست است. با داشتن کد منبع: خصوصیات یک زبان برنامه نویسی چندین قالب می‌تواند بگیرد، مانند مثال‌های زیر:





تعریف صریح دستور، معناشناسی ایستا، ومعناشناسی اجرای زبان. درحالیکه دستور معمولاً با یک معناشناسی قراردادی مشخص می‌شود، تعاریف معناشناسی ممکن است در زبان طبیعی نوشته شده باشند (مثل زبان C)، یا معناشناسی قراردادی(مثل StandardML ,Scheme)
توضیح رفتار یک مترجم برای زبان(مثل C,fortran). دستور و معناشناسی یک زبان باید از این توضیح استنتاج شوند، که ممکن است به زبان طبیعی یا قراردادی نوشته شود.
پیاده سازی منبع یا مدل. گاهی اوقات در زبان‌های مشخص شده(مثل: prolog,ANSI REXX).دستور و معناشناسی صریحاً در رفتار پیاده سازی مدل موجودند.


پیاده سازی

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

خروجی یک کامپایلر ممکن است با سخت‌افزار و یا برنامه‌ای به نام مفسر اجرا شود. در برخی پیاده سازی‌ها که از مفسر استفاده می‌شود، مرز مشخصی بین کامپایل و تفسیر وجود ندارد. برای مثال، برخی پیاده سازی‌های زبان برنامه نویسی بیسیک کامپایل می‌کنند و سپس کد را خط به خط اجرا می‌کنند.

برنامه‌هایی که مستقیماً روی سخت‌افزار اجرا می‌شوند چندین برابر سریعتر از برنامه‌هایی که با کمک نرم‌افزار اجرا می‌شوند، انجام می‌شوند.

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



تاریخچه
پیشرفت‌های اولیه

اولین زبان برنامه نویسی به قبل از رایانه‌های مدرن باز می‌گردد. قرن ۱۹ دستگاه‌های نساجی و متون نوازنده پیانو قابل برنامه نویسی داشت که امروزه به عنوان مثال‌هایی از زبان‌های برنامه نویسی با حوزه مشخص شناخته می‌شوند. با شروع قرن بیستم، پانچ کارت‌ها داده را کد گذاری کردند و پردازش مکانیکی را هدایت کردند. در دهه ۱۹۳۰ و ۱۹۴۰، صورت گرایی حساب لاندای آلونزو چرچ و ماشین تورینگ آلن تورینگ مفاهیم ریاضی بیان الگوریتم‌ها را فراهم کردند؛ حساب لاندا همچنان در طراحی زبان موثر است.

در دهه ۴۰، اولین رایانه‌های دیجیتال که توسط برق تغذیه می‌شدند ایجاد شدند. اولین زبان برنامه نویسی سطح بالا طراحی شده برای کامپیوتر پلانکالکول بود، که بین سال‌های ۱۹۴۵ و ۱۹۴۳ توسط کنراد زوس برای ز۳ آلمان طراحی شد.

کامپیوترهای اوایل ۱۹۵۰، بطور خاص ÜNIVAC ۱ و IBM ۷۰۱ از برنامه‌های زبان ماشین استفاده می‌کردند. برنامه نویسی زبان ماشین نسل اول توسط نسل دومی که زبان اسمبلی نامیده می‌شوند جایگزین شد. در سال‌های بعد دهه ۵۰، زبان برنامه نویسی اسمبلی، که برای استفاده از دستورات ماکرو تکامل یافته بود، توسط سه زبان برنامه نویسی سطح بالا دیگر: FORTRAN,LISP , COBOL مورد استفاده قرار گرفت. نسخه‌های به روز شده این برنامه‌ها همچنان مورد استفاده قرار می‌گیرند، و هر کدام قویا توسعه زبان‌های بعد را تحت تاثیر قرار دادند. در پایان دهه ۵۰ زبان algol ۶۰ معرفی شد، و بسیاری از زبان‌های برنامه نویسی بعد، با ملاحظه بسیار، از نسل algol هستند. قالب و استفاده از زبان‌های برنامه نویسی به شدت متاثر از محدودیت‌های رابط بودند.



پالایش

دوره دهه ۶۰ تا اواخر دهه ۷۰ گسترش مثال‌های عمده زبان پرکاربرد امروز را به همراه داشت. با این حال بسیاری از جنبه‌های آن بهینه سازی ایده‌های اولیه نسل سوم زبان برنامه نویسی بود:

APL برنامه نویسی آرایه‌ای را معرفی کرد و برنامه نویسی کاربردی را تحت تاثیر قرار داد.
PL/i(NPL) دراوایل دهه ۶۰ طراحی شده بود تا ایده‌های خوب فورترن و کوبول را بهم پیوند دهد.
در دهه ۶۰، Simula اولین زبانی بود که برنامه نویسی شئ گرا را پشتیبانی می‌کرد، در اواسط دهه۷۰. Smalltalk به دنبال آن به

عنوان اولین زبان کاملاً شئ گرا معرفی شد.

C بین سال‌های ۱۹۶۹ تا ۱۹۷۳ به عنوان زبان برنامه نویسی سیستمی طراحی شد و همچنان محبوب است.
Prolog، طراحی شده در ۱۹۷۲، اولین زبان برنامه نویسی منطقی بود.
در ۱۹۷۸ ML سیستم نوع چند ریخت روی لیسپ ایجاد کرد، و در زبان‌های برنامه نویسی کاربردی ایستا نوع گذاری شده پیشگام شد.

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

دهه‌های ۶۰ و ۷۰ مناقشات بسیاری روی برنامه نویسی ساخت یافته به خود دیدند، و اینکه آیا زبان‌های برنامه نویسی باید طوری طراحی شوند که آنها را پشتیبانی کنند.

"ادسگر دیکسترا" در نامه‌ای معروف در ۱۹۶۸ که در ارتباطات ACM منتشر شد، استدلال کرد که دستورgoto باید از تمام زبان‌های سطح بالا حذف شود.

در دهه‌های ۶۰ و ۷۰ توسعهٔ تکنیک‌هایی صورت گرفت که اثر یک برنامه را کاهش می‌داد و در عین حال بهره وری برنامه نویس و کاربر را بهبود بخشید. دسته کارت برای ۴GL اولیه بسیار کوچکتر از برنامهٔ هم سطح بود که با ۳GL deck نوشته شده بود.




یکپارچگی و رشد

دهه ۸۰ سال‌های یکپارچگی نسبی بود. C++ برنامه نویسی شئ گرا و برنامه نویسی سیستمی را ترکیب کرده بود. ایالات متحده ایدا(زبان برنامه نویسی سیستمی که بیشتر برای استفاده توسط پیمان کاران دفاعی بود) را استاندارد سازی کرد. در ژاپن و جاهای دیگر، هزینه‌های گزافی صرف تحقیق در مورد زبان نسل پنجم می‌شد که دارای ساختارهای برنامه نویسی منطقی بود. انجمن زبان کاربردی به سمت استانداردسازی ML و Lisp حرکت کرد. به جای ایجاد مثال‌های جدید، تمام این تلاش‌ها ایده‌هایی که در دهه‌های قبل حلق شده بودند را بهتر کرد.

یک گرایش مهم در طراحی زبان در دهه ۸۰ تمرکز بیشتر روی برنامه نویسی برای سیستم‌های بزرگ از طریق مدول‌ها، و یا واحدهای کدهای سازمانی بزرگ مقیاس بود. مدول-۲، ایدا. و ML همگی سیستم‌های مدولی برجسته‌ای را در دهه ۸۰ توسعه دادند. با وجود اینکه زبان‌های دیگر، مثل PL/i، پشتیبانی بسیار خوبی برای برنامه نویسی مدولی داشتند. سیستم‌های مدولی غالباً با ساختارهای برنامه نویسی عام همراه شده‌اند.

رشد سریع اینترنت در میانه دهه ۹۰ فرصت‌های ایجاد زبان‌های جدید را فراهم کرد. Perl، در اصل یک ابزار نوشتن یونیکس بود که اولین بار در سال ۱۹۸۷ منتشر شد، در وب‌گاه‌های دینامیک متداول شد. جاوا برای برنامه نویسی جنب سروری مورد استفاده قرار گرفت. این توسعه‌ها اساساً نو نبودند، بلکه بیشتر بهینه سازی شده زبان و مثال‌های موجود بودند، و بیشتر بر اساس خانواده زبان برنامه نویسی C بودند. پیشرفت زبان برنامه نویسی همچنان ادامه پیدا می‌کند، هم در تحقیقات و هم در صنعت. جهت‌های فعلی شامل امنیت و وارسی قابلیت اعتماد است، گونه‌های جدید مدولی(mixin، نماینده‌ها، جنبه‌ها) و تجمع پایگاه داده.

۴GLها نمونه‌ای از زبان‌هایی هستند که محدوده استفاده آنها مشخص است، مثل SQL. که به جای اینکه داده‌های اسکالر را برگردانند، مجموعه‌هایی را تغییر داده و بر می‌گردانند که برای اکثر زبان‌ها متعارفند. Perl برای مثال، با "مدرک اینجا" خود می‌تواند چندین برنامه ۴GL را نگه دارد، مانند چند برنامه جاوا سکریبت، در قسمتی از کد پرل خود و برای پشتیبانی از چندین زبان برنامه نویسی با تناسب متغیر در "مدرک اینجا" استفاده کند.




سنجش استفاده از زبان

مشکل است که مشخص کنیم کدام زبان برنامه نویسی بیشتر مورد استفاده‌است، و اینکه کاربرد چه معنی می‌دهد با توجه به زمینه تغییر می‌کند. یک زبان ممکن است زمان بیشتری از برنامه نویس بگیرد، زبان دیگر ممکن است خطوط بیشتری داشته باشد، و دیگری ممکن است زمان بیشتری از پردازنده را مصرف کند. برخی زبان‌ها برای کاربردهای خاص بسیار محبوبند. برای مثال: کوبول همچنان در مراکزداده متحد، غالباً روی کامپیوترهای بزرگ توانا است؛ fortran در مهندسی برنامه‌های کاربردی، C در برنامه‌های تعبیه شده و سیستم‌های عامل؛ و بقیه برنامه‌ها معمولاً برای نوشتن انواع دیگر برنامه‌ها کاربرد دارند. روش‌های مختلفی برای سنجش محبوبیت زبان‌ها، هر یک متناسب یا یک ویژگی محوری متفاوت پیشنهاد شده‌است:

شمارش تعداد تبلیغات شغلی که از آن زبان نام می‌برند.
تعداد کتاب‌های آموزشی و شرح دهندهٔ آن زبان که فروش رفته‌است.
تخمین تعداد خطوطی که در آن زبان نوشته شده اند- که ممکن است زبان‌هایی را که در جستجوها کمتر پیدا می‌شوند دست کم گرفته شوند.
شمارش ارجاع‌های زبان(برای مثال، به اسم زبان) در موتورهای جستجوهای اینترنت.

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

این حقیقت که این دسته بندی ممکن است در راستای محورهای مختلف انجام شوند، این وظیفه را پیچیده تر می‌کند؛ برای مثال، جاوا هم یک زبان شیءگرا(چون به برنامه نویسی شیءگرا تشویق می‌کند) و زبان همزمان(چون ساختارهای داخلی برای اجرای چندین جریان موازی دارد) است. پایتون یک زبان اسکریپتی شیءگراست.

در نگاه کلی، زبان‌های برنامه نویسی به مثال‌های برنامه نویسی و یک دسته بندی بر اساس محدوده استفاده تقسیم می‌شوند. مثال‌ها شامل برنامه نویسی رویه‌ای، برنامه نویسی شیءگرا، برنامه نویسی کاربردی، وبرنامه نویسی منطقی؛ برخی زبان‌ها ترکیب چند مثالند. یک زبان اسمبلی مثالی از یک مدل مستقیم متضمن معماری ماشین نیست. با توجه به هدف، زبان‌های برنامه نویسی ممکن است همه منظوره باشند، زبان‌های برنامه نویسی سیستمی، زبان‌های اسکریپتی، زبان‌های محدوده مشخص، زبان‌های همزمان/ گسترده(و یا ترکیب اینها). برخی زبان‌های همه منظوره تا حد زیادی برای اهداف آموزشی طراحی شده‌اند.

یک زبان برنامه نویسی ممکن است با فاکتورهای غیر مرتبط به مثال‌های برنامه نویسی دسته بندی شود. برای مثال، غالب زبان‌های برنامه نویسی کلمات کلیدی زبان انگلیسی را استفاده می‌کنند، در حالیکه تعداد کمی این کار را نمی‌کنند. سایر زبان‌ها ممکن است براساس داخلی بودن یا نبودن دسته بندی شوند.
ساعت : 7:06 pm | نویسنده : admin | بامداد نویس | مطلب قبلی
بامداد نویس | next page | next page