وکیل

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

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






وکالت

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






انحلال

وکالت به یکی از طرق زیر منحل می‌شود:

فوت و جنون و سفه وکیل یا موکل.
عزل وکیل به‌وسیله موکل
استعفای وکیل از سمت وکالت.
از بین رفتن متعلق وکالت






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







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







مزارعه

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

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

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








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







هبه

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

واهب امکان بازگشت از هبه را ولو بدون رضایت متهب (گیرنده مال) دارد مگر در هبه به به اولاد، خواهر و برادر، عمو عمه، زن و یا شوهر.

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

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






جزیه
جزیه (به فارسی: گزیت) به معنی مالیات و خراج است و در اسلام خراجی است که از اهل کتاب گرفته می‌شود تا در قلمرو اسلامی جان و مالشان حفظ شود.






واژه

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






تاریخچه مالیات پیش از اسلام

این بخش از کتاب حسابداری مالیاتی نویسنده ابراهیمی مند انتشارات آوای کلک آورده شده است:

بی شک کمتر کشوری را می توان از لحاظ پیشینه کهن تاریخی یافت که بتواند با ایران رقابت و همآوردی کند. در این میان دوره هخامنشیان (330 –550 پیش از میلاد) یکی از دوره های پر رونق و شکوفای تاریخ ایران است. در این دوره است که پادشاهان کارآمدی مانند کوروش بزرگ (کوروش دوم) و داریوش بزرگ (داریوش اول) خودنمایی کردند و با اندیشه درست خود یکی از شکوفاترین تمدن های بشری را به جهانیان نشان دادند. در سنگ نوشته های هخامنشیان به کلمه باجی(baji) برمی خوریم که برابر با واژه مالیات است که امروزه بکار می بریم. کلمه دیگری که در آن زمان به این معنی بکار می رفته کلمه خراگ (خراج) است. نظر به اینکه مالیات اصلی را باژ یا باجی (باج) می نامیدند، کلمه خراگ (خراج) می بایستی مربوط به هدایا و ارمغان هایی بوده باشد که مردم به میل و رغبت خود می پرداختند. یعنی همان «دورای» یونانی با این تفاوت که در زمان داریوش بزرگ، زمان پرداخت آن مشخص و معین شد. کسنوفون (گزنفون) در مورد اقدامات کوروش در زمینه خراج و مالیات می نویسد: چون (کوروش) برای نگهداری و بهسازی امپراطوری بزرگی که بنیاد نهاده بود نیاز به توان مالی بسیار و نقدینگی فراوانی داشت بنابراین اصلاح وضع مالی مردم و وصول مالیات منظم را در صدر امور پادشاهی خود قرار داد

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

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

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

نوآوریهای داریوش در زمینه امور مالی بنا به نوشته دکتر احتشام بقرار زیر است:

1.داریوش بیشتر نسبت به مالیات مالیات نقدی تمایل نشان می داد تا به مالیات جنسی.

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

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

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

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





استاندار واگذار می گردیده است

مالیات هایی که داریوش در زمان سلطنت خود بر پا نمود تا آخرین دوران حکومت هخامنشیان بی تغییر باقی‌ماند

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






در اسلام

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







قرض‌الحسنه

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







ساختار حقوقی: مبتنی بر رابطه داین و مدیون
ماهیت حقوقی: از عقود لازمه
کاربردها:

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

محدوده زمانی: در مورد بند الف و ب مدت پنج سال و در خصوص بند ج سه سال.
کارمزد: در کلیه موارد حداکثر چهار درصد







در قرآن
عبارت قرض الحسنه در قرآن وارد شده‌است و در مورد قرض‌دادن به خداوند است که قرآن آن را در مورد صدقه به‌کار برده‌است و منظور از آن قرضی است که چند برابر خود نزد خدا ثواب دارد. اما معنای رایجی که اکنون در آن به‌کار برده‌می‌شود قرض بدون ربا است و در قرآن به‌کار نرفته‌است.








قرض

دِیْن یا قرض عبارت از آن چیزی است که به کسی مقروضند. معمولاً این قرض شامل دارایی‌ها است اما ممکن است که الزامات دیگری را نیز دربربگیرد. وقتی در مورد دارایی‌ها سخن می‌گوییم، دین ابزاری برای استفاده از قدرت خرید آینده در حال است قبل از این که پولی به دست آید.

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

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







