hotchpotch/wikipedia-multilingual-ir-pairs huggingface dataset:
مينجي
مينجي (بالإنجليزية:Mingi) هو مصطلح بجنوب إثيوبيا. ويطلق على الأطفال الذين يعانون من تشوهات جسدية ملحوظة مثل ظهور الأسنان العلوية قبل الأسنان السفلية، التوائم والأطفال المولودين خارج إطار الزواج. يعتبر هؤلاء الأطفال نجسين وبالتالي قادرين على جلب اللعنات إلى الناس.
إذا أعتبر الطفل منجي فإن القبيلة تقوم بقتله إما بالتجويع أو بالإغراق في النهر. وأحيانا يتم التخلص من هؤلاء الأطفال إما عن طريق وضع التراب في أفواههم والخنق أو ترك الأطفال في الغابة. يتخذ كبار السن في القبيلة قرارًا باعتبار الطفل مينجي ولكن تنفيذ عملية القتل يتم من قبل أفراد آخرين من القبيلة.
في يوليو من عام 2012 حظرت قبيلة كارو رسميًا ممارسة مينجي، لكنها لا تزال جزءًا نشطًا من نظام الإيمان عند بعض أفراد القبائل. يُعتقد أن ما يصل إلى 686,000 فرد لا يزالون يمارسونها سراً.
دون خوان مانويل
خوان مانويل، أمير بليانة أو دون خوان مانويل (بالإسبانية: Don Juan Manuel)‏ (إسكالونا، 5 مايو 1282- قرطبة، 13 يونيو 1348) كان كاتباً إسبانياً، وفضلا عن ذلك هو إنفانتي (أمير) قشتالة وليون، ويعد أشهر كتّاب النثر الخيالي في العصور الوسطى، ولا سيما عمله الروائي الكونت لوكانور، وهو مجموعة حكايات ومواعظ تتداخل مع أدب الحكمة.
حمل لقب دوق وأمير بليانة وسيد إسكالونا، بينيافييل، كوير، إلش، كارتاخينا، لوركا، كاستيلو دي غراسيمونيوزا، الكوثير، سالميرون، فالديوليفاس، والمنيرة في وقت واحد. وكان أيضاً رئيس الديوان في عهد الملك فرناندو الرابع والملك ألفونسو الحادي عشر، والقائم بإدارة وأعمال الديوان في حدود الأندلس ومملكة مورسيا. وخلال المرحلة الأخيرة من بقاء ابن أخيه القاصر ألفونسو الحادي عشر من قشتاله تحت الوصاية، شارك الأميرين فيليب من قشتاله وخوان الأعور الوصاية على الحكم.
دون خوان مانويل حياته
ولد دون خوان مانويل في قصر إسكالونا في مقاطعة طليطلة. وفي رسالته الأخيرة المؤرخة في كاستيو دي غاثريمونيوس، الثاني عشر من تشرين الأول عام 1348، يظهر جلياً أن وفاته كانت بعد الخامس من أيار وهو التاريخ المعتمد رسمياً لوفاته.
ولكونه ابن الأمير مانويل من قشتالة، فهو إذن ابن شقيق الملك ألفونسو العاشر الحكيم وحفيد فرناندو الثالث القديس. توفي والده في 1283 ووالدته في 1290 حين كان في الثامنة من العمر وأصبح الملك سانتشو الرابع وصيا عليه، ورث عن والده القرية الكبيرة في بليانة، بإلإضافة إلى قرى إسكالونا وبينيافيل. وفي عام 1330، حصل على لقب أمير بليانة مدى الحياة هدية من ألفونسو الرابع من أراغون، وأصبح لقباً متوارثاً بعد وفاته.
دون خوان مانويل حياته
سيرته معروفة بفضل أبحاث أندريس خيمينيث سولير. تلقى تعليما يليق بنبيل في فنون ركوب الخيل والصيد والمبارزة. واهتم مؤدبوه بتعليمه اللاتينية والتاريخ والقانون واللاهوت؛ ويذكر ذكرياته هذه في الفصل 67 من كتابه «الولايات». على الرغم من أنه قد أعلن عن جهله في بعض أعماله، غير أن ذلك كان بياناً تقليدياً للتعبير عن التواضع محاولاً أن يشارك جمهوره الجهل بأسلوب أدبي؛ ولكنه في الواقع كان حكيما في المعارف الموسوعية، عارفاً باللاتينية والإيطالية، على الرغم من عدم معرفته اليونانية. وكان متحيزاً لدينه ومرتبطاً بجمعية القديس دومينيك.
وتضمنت معرفته الأدبية قراءة قصائد من أدب رجال الدين (مثل كتاب الاسكندر وكتاب أبولونيو، والمعالجات الأدبية لرامون لول، كتاب ألفونسو العاشر (خاصةً تاريخ إسبانيا)، العديد من الكتب الفقهية مثل التأديب الكهنوتي لبيدرو ألفونسو، مجموعة الأمثال وأقوال الحكماء المترجمة عن لغات شرقية أو من اللاتينية للقشتالية (مثل كليلة ودمنة، السندباد...الخ).
دون خوان مانويل حياته
في سن الثامنة فقد والديه وورث عنه إرثاً هائلاً؛ في سن الثانية عشر شارك في حرب لصدّ هجوم عربي من غرناطة إلى مورسيا. وناصر دون خوان مانويل في صراع الأسر الحاكمة في قشتالة عقب وفاة دون فيرناندو دي لاثيردا المولود الأول لألفونسو العاشر الحكيم، لأن والده كان يفعل ذلك أيضاً، فمنحه الملك حمايته ردّاً على ولائه.
تزوج ثلاث مرات، وكان يختار زوجاته لأسباب سياسية واقتصادية، ثم سعى لتزويج أبنائه من أفراد من عائلات مالكة. أولى زوجاته كانت إيزابيل أبنة خايمي الثاني ملك مايوركا، تزوجها عام 1303 لكنها توفيت بعد عامين. وحين توفي الملك سانتشو الرابع أخلف وعده بحماية الملكة ماريا دي موليناالوصية على ملك المستقبل فرناندو الرابع، لأنهمارهقوه في الطلبات، فلم يخلص لها وسعى للتحالف مع خايمي الثاني ملك أراغون، ثم طلب يد ابنته كونستانس عام 1303، الرغم أنها كانت مازالت طفلة وتزوجها عام 1311، عندما بلغت الثانية عشر من العمر. وحين كان الملك ألفونسو الحادي عشر قاصراً شارك في الوصاية على المملكة حتى أجبره الملك نفسه على التنازل عن منصبه.
دون خوان مانويل حياته
في أكتوبر 1325 عيّنه ألفونسو الحادي عشر على حدود الأندلس. وفي يوم 29 من شهر آب كسب معركة غوادالهورسيه ضد القائد عثمان (اوزمين) والغرناطيين، وهي معركة استشهد فيها ثلاثة آلاف مسلم. وفي عهد ألفونسو الحادي عشر ظهرت قلقه وتمرده، فقد أغضبه الملك لـ طلاق أبنته كونستانس وأعلن الحرب عليه بالتحالف مع ملك غرناطة. وبعد عودة السلام بينهما استعاد منصبه في مورسيا. تزوج مرة أخرى بعد أن ترمّل من بلانكا نونيث دي لارا. ثم عاد لمواجهة الملك ألفونسو الحادي عشر بعد أن رفض إرسال قواته لدعمه في جبل طارق، وبعد مصالحة جديدة، وجد مرة أخرى حجة جديدة ضد الملك، فاتهمه بالحؤول دون زواج ابنته كونستانس من إنفانتي بيدرو دي البرتغال الذي سيكون ملك البرتغال في المستقبل باسم بيدرو الأول، ثم حصل على عفو ملكي في الوقت المناسب للمشاركة في معركة سالادو ضد الدولة المرينية ثم احتل لاحقاً الجزيرة الخضراء.
دون خوان مانويل حياته
فقد أصبح دون خوان مانويل أحد أغنى وأقوى الرجال في عصره، وكان في جيشه وحده ألف فارس، حتى أنه صاغ عملة خاصة به لفترة من الوقت كما يفعل الملوك. لذلك كان له مصنع لصك النقود في قريته الكانياباتيه في مدينة كوينكا، وهو النشاط الذي أزعج ألفونسو كما أزعج ملوك أراغون، يقال حول قصة هذه العملات أنه وضع على أحد وجوهها «سانتا أورسا» وعلى الوجه الآخر رسمة تشير إلى أبنته كونستانس، وجمع طوال حياته بين نشاطه ككاتب وفارس نبيل. تعرض لانتقادات حول مهنته كأديب في الأوساط التي كان يعيشها لأن الاعتقاد السائد أن على النبيل أن لا ينشغل بمثل هذه الأنشطة. غير أن المتعة التي كان يجدها في الكتابة وفائدتها للآخرين أدت به إلى الاستمرار في نشاطه الأدبي. استلم عرش قشتالة في زمنه اثنان من الملوك كانا قد خططا لقتله، وهما: فرناندو الرابع وألفونسو الحادي عشر، ولكن الأخير سعى لنيل ولائه فطلب يد ابنته كونستانس. استمر الزواج لفترة من الزمن ثم حدث طلاق، عندها حجز الفتاة في قلعة تورو. ولم يطلقها فقط بل ورفض إرجاعها أو منحها إذن بالسفر إلى البرتغال للزواج من الأمير بيدرو البرتغالي، الذي سيكون الملك بيدرو الأول، استمرت هذه الخلافات ما لا يقل عن عقد من الزمن وفي مناسبتين على الأقل كان دون خوان على وشك أن يقع أسيراً في أيدي الملك، ولكن هذا الأخير كان يسعى لاستتباب الأمن في بلاطه ليستطيع أن يواجه ملك المغرب، فتوسطت حماة دون خوان من زواجه الثالث خوانا نونيث، ونتجت الوساطة عن استرجاع دون خوان مانويل لكل أملاكه المحجور عليها ولجميع امتيازاته عام 1337. انتهت العداوة وسمح بحفل زفاف كونستانس، وفي عام 1340 تحالفوا جميعاً ضد المسلمين في معركة سالادو لينتزعوا منهم مدينة الجزيرة الخضراء بعد حصار طويل.
دون خوان مانويل حياته
شارك في بلاط الكالا، حيث تدخل في الحادثة التي أدّت إلى إطلاق العبارة الشهيرة المنسوبة لألفونسو الحادي عشر «لأجل قشتالة أنا سأتكلم». بعد هذه الأحداث، ترك الأمير دون خوان مانويل الحياة السياسية وتقاعد ليعيش في كاستيلو دي غراسيمونيوزا، حيث أمضى سنواته الأخيرة مكرساً نفسه للأدب. كان فخوراً بأعماله فقرر جمعهم في مجلد واحد تركه في دير سان بابلو دي بينيافيل حتى لا تتعرض لتعديلات الناسخين.
توفي دون خوان مانويل في مدينة قرطبة عام 1348، عن عمر يناهز 66 سنة.
دون خوان مانويل قبره
بعد وفاة دون خوان مانويل في مدينة قرطبة، نقلت جثته إلى بلدة بينيافييل حيث تمت مراسم الدفن في دير سان بابلو، ووضع في قبر أمر الكاتب نفسه ببنائه عام 1318 لترتاح رفاته الراحة الأبدية في مذبح كنيسة الدير.
خلال حرب الاستقلال، تم نبش دير سان بابلو ونهبه في بينيافييل من قبل جنود فرنسيين، ودُنّست معها المقبرة التي تضم رفاة دون خوان مانويل. في عام 1955 عُثر على صندوق خشبي في كنيسة دير سان بابلو بداخله رفاة بشرية، وبالاستعانة بمؤرخين عرف أنها بقايا رفاة دون خوان مانويل وذلك بعد تنظيف جدار الحجر حيث وجد مخبأً تحت طبقة سميكة من الجبص النُقش التالي: "هنا يرقد السيد العظيم دون خوان مانويل، ابن السيد العظيم إنفانتي (أمير) مانويل والسيدة العظيمة بياتريس دي سابويا (سافوي)، وهو دوق بينافيل وماركيز بليانة وجد ملك قشتاله وليون خوان الأول، بهذا الاسم، توفي في مدينة قرطبة من سنة ولادة السيد المسيح 1362.
دون خوان مانويل زيجاته وذريته
تزوج دون خوان مانويل ثلاث مرات. كانت زوجته الأولى إيزابيل دي مايوركا، أبنة خايمي الثاني ملك مايوركا الذي لم يكن له أبناء، في وقت لاحق عقد زواجه الثاني على الأميرة كونستانس دي أراغون، التي كانت أبنة خايمي الثاني ملك أراغون وبلانكا دي نابولي. كان له منها ثلاثة أبناء:
كانت زوجته الثالثة بلانكا نونييث دي لارا، أبنة فيرناندو دي لا ثيردا وخوانا نونيث دي لارا، فيرناندو كان شقيق ألفونسو دي لا ثيردا الذي كان مطالب العرش قشتالة، كان له طفلان منها:
خوانا مانويل دي بليانة (1381- 1339). عقدت زواجها عام 1350 على إنريكي دي تراستامارا هو الابن غير الشرعي لملك ألفونسو الحادي عشر ملك قشتالة وليونور دي غوزمان حكم قشتالة وليون باسم إنريكي الثاني منذ 1369، وأيضا هي والدة الملك خوان الأول. وكان الدوق الثالث لبليانة والسيد الخامس لإسكالونا وبينيافيل من عام 1360 وحتى 1366.
دون خوان مانويل زيجاته وذريته
كان لدون خوان مانويل أيضاً ابنان غير شرعيين من إنيس دي كاستانييدا:
إنريكيه مانويل من بليانة (1337 بينيافيل، 1390). رافق شقيقته إلى البرتغال وتزوج من بياتريس دي سوسا. كان الكونت الأول لسيا وسينترا (1385-1357) وسيد كاسكايس، إضافة إلى كونه السيد الرابع لمونتيه أليغيريه والثالث لبيلمونته ومينيسِس.
كان عند دون خوان مانويل أيضا ابنة غير شرعية من أم مجهولة.
حملت ذريته في نهاية المطاف عدة ألقاب نبيلة، مثل رتبة كونت لفيامانويل، ورتبة ماركيز لدي رافال ورتبة دوق لأريفالو ديل ري وغيرها.
دون خوان مانويل أدبه
حفظت ثمانية أعمال لدون خوان مانويل، وفقدت له خمسة أعمال. والأعمال المحفوظة هي التالية:
بالإضافة أيضا إلى مجموعة رسائله، على الرغم من أنها لم تكن عملاً مستقلاً، جمعها أندريس خيمينيث سولير في كتاب «الرسائل»، وامتدت من عام 1298 حتى 1347.
على نحو تقليدي، يقسم إنتاج دون خوان مانويل الأدبي إلى ثلاث مراحل:
في المرحلة الأولى، يظهر بوضوح تأثره بمجموعة أعمال عمه ألفونسو العاشر. على سبيل المثال، موجز الأخبار هو بالضبط تلخيص لتاريخ إسبانيا. ويتبع دون خوان مانويل في هذه المرحلة نماذج عمه ألفونسو عامة في التاريخ وقضايا الصيد والأحكام القانونية حول الفرسان..الخ.
في القرن الرابع عشر، قرر دون خوان مانويل كتابة الكتب باللغة العامية من أجل تسهيل وصولها إلى أكبر عدد من القراء، وخصص كثير من أدبه لطبقة النبلاء.
إلى جانب نشر المعرفة الإنسانية، استخدم دون خوان مانويل عمله لتصوير نفسه في كثير من الحالات، ويعتبر أدبه انعكاساً لشخصيته وطموحاته ومعتقداته، كان لديه أسلوب مثالي سعى من خلاله إلى الالتزام بِالوضوح والدقة والإيجاز.
دون خوان مانويل أسلوبه
يتميز أسلوب دون خوان مانويل بالانتقائية والرصانة والدقة والوعي الكامل في التأليف الفني الأ‌دبي.
أنس الصفريوي
أنس الصفريوي (ولد بفاس ، في 16 مايو 1957) هو رجل أعمال ومطور عقاري مغربي والمدير العام لمجموعة الضحى.
أنس الصفريوي المسيرة المهنية
ترك أنس المدرسة الثانوية ليعمل مع والده الحاج عبد السلام الصفريوي في مشروع لإنتاج الفخار، مما أكسبه المعرفة بأصول الأعمال في سن مبكرة. ولكن بدايته الحقيقية كانت في مجال البناء والعقار في عام 1988 عندما أسس مجموعته العقارية، وفي 1995 بدأ مشروعًا ضخمًا لبناء أكثر من 2000 وحدة سكنية في الضواحي بدعم من الحكومة في زمن الحسن الثاني. وفي 2005 تمكن من الحصول على عقد لبناء وحدات سكنية في المغرب زادت قيمته عن مليار دولار. وفيما بعد أنشأ مصنعين لإنتاج الأسمنت في مدينتي سطات وبني ملال بقدرة إنتاجية بلغت 1.6 مليون طن، وتبعه إنشاء مصانع أخرى لإنتاج الأسمنت في دول أفريقية مثل الكاميرون والغابون.
يعتبر الصفريوي من أغنى رجال الأعمال في المغرب بثروة قُدرت بـ 1.1 مليار دولار في مارس 2017، وفقًا لموقع مجلة فوربس.
في الثالث من يناير 2013، وجه الصفريوي دعوة لنجم كرة القدم ليونيل ميسي للترويج لنادي بولو في مراكش.
مقاطعة بولتافا
مقاطعة بولتافا أو بولتافا أوبلاست أو بُلتَافة أُبْلَست (الأوكرانية: Полтавська область) هي مقاطعة تقع في وسط أوكرانيا. المركز الإداري لها هو مدينة بولتافا، أسست هذه المدينة عام 1937
مقاطعة بولتافا الجغرافيا
تقع مقاطعة بولتافا في وسط أوكرانيا، على الضفة اليسرى لنهر دنيبر، يحدها شمالا مقاطعة تشرنيهيف ومقاطعة سومي، وجنوباً مقاطعتي كيروفوهراد ودنيبروبتروفسك، أما شرقًا مقاطعة خاركيف، كم يحدها غرباً كل من مقاطعة تشيركاسي ومقاطعة كييف، تقدر مساحتها بحوالي 28،748 كم²، أي حوالي 4.76٪ من المساحة الإجمالية لأوكرانيا.
مجال (علم الحاسوب)
في علم الحاسوب، يعتبر المجال لمعرِّف ما (بالإنكليزية Scope) هو الجزء من البرنامج الحاسوبي الذي يمكن فيه استخدام المعرّف -و هو اسم يعود إلى كيان ما في البرنامج- للوصول إلى الكيان المقترن به. لذا، فإن المجال هو السياق في البرنامج الذي يكون فيه المعرّف صالح للاستعمال والوصول إلى الكيان المقترن به. أي بمعنى أخر: عندما يكون الكيان مرئي. في معظم الأحيان، يستخدم مصطلح «المجال» للحديث عن متى يمكن استخدام اسم متغير ما، له «حدود» داخل البرنامج بانتهاء هذا الحد ينتهي عمله ممكن أن نستخدم نفس اسم المتغير في كيان اخر ضمن حدود أخرى في نفس البرنامج لغرض أخر أو قد يكون إلى اللاشئ. ولكنه ينطبق أيضا على كيانات أخرى مثل: الأنواع (أو الأصناف) والوظائف. يعتبر المجال أمرا مهما لتحليل الاسم (name resolution) والذي هو بدوره أساسي لدلالات اللغة (language semantics): فالمعنى الكلي للبرنامج يعتمد على معانى الكلمات المكونة له منفردة. تحليل الاسم (و الذي يشمل أيضا المجال) يختلف من لغة برمجة إلى أخرى، وحتى في البرنامج الواحد فهو يختلف حسب نوع الكيان. تعتبر قواعد المجال -إضافة إلى قواعد أسماء المكتبات- حاسمة ومصيرية في البرمجة التركيبية، كنتيجة لهذا، فإن أي تغير على أي جزء من البرنامج لا يضر بالأجزاء الأخرى التي ليس لها علاقة.
مجال (علم الحاسوب)
وعمليًا معظم لغات البرمجة، تشير «جزء من البرنامج» إلى «جزء من شفرة المصدر (مساحة النص)»، ويعرف بالنطاق المعجمى"ٍStatic scop" يشير «جزء من البرنامج» ماقبل مرحلة التنفيذ أما الذي يشير إلى «جزء من وقت التشغيل (الفترة الزمنية أثناء التنفيذ)»، ويعرف بالنطاق الديناميكي"Dynamic scope." هذان المصطلحان مضللان إلى حد ما - إنهما يسيئان استخدام المصطلحات التقنية، ولكن التمييز نفسه دقيق ودقيق.
النطاق المعجمي «الثابت» (Lexical static scope)هو التركيز الرئيسي في هذه المقالة، مع فهم النطاق الديناميكي (Dynamic scope).
مجال (علم الحاسوب) تعريف
التعريف الدقيق للنطاق لثابت "Static scope" لاسم (معرف) إنه «جزء من شفرة المصدر التي ينطبق عليها ربط اسم مع كيان» - ولم يتغير تقريبًا عن تعريفه لعام 1960 في مواصفات ALGOL 60. يتبع مواصفات لغة التمثيلية.
(ALGOL 60 (1960):
يتم تمييز الأنواع التالية من الكميات: المتغيرات البسيطة، المصفوفات، الملصقات، المفاتيح، والإجراءات. نطاق الكمية هو مجموعة من العبارات والتعبيرات التي يكون فيها تعريف المعرّف المرتبط بهذه الكمية صالحًا.(C (2007 :C
مجال (علم الحاسوب) تعريف
يمكن أن يشير المعرّف إلى كائن؛ وظيفة؛ علامة أو عضو في هيكل أو اتحاد أو تعداد؛ اسم typedef؛ اسم العلامة؛ يمكن أن يشير المعرف نفسه إلى كيانات مختلفة في نقاط مختلفة في البرنامج. بالنسبة لكل كيان مختلف يحدده المعرف، يكون المعرّف مرئيًا (أي يمكن استخدامه) فقط داخل منطقة من نص البرنامج تسمى نطاقه.
(Go (2013 :

يربط التصريح معرفًا غير فارغ إلى ثابت أو نوع أو متغير أو دالة أو تسمية أو حزمة. نطاق المعرّف المعلن هو مدى النص المصدر الذي يشير فيه المعرِّف إلى الثابت المحدد أو النوع أو المتغير أو الوظيفة أو التسمية أو الحزمة.
يشير «المجال» الأكثر شيوعًا إلى متى يمكن أن يشير اسم معين إلى متغير معين - عندما يكون للإعلان تأثير - ولكن يمكن أن ينطبق أيضًا على الكيانات الأخرى، مثل الوظائف والأنواع والفئات والتسميات والثوابت والتعدادات.
النطاق المعقول مقابل النطاق الديناميكي (Lexical "Static" scope vs. dynamic scope)
مجال (علم الحاسوب) تعريف
التمييز الأساسي في تحديد النطاق هو ما يعني «جزء من البرنامج». في اللغات ذات النطاق المعجمي (يطلق عليها أيضًا النطاق الثابت)، يعتمد تحليل الاسم على الموقع في شفرة المصدر والسياق المعجمى، والذي يتم تحديده من خلال مكان تعريف المتغير أو الوظيفة المحددة. في المقابل، في اللغات ذات النطاق الديناميكي، يعتمد تحليل الاسم على حالة البرنامج عند مواجهة الاسم الذي يتم تحديده بواسطة سياق التنفيذ أو سياق الاتصال. في الممارسة العملية، باستخدام النطاق المعجمى يتم حل تعريف المتغير من خلال البحث عن الكتلة أو الوظيفة التي يحتوي عليها، ثم إذا فشل ذلك في البحث عن الكتلة الخارجية، وهكذا، في حين يتم البحث عن وظيفة الاستدعاء مع النطاق الديناميكي، يتم البحث عن الوظيفة المطلوبة، وظيفة، وما إلى ذلك، في كلا النظامين، نبحث أولاً عن تعريف محلي لمتغير.
تستخدم معظم اللغات الحديثة تحديد المدى المعجمي «الثابت»(Static scope)للمتغيرات والوظائف، على الرغم من استخدام النطاق الديناميكي (Dynsamic scope)في بعض اللغات، لا سيما بعض لهجات Lisp ، وبعض لغات «البرمجة النصية» مثل Perl ، وبعض لغات القالب. حتى في اللغات ذات النطاق lexically ، نطاق قد تكون الإغلاقات مربكة لغير المطلعين، لأنها تعتمد على السياق المعجمى«الثابت» حيث يتم تحديد الإغلاق، وليس حيث يتم استدعاؤه.
يمكن تحديد الدقة المعجمية في وقت التحويل البرمجي، ويُعرف أيضًا بالربط المبكر، بينما يمكن تحديد الدقة الديناميكية بشكل عام فقط في وقت التشغيل، وبالتالي تُعرف بالربط المتأخر.
مجال (علم الحاسوب) مفاهيم ذات صلة
في البرمجة الشيئية، يحدد الإرسال الديناميكي طريقة كائن في وقت التشغيل، على الرغم من أن ربط الاسم الفعلي يتم في وقت التحويل البرمجي أو وقت التشغيل يعتمد على اللغة. إن الفحص الديناميكي بحكم الواقع أمر شائع في اللغات الكبرى، والتي لا تفعل مباشرة تحليل الاسم، ولكن بدلاً من ذلك توسع في مكانه.
مجال (علم الحاسوب) مفاهيم ذات صلة
تستخدم بعض اطارات البرمجة مثل AngularJS مصطلح «نطاق» لتعني شيئًا مختلفًا تمامًا عن كيفية استخدامه في هذه المقالة. في هذا الإطار، يكون النطاق مجرد كائن من لغة البرمجة التي يستخدمونها (JavaScript في حالة AngularJS) التي يتم استخدامها بطرق معينة بواسطة إطار العمل لمحاكاة النطاق الديناميكي بلغة تستخدم نطاقًا معجميًا «ثابتا» لمتغيراتها. يمكن أن تكون نطاقات AngularJS نفسها في نطاقها أو خارج نطاقها (باستخدام المعنى المعتاد للمصطلح) في أي جزء من البرنامج، مع اتباع القواعد المعتادة للنطاق المتغير للغة مثل أي كائن آخر، واستخدام ميراثها وقواعد الاستبعاد. في سياق AngularJS ، في بعض الأحيان يتم استخدام مصطلح «نطاق $» (مع علامة الدولار) لتجنب الارتباك، ولكن استخدام علامة الدولار في أسماء المتغيرات غالبا ما يتم تثبيط من قبل أدلة الأسلوب.
مجال (علم الحاسوب) الاستخدام
النطاق «المجال» هو مكون مهم في تحليل الاسم، والذي يعتبر بدوره أساسيًا لدلالات اللغة. يختلف تحليل الاسم (بما في ذلك النطاق) بين لغات البرمجة، وضمن لغة برمجة، يختلف ذلك باختلاف نوع الكيان؛ تسمى قواعد النطاق باسم قواعد النطاق أو قواعد تحديد النطاق. إلى جانب مساحات الأسماء، تعتبر قواعد تحديد النطاق حاسمة في البرمجة المعيارية، لذا لا يؤدي أي تغيير في جزء واحد من البرنامج إلى كسر جزء غير مرتبط منه.
مجال (علم الحاسوب) نظرة عامة
عند مناقشة النطاق، هناك ثلاثة مفاهيم أساسية: النطاق، والمدى، والسياق. غالبًا ما يتم الخلط بين «النطاق» و «السياق» بشكل خاص: النطاق عبارة عن خاصية لمعرّف، ويتم إصلاحه، في حين أن السياق عبارة عن خاصية لبرنامج، يختلف باختلاف الموقع. بتعبير أدق، السياق هو خاصية لموضع في البرنامج، إما موضع في شفرة المصدر (سياق معجم) أو نقطة خلال وقت التشغيل (سياق التنفيذ، سياق وقت التشغيل، أو سياق الاتصال). يتكون سياق التنفيذ من سياق معجم (عند نقطة التنفيذ الحالية) بالإضافة إلى حالة وقت تشغيل إضافية مثل مكدس الاستدعاءات. وهكذا، عندما تكون نقطة تنفيذ البرنامج في نطاق اسم المتغير، يكون «المتغير (الاسم) السياق»(يعني«في السياق عند هذه النقطة»)، وعندما تخرج نقطة التنفيذ«نطاق (اسم) متغير»، مثل بالعودة من دالة، «يخرج المتغير (الاسم) خارج السياق» تحدث بشكل ضيق، أثناء التنفيذ، يدخل البرنامج ويخرج من نطاقات مختلفة، وعند نقطة في التنفيذ، تكون المعرفات «في سياق» أو «ليس في سياق»، ومن ثم، فإن المعرفات «تأتي في سياق» أو «تخرج عن سياقها». كما يدخل البرنامج أو يخرج من النطاق - ولكن في الممارسة العملية هو أكثر مرونة.
مجال (علم الحاسوب) نظرة عامة
نطاق هو مفهوم مستوى التعليمات البرمجية المصدر، وخصائص معرفات، وخاصة أسماء متغير أو وظيفة - المعرفات في شفرة المصدر هي إشارات إلى الكيانات في البرنامج - ويشكل جزءا من سلوك المترجم أو مترجم للغة. على هذا النحو، فإن قضايا النطاق تشبه المؤشرات، والتي هي نوع من أنواع المراجع المستخدمة في البرامج بشكل عام. إن استخدام قيمة متغير عندما يكون الاسم في السياق ولكن المتغير غير مهيأ هو مماثل لإلغاء الإشارة (الوصول إلى قيمة) مؤشر wild ، لأنه غير معرف. ومع ذلك، نظرًا لأن المتغيرات لا يتم إتلافها حتى تخرج عن سياقها، لا يوجد تناظري لمؤشر متدلي.
مجال (علم الحاسوب) نظرة عامة
بالنسبة للكيانات مثل المتغيرات، النطاق هو مجموعة فرعية من العمر (يُعرف أيضًا بمدى) - يمكن أن يشير الاسم فقط إلى متغير موجود (ربما مع قيمة غير محددة)، ولكن المتغيرات الموجودة ليست بالضرورة مرئية: قد يوجد متغير ولكن لا يمكن الوصول إليها (يتم تخزين القيمة ولكن لا يشار إليها في سياق معين)، أو يمكن الوصول إليها ولكن ليس عن طريق الاسم المحدد، وفي هذه الحالة يكون خارج السياق (البرنامج «خارج نطاق الاسم»). في حالات أخرى، «العمر» غير ذي صلة - العلامة (المسمى بموضع في شفرة المصدر) لها عمر متطابق مع البرنامج (للغات المجمعة بشكل ثابت)، ولكنها قد تكون داخل أو خارج السياق في نقطة معينة في البرنامج، وبالمثل للمتغيرات الثابتة - المتغير العام الثابت في سياق البرنامج بأكمله، بينما يكون المتغير المحلي الثابت في السياق فقط داخل دالة أو سياق محلي آخر، ولكن كلاهما له عمر كامل لتشغيل البرنامج.
مجال (علم الحاسوب) نظرة عامة
ويعرف تحديد الكيان الذي يشير إليه المعرف باسم تحليل الاسم أو ربط الاسم (خاصة في البرمجة الشيئية)، ويختلف بين اللغات. في ضوء معرف معين، تقوم اللغة (بشكل صحيح، المحول البرمجي أو المترجم) بفحص جميع الكيانات الموجودة في سياق التطابقات؛ في حالة الغموض (كيانان لهما نفس الاسم، مثل متغير عالمي ومحلي بنفس الاسم)، يتم استخدام قواعد تحليل الاسم لتمييزها. في كثير من الأحيان، تعتمد دقة الاسم على قاعدة «داخلية إلى خارجية»، مثل قاعدة Python LEGB (محلي، مضمن، عالمي، مدمج): تتضمّن الأسماء ضمنيًا إلى أضيق سياق ذي صلة. في بعض الحالات، يمكن تحديد دقة الاسم بوضوح، مثل الكلمات الرئيسية العامة وغير المحلية في بايثون؛ في حالات أخرى لا يمكن تجاوز القواعد الافتراضية.
عندما يكون هناك معرّفان متطابقان في السياق في نفس الوقت، في إشارة إلى الكيانات المختلفة، يقول أحدهم أن إخفاء الاسم يحدث، حيث يكون الاسم ذو الأولوية الأعلى (عادةً أعمق) هو «إخفاء» اسم الأقل أولوية. على مستوى المتغيرات، يعرف هذا باسم التظليل المتغير. نظرًا لاحتمالية حدوث أخطاء منطقية من الإخفاء، فإن بعض اللغات لا تسمح أو تمنع الإخفاء، وترفع خطأ أو تحذيرًا في وقت الترجمة أو وقت التشغيل.
تحتوي لغات البرمجة المختلفة على قواعد تحديد نطاق مختلفة لأنواع مختلفة من الإعلانات والمعرفات. هذه القواعد تحديد نطاق لها تأثير كبير على دلالات اللغة، وبالتالي، على سلوك وصحة البرامج. في اللغات مثل++ C ، لا يحتوي الوصول إلى متغير غير منضم على دلالات محددة بدقة وقد يؤدي إلى سلوك غير محدد، مشابهًا للإشارة إلى مؤشر متدلي ؛ والتوضيحات أو المعرفات المستخدمة خارج نطاقها ستؤدي إلى حدوث أخطاء في بناء الجملة.
ترتبط النطاقات بشكل متكرر ببنى لغة أخرى ويتم تحديدها ضمنيًا، ولكن العديد من اللغات تقدم أيضًا بنيات خصيصًا للتحكم في النطاق.
مجال (علم الحاسوب) مستويات النطاق
يمكن أن يختلف النطاق من تعبير واحد إلى أخر من كل البرنامج، مع وجود العديد من التدرجات الممكنة بينهما. أبسط قاعدة لتحديد النطاق هي النطاق العالمي - جميع الكيانات مرئية طوال البرنامج بأكمله. قاعدة الفحص المعيارية الأساسية هي تحديد النطاق على مستويين، مع نطاق عام (global scope) في أي مكان في البرنامج، ونطاق محلي (Local scope) ضمن إحدى الوظائف. تسمح البرمجة المعيارية الأكثر تعقيدًا بنطاق وحدة منفصلة، حيث تكون الأسماء مرئية داخل الوحدة (خاصة إلى الوحدة) ولكنها غير مرئية خارجها. داخل بعض الوظائف، تسمح بعض اللغات ، مثل C ، بنطاق الحظر لتقييد النطاق لمجموعة فرعية من الدالة ؛ الآخرين ، ولا سيما اللغات الوظيفية ، تسمح بنطاق التعبير ، لتقييد النطاق إلى تعبير واحد. تتضمن النطاقات الأخرى نطاق الملف (لا سيما في C)، والذي يعمل بشكل مشابه لنطاق الوحدة النمطية ، ويمنع النطاق خارج الوظائف (خاصة في Perl).
مجال (علم الحاسوب) مستويات النطاق
المشكلة الدقيقة هي بالضبط عندما يبدأ النطاق وينتهي. في بعض اللغات ، كما هو الحال في C ، يبدأ النطاق في الإعلان وبالتالي يمكن أن يكون للأسماء المختلفة المُعلنة داخل كتلة معينة نطاقات مختلفة. ويتطلب ذلك الإعلان عن الوظائف قبل الاستخدام ، على الرغم من عدم تحديدها بالضرورة ، ويتطلب الإعلان المسبق في بعض الحالات ، لا سيما عن التكرار المتبادل. بلغات أخرى ، مثل JavaScript أو Python ، يبدأ نطاق الاسم في بداية الكتلة المعنية (مثل بداية دالة)، بغض النظر عن المكان الذي تم تعريفه ، ويكون لكل الأسماء الموجودة داخل كتلة معينة نفس النطاق ؛ في JavaScript يُعرف هذا باسم الرفع المتغير. ومع ذلك ، عندما يختلف الاسم إلى قيمة ، يختلف سلوك أسماء السياق التي لها قيمة غير محددة: في بايثون ، يؤدي استخدام المتغيرات غير المحددة إلى حدوث خطأ في وقت التشغيل ، بينما تكون متغيرات جافا سكريبت غير القابلة للاستخدام قابلة للاستخدام (مع قيمة غير محددة)، ولكن يتم أيضًا رفع الإعلانات الدالة إلى الجزء العلوي من الدالة المحتوية واستخدامها خلال الدالة.
مجال (علم الحاسوب) نطاق التعبير
تقدم العديد من اللغات ، وخاصة اللغات الوظيفية ، ميزة تسمى «السماح بالتعبيرات»، والتي تسمح لنطاق الإعلان أن يكون تعبيرًا واحدًا. على سبيل المثال ، هناك حاجة إلى قيمة وسيطة للحساب. على سبيل المثال ، في ML قياسي
if f() returns12, then let val x = f() in x * x end
هو تعبير يتم تقييمه إلى 144 ، باستخدام متغير مؤقت المسمى x لتجنب استدعاء مرتين. بعض اللغات ذات نطاق الكتلة تقترب من هذه الوظيفة من خلال توفير بناء جملة لكتلة يتم تضمينها في تعبير؛ على سبيل المثال ، يمكن كتابة تعبير ML القياسي أعلاه في Perl كـ
في بايثون " "Python ، المتغيرات المساعدة في تعبيرات المولدات وفهم القوائم (في Python 3) لها نطاق تعبير.
في C ، يكون لأسماء المتغيرات في النموذج الأولي وظيفة نطاق تعبير ، يعرف في هذا السياق كنطاق بروتوكول وظيفي. بما أن أسماء المتغيرات في النموذج الأولي لا يشار إليها (قد تكون مختلفة في التعريف الفعلي) - فهي مجرد دمى - غالبًا ما يتم حذفها ، على الرغم من أنها قد تستخدم في توليد التوثيق.