For faster navigation, this Iframe is preloading the Wikiwand page for چند ریختی زیرنوعی.

چند ریختی زیرنوعی

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

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

در زبان‌های برنامه نویسی تابعی غالباً امکان استفاده از زیرنوع وجود دارد. در نتیجه ، جبر لاندای ساده-نوعی با اضافه کردن نوع رکورد شاید ساده‌ترین نظام نظری است که در آن مفاهیم مفیدی از زیرنوع را می‌توان تعریف و مطالعه کرد.[۲] از آنجا که در جبر حاصل ممکن است جملات بیش از یک نوع داشته‌باشند، جبر حاصل دیگر یک نظریه نوع "ساده" نیست. از آنجا که زبانهای برنامه نویسی تابعی ، به طور تعریف ، از توابع معنایی پشتیبانی می‌کنند، که می‌توانند در رکوردها نیز ذخیره شوند ، نوع رکوردها واستفاده از زیرنوعی می‌تواند برخی از ویژگی های برنامه نویسی شی گرا را میسر کند. به طور معمول ، زبانهای برنامه نویسی تابعی برخی از شکل های هرچند معمولاً محدود چندریختی پارامتری را نیز ارائه می دهند. به طور نظری ،بررسی تعامل این دو ویژگی مورد توجه است. یک نظام نظری معمول سیستم F <sub id="mwIg"><:</sub> است . حساب های منطقی مختلفی که سعی در جذب ویژگی های نظری برنامه نویسی شی گرا دارند می‌توانند از سیستم F < :استخراج شوند.

منابع

[ویرایش]
  1. Copestake, Ann. Implementing typed feature structure grammars. Vol. 110. Stanford: CSLI publications, 2002.
  2. Cardelli, Luca. A semantics of multiple inheritance. In G. Kahn, D. MacQueen, and G. Plotkin, editors, Semantics of Data Types, volume 173 of Lecture Notes in Computer Science, pages 51–67. Springer-Verlag, 1984. Full version in Information and Computation, 76(2/3):138–164, 1988.
{{bottomLinkPreText}} {{bottomLinkText}}
چند ریختی زیرنوعی
Listen to this article

This browser is not supported by Wikiwand :(
Wikiwand requires a browser with modern capabilities in order to provide you with the best reading experience.
Please download and use one of the following browsers:

This article was just edited, click to reload
This article has been deleted on Wikipedia (Why?)

Back to homepage

Please click Add in the dialog above
Please click Allow in the top-left corner,
then click Install Now in the dialog
Please click Open in the download dialog,
then click Install
Please click the "Downloads" icon in the Safari toolbar, open the first download in the list,
then click Install
{{::$root.activation.text}}

Install Wikiwand

Install on Chrome Install on Firefox
Don't forget to rate us

Tell your friends about Wikiwand!

Gmail Facebook Twitter Link

Enjoying Wikiwand?

Tell your friends and spread the love:
Share on Gmail Share on Facebook Share on Twitter Share on Buffer

Our magic isn't perfect

You can help our automatic cover photo selection by reporting an unsuitable photo.

This photo is visually disturbing This photo is not a good choice

Thank you for helping!


Your input will affect cover photo selection, along with input from other users.

X

Get ready for Wikiwand 2.0 🎉! the new version arrives on September 1st! Don't want to wait?