بدهی

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







عقد بیع

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






بیع در فقه

بیع به معنای فروختن و از مفاهیم عرفیه است و نتیجهٔ آن تملیک عین(مال) به عوض معلوم(مال دیگر) خواهد بود.







عاریه
عاریه در فقه و حقوق ایران به عقد جائزی گفته می‌شود که به موجب آن یک طرف عقد به طرف دیگر اجازه می‌دهد که در زمان معینی از عین مال او به رایگان استفاده کند به نحو و شرطی که عین مال از بین نرود. عاریه دهنده را معیر و عاریه گیرنده را مستعیر می‌گویند.هر چیزی که با استفاده‌اش اصلش از بین نرود می‌تواند موضوع عقد عاریه قرار گیرد.






ریشه نام

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






عاریه در قانون مدنی ایران

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






عقد صلح

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






انواع صلح

صلح به دو قسم زیر تقسیم‌بندی می‌شود:

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







شرایط عقد صلح

عقد صلح برای صحت باید شرایط زیر را دارا باشد:







اهلیت طرفین
موضوع صلح باید مشروعیت و منفعت عقلائی (مالیت) داشته باشد
جهت صلح با ید مشروع باشد
قصد و رضای طرفین نسبت به عقد








رهن

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







جعاله

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








اجاره

اجاره عقدی است که به موجب آن مستاجر مالک منافع عین مستاجره می‌شود، اجاره دهنده را موجر و اجاره کننده را مستاجر و مورد اجاره را عین مستاجره گویند.

←اجاره در لغت از ریشه اجر به معنای رهانیدن، به فریاد رسیدن، چیزی را به فرد دادن می‌باشد. در اصطلاح عقدی است که به موجب آن مستأجر، در برابر مالی که به موجر می‌دهد، برای مدت معین مالک منافع عین مستأجره می‌شود. یعنی همان سلطه و اختیار استفاده مالک را از عین مورد اجاره دارد. بنابراین اجاره عقدی تملیکی و معوض و موقت می‌باشد.






اقسام اجاره

در قانون مدنی، اجاره بر سه قسم است:

۱- اشیاء

۲- حیوانات

۳- اشخاص







اجرائیه سند رهنی

اِجراییه سَنَد رَهنی یکی از اصطلاحات حقوقی و به معنی فروش زودهنگام اجباری یک دارایی است.

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

به موجب مقررات قانون مدنی ایران به مجرد سررسیدن موعد پرداخت دِین و عدم پرداخت بدهی از سوی راهن، مرتهن می‌تواند از دفترخانهٔ تنظیم‌کننده سند، تقاضای صدور اجراییه نماید.

چنانچه ظرف مدت ۶ ماه از تاریخ ابلاغ اجرائیه راهن تقاضای فروش عین مرهونه از طریق حراج را ننماید، با انقضاء مدت ۸ ماه از تاریخ ابلاغ اجرائیه، ملک با تمامی قیمتی که دارد، اگر چه چند برابر بدهی راهن باشد، به موجب سند رسمی به مرتهن انتقال می‌یابد.

در اثر رهن، عین مرهونه وثیقه دین راهن قرار می‌گیرد، و بنابر این رهن‌گیرنده حق ندارد به خانه یا موضوع رهن، خسارتی بزند که باعث کاهش بهای آن شود.

قانون مدنی ایران، دراین زمینه می‌گوید: «راهن نمی‌تواند در رهن تصرفی کند که مانع حق مرتهن باشد، مگر به اذن مرتهن».






حق اولویت نخستین فرزند

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

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








لیزینگ

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

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

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

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








مالیات بر دارایی

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

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






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






تکالیف مستاجر

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






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






منشور
منشور شامل حقوقی است که از جانب اقتدار به دریافت کننده داده می‌شود و بیان می‌کند که جانب اقتدار حق ویژه دریافت کننده را به رسمیت شناخته و به او اجازه اجراء و استفاده از آن حقوق را می‌دهد. در این رابطه به طور معمول جانب اقتدار در موقعیت برتری (حاکمیت) نسبت به دریافت کننده قرار دارد. اصطلاح منشور (به انگلیسی: Charter) برگرفته شده از لاتین است و نخستین بار در زبان فرانسوی کهن مطرح گشته و سپس به زبان انگلیسی و دیگر زبان ها منتقل گشت. امروزه منشور به معنای سندی می‌باشد که حقوق و امتیازات ویژه‌ای را به دریافت کننده اعطا می‌نماید.






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





هزینه استهلاک

هزینه استهلاک، (به انگلیسی: Betterment) دارایی‌های ثابت با گذشت زمان و با استفاده، دچار فرسایش، کهنگی و فرسودگی ناشی از استفاده، خواهند شد و به تدریج فایده خود را از لحاظ انجام دادن عملیات یک مؤسسه، از دست می‌دهند.

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

تعریف استهلاک در حسابداری عبارتست از: سرشکن کردن و تخصیص دادن بهای تمام شده دارایی ثابت، به طریقی معقول و منظم، به دروه استفاده از آن.

عوامل هزینه استهلاک شامل: بهای تمام شده دارایی ثابت، ارزش اسقاط و عمر مفید دارایی می‌باشد. این عوامل برای محاسبه هزینه استهلاک مورد نیاز می‌باشند.






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





شاخص آزادی اقتصاد

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






نحوه درجه بندی شاخص آزادی اقتصاد

۱- مؤسسه فریزر در گزارش آزادی اقتصاد به نظر می‌آید مؤسسه فریزر مستند تر باشد؛ زیرا چند اقتصاددان برند نوبل اقتصاد بر آن نظارت می‌کنند. گزارش سال ۲۰۰۸ آزادی اقتصاد مؤسسه فریزر ۱۴۱ کشور دنیا را بر اساس اطلاعات سال ۲۰۰۶ رده بندی کرده‌است. این مؤسسه در سال ۱۹۷۵ گزارش خود بر اساس آزادی اقتصاد را منتشر کرد . شاخص آزادی اقتصاد فریزر شاخصی است موزون متشکل از ۵ شاخص:







۱- حجم و اندازه دولت
مصرف دولت به عنوان درصد GDB
حجم یارانه‌ها
سرمایه گذاری دولت
نرخ‌های مالیات بر درآمد و حقوق






۲- ساختار قانونی امنیت حقوق مالکیت
استقلال از دستگاه قضایی
حمایت از مالکیت معنوی
دخالت نظامی
یکپارچگی دستگاه قضایی






۳- دسترسی به نقدینگی سالم
رشد نقدینگی
آزادی مالکیت ارزهای خارجی
نرخ تورم فعلی
تغییر تورم در پنج سال اخیر







۴- آزادی تجارت خارجی

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







۵- قوانین مالی، بازار کار و تجارت

میزان مشارکت بانکهای خصوصی و خارجی
محدودیت نرخ سود بانکی
سهم سپرده‌ها در بانکهای خصوصی
محدودیت در قوانین دستمزد و اخراج نیرو
سهم اشتغال زایی دولت

۲- مؤسسه هریتیج شاخص اقتصادی هریتیج از حدود ۵۰ متغیر مستقل اقتصادی که در ۱۰ شاخص دسته بندی شده‌اند محاسبه و ارئه می‌شود. آخرین آمار شاخص آزادی اقتصادی بنیاد هریتیج در سال 2013 نیز منتشر شد
3:10 am
کاربرد برنامه نویسی

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





زبان‌های برنامه نویسی با غالب زبان‌های انسانی تفاوتی دارد و آن این است که نیاز به بیان دقیق تر و کامل تری دارد. هنگام استفاده از زبان‌های طبیعی برای ارتباط با دیگر انسان‌ها، نویسندگان و گویندگان می‌توانند مبهم باشند و اشتباهات کوچک داشته باشند، و همچنان انتظار داشته باشند که مخاطب آنها متوجه شده باشد. اگرچه، مجازا، رایانه‌ها "دقیقاً آنچه که به آنها گفته شده را انجام می‌دهند." و نمی‌توانند "بفهمند" که نویسنده دقیقاً چه کدی مد نظر نویسنده بوده‌است] البته امروزه برنامه‌هایی برای انجام این کار تولید شده‌اند و تلاش‌های بسیاری در این زمینه انجام شده ولی هنوز به نتیجهٔ رضایت بخشی نرسیده است[. ترکیب تعریف زبان، یک برنامه، و ورودی برنامه بطور کامل رفتار خروجی را به هنگام اجرای برنامه (در محدوده کنترل آن برنامه) مشخص می‌کند. برنامه‌های یک رایانه ممکن است در یک فرایند ناپیوسته بدون دخالت انسان اجرا شوند، یا یک کاربر ممکن است دستورات را در یک مرحله فعل و انفعال مفسر تایپ کند.در این حالت "دستور"ها همان برنامه‌ها هستند، که اجرای آنها زنجیروار به هم مرتبطند.به زبانی که برای دستور دادن به برنامه‌ای استفاده می‌شود، زبان اسکریپت می‌گویند. بسیاری از زبان‌ها کنار گذاشته شده‌اند، برای رفع نیازهای جدید جایگزین شده‌اند، با برنامه‌های دیگر ترکیب شده‌اند و در نهایت استعمال آنها متوقف شده‌است. با وجود اینکه تلاش‌هایی برای طراحی یک زبان رایانه" کامل" شده‌است که تمام اهداف را تحت پوشش قرار دهد، هیچ یک نتوانستند بطور کلی این جایگاه را پر کنند. نیاز به زبان‌های رایانه‌ای گسترده از گستردگی زمینه‌هایی که زبان‌ها استفاده می‌شوند، ناشی می‌شود:

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

یک سیر رایج در گسترش زبان‌های برنامه نویسی این است که قابلیت حل مسائلی با درجات انتزاعی بالاتری را اضافه کنند. زبان‌های برنامه نویسی اولیه به سخت‌افزار رایانه گره خورده بودند. همانطور که زبان‌های برنامه نویسی جدید گسترش پیدا کرده‌اند، ویژگی‌هایی به برنامه‌ها افزوده شده که به برنامه نویس اجازه دهد که ایده‌هایی که از ترجمه ساده به دستورات سخت‌افزار دورتر هستند نیز استفاده کند. چون برنامه نویس‌ها کمتر به پیچیدگی رایانه محدود شده‌اند، برنامه‌های آنها می‌تواند محاسبات بیشتری با تلاش کمتر از سوی برنامه نویس انجام دهند. این به آنها این امکان را می‌دهد که کارایی بیشتردر واحد زمان داشته باشند. "پردازنده‌های زبان طبیعی" به عنوان راهی برای ازبین بردن نیاز به زبان‌های اختصاصی برنامه نویسی پیشنهاد شده‌اند. هرچند، این هدف دور است و فواید آن قابل بحث است. "ادسگر دیجسترا" موافق بود که استفاده از یک زبان رسمی برای جلوگیری از مقدمه سازی ساختارهای بی معنی واجب است، و زبان برنامه نویسی طبیعی را با عنوان "احمقانه" رد کرد، "آلن پرلیس" نیز مشابها این ایده را رد کرد. مطابق با متدولوژی نامتجانس استفاده شده توسط langpop.com در سال ۲۰۰۸، ۱۲ زبان پرکاربرد عبارتند از: C, C++, C#, Java, JavaScript, Perl, PHP, Python, Ruby, Shell, SQL, and Visual Basic.



المان‌ها
تمام زبان‌های بزنامه نویسی تعدادی بلوک‌های ابتدایی برای توضیح داده و پردازش یا تبدیل آنها(مانند جمع کردن دو عدد با انتخاب یک عضو از یک مجموعه)دارند. این " عناصرابتدایی" بوسیله قوانین معناشناسی و دستوری تعریف می‌شوند که ساختار و معنای مربوطه را توضیح می‌دهند.
دستور(
syntax)

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

دستور زبان برنامه نویسی معمولاً بوسیله ترکیب عبارات معین(برای ساختار لغوی) و فرم توضیح اعمال(برای ساختار گرامری) تعریف می‌شوند. متن زیر یک گرامر ساده، به زبان lisp است: expression ::= atom | list atom ::= number | symbol number ::= [+-]?['۰'-'۹']+ symbol ::= ['A'-'Za'-'z'].* list ::= '(' expression* ')' این گرامر موارد ذیل را مشخص می‌کند:

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

"۱۲۳۴۵"، "()"، "(a b c۲۳۲ (۱))" مثال‌هایی هستند از دنباله‌های خوش فرم در این گرامر.

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

به عنوان مثال در زبان طبیعی، ممکن نیست به برخی از جملات درست از لحاظ گرامری، معنای خاصی اطلاق کرد و یا ممکن است جمله نادرست باشد:

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

این قسمت از زبان C از نظر دستوری درست است، اما دستوری را انجام می‌دهد که از نظرمعنایی تعریف نشده است(چون p یک اشاره گر خالی است، عمل p->real,p->im معنای خاصی ندارد.) complex *p = NULL; complex abs_p = sqrt (p->real * p->real + p->im * p->im);

گرامر مورد نیاز برای مشخص کردن یک زبان برنامه نویسی می‌تواند با جایگاهش در "سلسله مراتب چامسکی" طبقه بندی شود. دستور اغلب زبان‌های برنامه نویسی می‌تواند بوسیله یک گرامر نوع ۲ مشخص گردد، برای مثال، گرامرهای مستقل از متن.




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


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

یک زبان نوع گذاری شده‌است اگر مشخصات هر عملیات، نوع داده‌های قابل اجرا توسط آن را با نشان دادن نوع‌هایی که برای آنها قابل اجرا نیست، تعیین کند. برای مثال، "این متن درون گیومه قرار دارد" یک رشته‌است. در غالب زبان‌های برنامه نویسی، تقسیم یک رشته با یک عدد معنایی ندارد. در نتیجه غالب زبان‌های برنامه نویسی مدرن ممکن است اجرای این عملیات را توسط برنامه‌ها رد کنند. در برخی زبان‌ها، عبارات بی معنی ممکن است هنگام ترجمه(compile) پیدا شود(چک کننده نوع ایستا)، و توسط کامپایلر رد شود، در حالی که در سایر برنامه‌ها، هنگام اجرا پیدا شود.(چک کننده نوع دینامیک) که به استثنای در حال اجرا منتج شود(runtime exception). حالت خاص زبان‌های نوع دار زبان‌های تک نوعند. این زبان‌ها غالباً اسکریپتی و یا مارک آپ هستند، مانند rexx وSGML و فقط یک داده گونه دارند—غالباً رشته‌های کاراکتری که هم برای داده‌های عددی و هم برای داده‌های سمبلی کاربرد دارند. در مقابل، یک زبان بدون نوع گذاری، مثل اکثر زبان‌های اسمبلی، این امکان را می‌دهد که هر عملیاتی روی هر داده‌ای انجام شود، که معمولاً دنباله‌ای از بیت‌ها با طول‌های متفاوت در نظر گرفته می‌شوند. زبان‌های سطح بالا که بی نوع هستند شامل زبان‌های ساده رایانه‌ای و برخی از انواع زبان‌های نسل چهارم.

در عمل، در حالیکه تعداد بسیار کمی از دیدگاه نظریه نوع، نوع گذاری شده تلقی می‌شوند(چک کردن یا رد کردن تمام عملیات‌ها)، غالب زبان‌های امروزی درجه‌ای از نوع گذاری را فراهم می‌کنند. بسیاری از زبان‌های تولیدکننده راهی را برای گذشتن یا موقوف کردن سیستم نوع فراهم می‌کنند.



نوع گذاری ایستا و متحرک

در نوع گذاری ایستا تمام عبارات نوع‌های خود را قبل از اجرای برنامه تعیین می‌کنند(معمولاً در زمان کامپایل). برای مثال، ۱ و (۲+۲) عبارات عددی هستند؛ آنها نمی‌توانند به تابعی که نیاز به یک رشته دارد داده شوند، یا در متغیری که تعریف شده تا تاریخ را نگه دارد، ذخیره شوند.


زبان‌های نوع گذاری شده ایستا می‌توانند با مانیفست نوع گذاری شوند یا با استفاده از نوع استنباط شوند. در حالت اول، برنامه نویس بیشتر صریحاً نوع‌ها را در جایگاه‌های منتنی مشخص می‌نویسد(برای مثال، در تعریف متغیرها). در حالت دوم، کامپایلر نوع عبارات و تعریف‌ها را بر اساس متن استنباط می‌کند. غالب زبان‌های مسیر اصلی(mainstream) ایستا نوع گذاری شده، مانند C#,C++ و Java، با مانیفست نوع گذاری می‌شوند



نوع گذاری قوی و ضعیف

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

نوع گذاری قوی مانع رخ دادن مشکل فوق می‌شود. تلاش برای انجام عملیات روی نوع نادرست متغیر منجر به رخ دادن خطا می‌شود. زبان‌هایی که نوع گذاری قوی دارند غالباً با نام "نوع-امن" و یا امن شناخته می‌شوند. تمام تعاریف جایگزین برای "ضعیف نوع گذاری شده" به زبان‌ها اشاره می‌کند، مثل perl, JavaScript, C++، که اجازه تعداد زیادی تبدیل نوع داخلی را می‌دهند. در جاوااسکریپت، برای مثال، عبارت ۲*x به صورت ضمنی x را به عدد تبدیل می‌کند، و این تبدیل موفقیت آمیز خواهد بود حتی اگر x خالی، تعریف نشده، یک آرایه، و یا رشته‌ای از حروف باشد. چنین تبدیلات ضمنی غالباً مفیدند، اما خطاهای برنامه نویسی را پنهان می‌کنند.

قوی و ایستا در حال حاضر عموماً دو مفهوم متعامد فرض می‌شوند، اما استفاده در ادبیات تفاوت دارد، برخی عبارت "قوی نوع گذاری شده" را به کار می‌برند و منظورشان قوی، ایستایی نوع گذاری شده‌است، و یا، حتی گیچ کننده تر، منظورشان همان ایستایی نوع گذاری شده‌است. بنابراین C هم قوی نوع گذاری شده و هم ضعیف و ایستایی نوع گذاری شده نامیده می‌شود.



معناشناسی اجرا

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

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


کتابخانه هسته
اغلب زبان‌های برنامه نویسی یک کتابخانه هسته مرتبط دارند(گاهی اوقات "کتابخانه استاندارد" نامیده می‌شوند، مخصوصا وقتی که به عنوان قسمتی از یک زبان استاندارد ارائه شده باشد)، که به طور قراردادی توسط تمام پیاده سازی‌های زبان در دسترس قرار گرفته باشند. کتابخانه هسته معمولاً تعریف الگوریتم‌ها، داده ساختارها و مکانیزم‌های ورودی و خروجی پرکاربرد را در خود دارد. کاربران یک زبان، غالباً با کتابخانه هسته به عنوان قسمتی از آن رفتار می‌کنند، اگرچه طراحان ممکن است با آن به صورت یک مفهوم مجزا رفتار کرده باشند. بسیاری از خصوصیات زبان هسته‌ای را مشخص می‌کنند که باید در تمام پیاده سازی‌ها موجود باشند، و در زبان‌های استاندارد شده این کتابخانه هسته ممکن است نیاز باشد. بنابراین خط بین زبان و کتابخانه هسته آن از زبانی به زبان دیگر متفاوت است. درواقع، برخی زبان‌ها به گونه‌ای تعریف شده‌اند که برخی از ساختارهای دستوری بدون اشاره به کتابخانه هسته قابل استفاده نیستند. برای مثالف در جاوا، یک رشته به عنوان نمونه‌ای از کلاس “java.lang.String” تعریف شده است؛ مشابها، در سمال تاک(smalltalk) یک تابع بی نام(یک "بلاک") نمونه‌ای از کلاس BlockContext کتابخانه می‌سازد. بطور معکوس، Scheme دارای چندین زیرمجموعه مرتبط برای ایجاد سایر ماکروهای زبان می‌باشد، و در نتیجه طراحان زبان حتی این زحمت را نیز تحمل نمی‌کنند که بگویند کدام قسمت زبان به عنوان ساختارهای زبان باید پیاده سازی شوند، و کدام یک به عنوان بخشی ازکتابخانه.


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



خصوصیات

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

تعریف صریح دستور، معناشناسی ایستا، ومعناشناسی اجرای زبان. درحالیکه دستور معمولاً با یک معناشناسی قراردادی مشخص می‌شود، تعاریف معناشناسی ممکن است در زبان طبیعی نوشته شده باشند (مثل زبان 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 در برنامه‌های تعبیه شده و سیستم‌های عامل؛ و بقیه برنامه‌ها معمولاً برای نوشتن انواع دیگر برنامه‌ها کاربرد دارند. روش‌های مختلفی برای سنجش محبوبیت زبان‌ها، هر یک متناسب یا یک ویژگی محوری متفاوت پیشنهاد شده‌است:

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

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

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

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

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