CALM/arwiki huggingface dataset:
وصلت في يناير 1937 قوة استكشافية قوامها 35,000 إيطالي هي فيلق الجنود المتطوعين إلى إسبانيا تحت قيادة الجنرال ماريو رواتا، وتحتوي على أربعة كتائب، إحداهما مكونة من جنود والثلاثة الأخرى من متطوعي القمصان السوداء. زودت إيطاليا القوات الوطنية بالمقاتلات والقاذفات التي لعبت دورًا مهمًا في الحرب. وفي مارس 1937 تدخلت إيطاليا في الشؤون السياسية للجبهة القومية بإرسال روبرتو فاريناتشي إلى إسبانيا لحث فرانكو على توحيد الحركات السياسية الوطنية في "حزب وطني إسباني" فاشي واحد.
زودت ألمانيا النازية القوميين بالعتاد اللازم والمتخصصين وفرقة سلاح الجو القوية، وهي قوات التدخل السريع الألمانية المسماة فيلق الكندور التي قدمت النقل الجوي للجنود والمواد من المغرب الإسباني إلى الأرض الإسبانية وقدمت عمليات هجومية ضد قوات الجمهورية. ووفرت الحرب الأهلية الإسبانية أرضية اختبار مثالية لإتقان الأسلحة الجديدة التي تم إنتاجها خلال إعادة التسلح الألماني. تم اختبار العديد من تقنيات القصف الجوي لفيلق الكندور ضد حكومة الجمهورية على الأرض الإسبانية بإذن من الجنراليسمو فرانكو. أصر هتلر مع ذلك على أن تصاميمه طويلة المدى كانت سلمية، وهي استراتيجية سميت "Blumenkrieg" أو (حرب الزهور).
كانت مصالح ألمانيا الاقتصادية المهمة على المحك في إسبانيا، حيث استوردت كميات كبيرة من خام المعادن من المغرب الإسباني. وأرسل النظام النازي الجنرال المتقاعد فيلهلم فولبل سفيراً إلى نظام فرانكو، ودعم فولبل فرانكو والفلانخي على أمل أن ينشئوا نظاماً شبيهاً بالنازية في إسبانيا. ولكن ازدادت ديون ألمانيا المستحقة على فرانكو وجبهته القومية بسرعة عند شراء المواد الألمانية، وتطلبت مساعدة مالية من ألمانيا حيث كان بإمكان الجمهوريين الوصول إلى احتياطي الذهب في إسبانيا.
عند اندلاع الحرب الأهلية دعم رئيس الوزراء البرتغالي أنطونيو دي أوليفيرا سالازار مباشرة قوات الجبهة القومية. فتوترت العلاقات بين نظامه المسمى إستادو نوفو والجمهورية الإسبانية التي آوت منشقين برتغاليين من نظامه. ولعبت البرتغال دورًا حاسمًا في إمداد قوات فرانكو بالذخيرة والعتاد ومن الموارد اللوجستية الأخرى. ولها مشاركة عسكرية مباشرة بسيطة ولكن سرية ومقيدة إلى حد ما بتأييد شبه رسمي من النظام الاستبدادي لقوة متطوعة قوامها 8000-12000 مقاتل وسميت بالفرياتوس ، وللبرتغال دور فعال في تزويد الجبهة القومية بنظام لوجستي حيوي، وطمأنة فرانكو وحلفائه بأنه لن يكون هناك أي إعاقة لحركة الإمدادات الموجهة إليهم عبر الحدود الأيبريية اعتاد القوميون الإشارة إلى لشبونة بإسم "ميناء قشتالة". وفي سنة 1938 مع زيادة انتصارات فرانكو، اعترفت البرتغال به. وبعد الحرب في 1939 وقعت معاهدة صداقة وعدم اعتداء عُرف باسم الميثاق الأيبيري. وقد لعبت البرتغال دورًا دبلوماسيًا مهمًا في دعم نظام فرانكو، ومنها الإصرار على المملكة المتحدة على أن فرانكو سعى إلى تكرار استادو نوفو لسالازار وليس إيطاليا الفاشية لموسوليني.
في البداية امتنعت الفاتيكان عن الإعلان صراحةً عن دعمه للجانب المتمرّد في الحرب، على الرغم من أنه سمح منذ فترة طويلة لشخصيات كنسية رفيعة في إسبانيا بالقيام بذلك وتعريف الصراع على أنه "حرب صليبية". ووصفت الدعاية الفرانكوية والكاثوليك الإسبان المؤثرون الجمهورية العلمانية خلال الحرب بأنها "عدو الله والكنيسة" وانتقدوها وحملوها مسؤولية الأنشطة المناهضة لرجال الدين، مثل إغلاق المدارس الكاثوليكية فضلاً عن قتل الكهنة والراهبات على يد الغوغاء المنفلتين وتدنيس المباني الدينية.
بعد خسارته دعم قوى أوروبا الغربية اعتمدت حكومة الجمهورية بقوة على المساعدات العسكرية السوفيتية، ولعبت دعاية فرانكو دورًا في تصوير الجمهورية الإسبانية على أنها دولة ماركسية وملحدة. واستخدم الكرسي الرسولي نفوذه من خلال شبكته الدبلوماسية الواسعة للضغط لصالح الجانب المتمرّد. ففي خلال معرض باريس الدولي (1937) حضرت كل من الحكومتين القومية والجمهورية، فسمح الكرسي الرسولي للجناح القومي بعرض معرضه تحت علم الفاتيكان لأنه لم يتم الاعتراف بعد بالحكومة المتمردة. بحلول 1938 كانت مدينة الفاتيكان قد اعترفت رسميًا بدولة فرانكو الإسبانية وكانت من أولى الدول التي اعترفت بذلك.
MAD (اختصارًا لِـمفسِّر خوارزميَّة ميشيغان) (Michigan Algorithm Decoder),، هي لغة برمجة ومترجم مطور في جامعة ميشيغان بواسطة برنار غالير وبروس أردن بروس وروبرت جراهام University of Michigan by Bernard Galler, Bruce Arden، Robert M. Graham.
MAD/Iو MADو GOM.
هناك ثلاثة تراجم لـ MAD :
1. MAD الأصلي المترجم كشف عنه في عام 1959 في جامعة ميشيغان لكمبيوتر آي بي إم 704 IBM 704و في وقت لاحق آي بي إم 709 IBM 709 وأجهزة الكمبيوتر المركزية وآي بي إم 7090 IBM 7090 mainframe من النظام التنفيذي لجامعة ميتشيغان (UMES) وأنظمة تشغيل النظام المناسب لتقسيم الوقت (CTSS).. وفي منتصف الستينات 1960.لغة MAD استدارت في جامعة ميريلاند University of Maryland ليونيفاك 1108UNIVAC 1108. إصدارات MAD كانت متوفرة أيضا لفيلكو 210-211 Philco ويونيفاك 1107 UNIVAC 1107.
2. MAD/I، هو إصدار مطول من MAD لسلسلة S/360 آي بي إم IBM S/360 من أجهزة الكمبيوتر التي تعمل في منظومة محطة ميشيغان Michigan Terminal System (MTS). بدأ العمل في المترجم الجديد في عام 1965 كجزء من وكالة مشاريع البحوث المتقدمة ARPA برعاية مشروع CONCOMP في جامعة ميشيغان. عندما أحرز العمل تقدما أصبح تدريجيا واضحا أنI /MAD كانت لغة جديدة مستقلة عن الإصدار الأصلي من 7090 MAD.
3. جوم GOM(ماد القديم الجيد) (Good Old MAD)، وإعادة تطبيق لـ 7090 MAD الأصلي لسلسلة آي بي إم S/370 IBM S/370 series لأجهزة الكمبيوتر المركزية لتشغيل نظام محطة ميتشيغان Michigan Terminal System (MTS). تم إنشاء جوم GOM في أوائل الثمانينات 1980 بواسطة دون بوتنر Don Boettner في مركز الحاسب الآلي بجامعة ميشيغان.
MAD هي بديل للغة الدولية الخوارزمية (اللوغرتمية) International algorithmic language (IAL). IAL هو الاسم الأصلي لماذا أصبحت في نهاية المطاف ALGOL 58. في حين MAD كانت بدافع من ALGOL 58، إلى انها لا تشبه ALGOL 58 بأي شكل من الأشكال كبيرة.
البرامج المكتوبة بلغة MAD بما فيها MAIL RUNOFF، واحدة من النظم الأولى لمعالجة النصوص، والعديد من أدوات المساعدة الأخرى كلها تحت النظام المناسب لتقسيم الوقت Compatible Time-Sharing System (CTSS). جرى العمل على التصميم لمترجم MAD لمالتيكس Multics، ولكن لم ينفذ.
وفيما يلي اقتباس من مقابلة مثيرة للاهتمام مع بريان كيرنيغان عندما سئل : "ما سبب تعلقك بالبرمجة؟" :
أجاب: أعتقد أن الأكثر متعة أني كنت اعمل بالبرمجة كوظيفة صيفية في مشروع ماك MAC في ميت MIT في صيف عام 1966، حيث عملت على إنشاء برنامج لشريط عمل لجي إي645 الجديد GE 645 في الأيام الأولى من مالتيكس Multics. كنت أكتب بلغة MAD، والتي كانت أسهل بكثير وأكثر متعة من فورتران FORTRAN وكوبول COBOL التي كنت كتبتها في وقت سابق، وكنت أستخدم CTSS، أول نظام اقتسام الوقت، والتي كان من الأسهل بلا حدود وأكثر متعة من البطاقات المثقبة punch cards.
MAD كانت سريعة جدا مقارنة ببعض برامج المترجم الأخرى في وقته. وبسبب أن كثير من الناس كانت مهتمة باستخدام لغة فورتران FORTRAN وأرادت الحصول على سرعة مترجم MAD، تم استحداث نظام مادتران MADTRAN (كتب بلغة MAD). وكان MADTRAN مجرد مترجم من فورتران FORTRAN إلى ماد MAD، والتي أنتجت وقتها شفرات ألية. ووزعت MADTRAN من خلال SHARE.
MAD/I لديها بنية لغوية مماثلة لـ ALGOL 60 مع مميزات مهمة من MAD الأصلي ومن PL/I. MAD/I مصمم كلغة موسعة. وكانت متوفرة للاستخدام في MTS، وقدمت العديد من الأفكار الجديدة التي شقت طريقها إلى لغات أخرى، ولكن مصنفات MAD/I كانت بطيئة وMAD/I لم تمدد نفسها إلى استخدام واسع النطاق بالمقارنة مع 7090 MAD الأصلي.
جوم GOM هي أساسا لغة MAD 7090 والتي مددت وتعدلت لبناء الحاسب 360/370 مع بعض الحياكة بحكمة لتتناسب مع أفضل ممارسات البرمجة والمشاكل الراهنة. ونظام رسائل MTS كان مكتوباً بجوم.
MAD ومجلة MAD ووألفريد نومان Alfred E. Neuman.
خط طابعة المخرجات يتبع خطأ مترجم MAD على جهاز كمبيوتر آي بي إم 704 في جامعة ميشيغان، C. 1960
في إصدار ما قبل MAD الأصلي، وإشارة إلى أنها تحمل الاسم نفسه MAD، مجلة MAD MAD magazine، عندما كان البرنامج به أخطاء وقت الترجمة كثيرة المترجم كان يطبع الصورة على ورقة كاملة لألفريد E. نومان Alfred E. Neuman باستخدام فنASCII art. العنوان للقراءة، "انظر هذا الرجل حول البرنامج الخاص بك -- قد يرغب في نشرها –لا يخاف أبدا -- ولكن من ينظر إلى البرنامج الخاص بك، يجب عليك" هذه الميزة لم تكن مدرجة في النسخة الرسمية النهائية
ويتذكر بيرني غلر Bernie Galler :
"في الوقت الذي قمنا فيه بتصميم اللغة التي اعتقدنا انها سوف تستحق القيام بها والتي تمكننا من عمل مترجم، لم نستطيع ان نسميها ALGOL، كانj حقا مختلفة. وذلك عندما اعتمدنا الاسم MAD، لجهاز فك الشفرة الخوارزمية ميشيغان. كان لدينا بعض ردود الفعل المضحكة مع مجلة ماد للناس، وعندما طلبنا للحصول على إذن لاستخدام اسم MAD. في رسالة مضحكة جدا، وقالوا لنا أنهم سوف يأخذونا للمحكمة وكل شيء آخر، ولكن انتهى التهديد مع ملاحظة في أسفل -- "بالتأكيد، أمضوا قدما." للأسف، فقدت تلك الرسالة".
مثالا "مرحبا بالعالم" "hello, world".
في "مرحبا العالم""hello, world" البرنامج يطبع سلسلة "مرحبا بالعالم" "hello, world" إلى النهاية الطرفية لشاشة العرض.
PRINT FORMAT HELLOW
VECTOR VALUES HELLOW=$13h0Hello, world*$
END OF PROGRAM
يتم التعامل مع الحرف الأول من السطر ك حرف التحكم المنطقي، في هذا المثال حرف الصفر الذي يؤدي إلى طباعة خط مزدوج متباعد.
أو، في حالة ادخال كل الكلمات الرئيسية في المثقبة بلوحة المفاتيح الخاص بك هو عمل كثير، يمكنك استخدام تقلصات والمترجم يقوم بتوسيعها في العرض :
P'T HELLOW
V'S HELLOW=$13h0Hello, world*$
E'M
عناصر اللغة.
وتتألف MAD وجوم GOM، ولكن ليس MAD/I، من العناصر التالية :
نسق المدخلات.
برامج MAD هي سلسلة من بيانات مكتوبة على بطاقات مثقبة، في الغالب عبارة واحد للبطاقة الواحدة، رغم أنه يمكن ان تستكمل العبارة في بطاقات متعددة.
البطاقة الأولى للعبارة فارغة أو ليس لها ثقب في البطاقة في العمود 11 وبطاقات الاستمرار تحتوي على الأرقام 0 إلى 9 في العمود 11. يتم وضع علامة على التعليقات أو الملاحظات باستخدام حرف "R" في العمود 11.
مجموعة الأحرف المعتمد عليها تتضمن الأحرف الكبيرة من Aالى Z، والأرقام من 0الى9، والعلامات، (فاصلة)، + (زائد) -- (ناقص)، '(الفاصلة العليا)، =، *، /، (،) ،&amp;، وفارغة أو مسافة. ولكن لا يدعم الاحرف الصغيرة و"(اقتباس مزدوج).
المساحات ليست مهمة في أي مكان بخلاف ما ضمن ثوابت الحرف.
كلمات رئيسية قليلة في اللغة محجوزة لأن معظم الكلمات أطول من ستة أحرف أو محاطة بفترات. هناك معيار مجموعة من الاختصارات التي يمكن استخدامها لتحل محل الكلمات الطويلة. وتتألف هذه المجموعة من الأحرف الأولى والأخيرة من الكلمات الرئيسية مع الفاصلة العليا بينهما، مثل لW'R لكلمة WHENEVER و D'Nلكلمة DIMENSION.
بالنسبة إلى جوم GOM :
رسم خط تحت (_) وعلامة الاقتباس المزدوجة (") يتم إضافتها
قد يشمل الإدخال الحروف الكبيرة والصغيرة، ولكن الصغيرة يتم تجاهلا إلا في ثوابت الحرف.
MAD يستخدم مصطلح "mode" لأنواع البيانات الخاصة به. ويدعم خمس طرق أساسية :
السلسلة التي تطول عن ستة أحرف قد تكون ممثلة باستخدام المصفوفات.
النمط الثابت ويمكن إعادة تحديده بإضافة حرف M يليه رقم واحد في نهاية الثابت، حيث يشير 0 إلى نقطة عائمة، 1 صحيحا، 2 منطقياً، 3 اسم الوظيفة، 4 بيان (التسمية) العالمة.
قوائم المدخلات والمخرجات وعبارات القيم المتجهة VECTOR VALUES وبعض الوظائف الفرعية تسمح باستخدام كتل الرموز، والذي لها شكل A...,B أو A...B,، وهو إشارة إلى المنطقة بأكملها من A إلى B، شاملة. حسب وجهة vector، فإن A(1)...A(N) يكون A(1), A(2), A(3)..., A(N).
بالنسبة لجوم GOM :
في جوم GOM مصفوفات الأحرف يمكن الرجوع إليها باستخدام الترميز التالي :
العوامل الحسابية
A*. (وتمثل)
V* (تمثل أو)
مشغلي المؤشر (جوم فقط)
العوامل الترابطية
العوامل المنطقية
تمشغلين بت BIT (جوم فقط)
التعبيرات
تعبيرات العدد الصحيح، النقطة العائمة، والتعبيرات المنطقية. متوفرة والعدد الصحيح ومتغيرات النقطة العائمة والثوابت يمكن أن تجمع في تعبير واحد مع النقطة العائمة كنتيجة (قد يتم تنفيذ أجزاء من هذا الحساب باستخدام عدد حسابى صحيح والنتيجة النهائية قد تختلف عن تلك التي تم الحساب ككل بالنقطة العائمة).
الجانبين الأيسر والأيمن من المهمة لابد أن يكونان من نفس النوع، عدا عبارات العدد الصحيح أو النقطة العائمة على اليمين سوف يتم تحويلها لعبارات نقطة عائمة أو عدد صحيح إالى اليسار إذا لزم الأمر.
عبارات التصريح
المتغيرات قد تكون مصرحة ضمنا أو صراحة.من المفترض أن المتغيرات المصرح بها ضمناً يفترض أن تكون نقطة عائمة. الوضع الطبيعي NORMAL MODE هو عبارة قد تستخدم لتغيير المفترض هذا.
عبارات قابلة للتنفيذ
variable* متغير = التعبير (مهمة)
WHENEVER* (أى مكان) عبارة منطقية، وتعبير قابل للتنفيذ (شرطى بسيط بسيطة)
CONTINUE* (استمرار) (عبارة فعل لا شيء، عادة ما تستخدم لحمل تسمية البيان)
SAVE DATA list* قائمة حفظ البيانات
عبارات المدخلات والمخرجات
الوظائف
الوظائف الداخلية والخارجية معتمدة. يتم تصنيف الوظائف الداخلية كجزء من البرنامج الذي تستخدم فيه ويقتسموا الإعلان والمتغيرات مع البرنامج الرئيسي. الوظائف الخارجية يتم ترجمتها بشكل منفصل ولا تقتسم الإعلانات والمتغيرات.
أسماء الوظائف تنتهي بنقطة. الوظائف ذات القيمة الواحدة تسمى عندما يتم الرجوع إليها باسم تسمى كجزء من مصطلح، بينما الوظائف الغير أحادية القيمة (إجراءات) تسمى باستخدام العبارة EXECUTE (تنفيذ).
الوظائف تمرر المتحولات بالقيمة. المتحولات يمكن ان تكون مصطلحات وعبارات العلامات والأسماء الوظائف.
يسمح لتعريف الوظيفة الداخلية باستخدام عبارة واحدة للتعريف.
الوظائف المتداخلة أو المتتالية مسموح بها، على الرغم من أن الوظيفة يجب أن تقوم بعمل الحفظ المطلوب ومعاودة العمل من تلقاء نفسها نفعل.
مشغل التعريف وإعادة التعريف
أحد السمات الأكثر إثارة للاهتمام في MAD هو القدرة على تمديد اللغة من خلال إعادة تعريف المشغلين القائمين، وتحديد مشغلين جدد، أو تحديد أنواع بيانات جديدة (أوضاع). التعريفات مصنوعة باستخدام عبارات إعلان MAD ولغة التجميع mnemonics (الاستذكار) تشمل اتباع الإعلان حتى النهاية END التعليمة - الزائفة التي تنفذ العملية.
ثلاث باقات من التعاريف محددة مسبقا (ماتريكس MATRIX، الدقة المزدوجة DOUBLE PRECISION، ومعقدة COMPLEX) متاحة للإدراج في مصدر برامج MAD باستخدام عبارة الادراج INCLUDE.
أغار المانيتول والملح عبارة عن وسط لنمو الأحياء الدقيقة. يساعد هذا الوسط على نمو نوع معين من البكتيريا هذا الوسط يعد مهماً في المختبرات الطبية للتفرق بين المكروبات الممرضة في وقت قصير. الوسط يحتوي على تركيز عالي من الملح (7% - 10%) ،جاعلاً الوسط محددا لنمو الميكرو كوكس Micrococcaceae والبكتيريا العنقودية. وأيضا يعتبر مفرق بين أنواع بكتيريا العنقودية باستخدام سكر المانيتول واستخدام محدد للاس الهيدروجيني (phenol red).البكتيريا ايجابية الكواقيوليز تأخذ مستعمراتها اللون الأصفر والبكتيريا الأخرى تأخذ اللون الأحمر.هذا الوسط يستخدم لعزل البكتيريا العنقودية الممرضة.
أغار المانيتول والملح يحتوي على :-
Bachoon, Dave S., and Wendy A. Dustman. Microbiology Laboratory Manual. Ed. Michael Stranz. Mason, OH: Cengage Learning, 2008. Exercise 8, "Selective and Differential Media for Isolation" Print.
ناجي الخشناوي (ولد في 22 نوفمبر 1975 بسبيبة بتونس) هو كاتب وشاعر و صحفي تونسي يعمل رئيس تحرير مجلة الحياة الثقافية وهي مجلة ثقافية شهرية تصدرها وزارة الشؤون الثقافية التونسية. شغل سابقا منصب أمين تحرير جريدة الشعب.
تحصل ناجي الخشناوي على الأستاذية في اللغة والآداب العربية من كلية الآداب والعلوم الإنسانية بمنوبة.
تمت جلسة استماع لناجي الخشناوي في 10 يوليو 2011 على إثر شكاية تقدم بها رجل الأعمال التونسي ناجي المهيري. وقد كتب الخشناوي في 22 جانفي 2011 مقالا في جريدة الشعب عنوانه “من سيحاكم نُسخ بن علي” وبدأ الخشناوي في سرد عدد من الأسماء التي تورطت في عهد الرئيس السابق زين العابدين بن علي انطلاقا من علي السرياطي مدير الأمن الرئاسي السابق مرورا بالدوّاس قريب الرئيس المخلوع والمدير السابق للمصالح العدلية لوزارة العدل و عبد الوهاب عبد الله و عبد العزيز بن ضياء ورافع دخيل وسيدة العقربي وصولا إلى رجال الأعمال مثل ناجي المهيري والهادي الجيلاني وعزيز ميلاد وغيرهم من الذين تورطوا مع النظام السابق، ويرى الخشناوي في مقاله أنّ يجب أن تصدر في حقهم بطاقات جلب سواء داخل تونس ودوليّا ويتمّ التحفّظ عليهم ثمّ تتم محاكمتهم محاكمة علنيّة من قبل هيئة قضائية مستقلّة.
متزوج من يسرى فراوس الشاعرة والمحامية ورئيسة الجمعية التونسية للنساء الديمقراطيات.
طوس مريب مدينة صغيرة وعاصمة لمحافظة جلجدود الصومالية. وموقعها هو، وهي مركز الإداري ويبلغ عدد سكانها الدائمين 9000. وكانت البلدة تحت سيطرة المحاكم الإسلامية منذ أوائل عام 2006. وترجمة اسمها مستمدة من تأثير شرب المياه المحلية.
في يوليو 2006 قتل شخصان عندما فشلت ميليشيا محلية موالية لاتحاد المحاكم الإسلامية في تفريق المتظاهرين بإطلاق النار في الهواء. وكان الناس قد أتوا لمشاهدة مباراة بين ألمانيا وإيطاليا في الدور نصف النهائي لكأس العالم واحتجوا على اغلاق دار السينما. ووكان إغلاق السينما بسبب إعلان عن الكحول خلال المباراة.
في 1 مايو 2008 انفجرت قنبلة في منزل المعلم عدن حاشي آيرو قائد تنظيم الشباب العسكرية فقتل ايرو ومعه أربعة عشر شخصا بينهم رتب عسكرية كبيرة. وذكرت اذاعة شبيلي ان ضربة جوية تسببت في انفجاران ضخمان نفذته أربعة طائرات أمريكية من نوع إيه سي-130
وفي 28 ديسمبر 2008 انتزعت جماعة صوفية معتدلة اسمها مجموعة أهل السنة والجماعة المدينة من تنظيم الشباب. وفي 23 أبريل انتزع تنظيم الشباب تلك المدينة من قوات مجموعة اهل السنة والجماعة الموالية للحكومة الانتقالية، وأجبرتها على التراجع وقد فر بعض السكان للسلامة من المعارك.
وسط اختبار الفطر الجلدي (اختصارًا DTM) هو أغار خاص يُستخدم في علم الفطريات الطبية. يعتمد على آغار سابورود مع سيكلوهيكسيميد لتثبيط نمو الرميات، ومضاد حيوي لتثبيط البكتيريا، وحمرة الفينول لتحديد الأس الهيدروجيني. يُستخدم الأس الهيدروجيني لتمييز الفطريات الجلدية، التي تستخدم موادًا نيتروجينية في الأيض، منتجةً موادًا جانبية قلوية، وَتُظهر اللون الأحمر في وسط الاختبار. تستخدم الفطريات الرمية النموذجية السكريات في الأيض، وتنتج موادًا جانبية حمضية ولا تظهر اللون الأحمر.
لغة البرمجة جيه J، التي طورها كينيث إي إيفرسون وروجر هوي في التسعينات هي تركيبة من اللغات إيه بي إل(التي طورها إيفرسون أيضا) و FP و FL Function- level اللذان صممهما جون باكوس.
ولتجنب تكرار مشكلة الحروف والأشكال المتأصلة باللغة إيه بي إل، تتطلب لغة جيه مجموعة أحرف وأشكال أسكي ASCII الرئيسية واللجوء إلى استخدام الأشكال الثنائية التي تتكون باستخدام النقطة أو الفاصلة للتوسع في معنى الأشكال أو الأحرف الرئيسية المتاحة. علاوة على ذلك، حتى تظل اللغة بسيطة وللحفاظ على تحليلها، وللتعويض عن عدم نقص الاختلافات بين الأحرف في لغة ASCII، تقوم لغة جيه بمعالجة معظم الأشكال التي ربما تكون في حاجة إلى موازنتها باللغات الأخرى (مثل [] {} "" ``&lt;&gt;)) على أنها رموز مستقلة بذاتها أو (مع الأشكال الثنائية) كجزء من الرموز متعددة الأشكال.
ولغة جي هي لغة برمجة منظمة وموجزة وتلاءم البرمجيات الإحصائية والرياضية بصورة أفضل خاصة عند آداء عمليات حساب المصفوفات. كما تم استخدامها أيضا في البرمجة القصوى وتحليل أداء الشبكة.
ومثل اللغات FP/FL، فإن جيه تدعم البرمجة على المستوى الوظائفي Function- level (الذي تعرف أيضا بالبرمجة الوظائفية عالية النظام) وذلك عبر سمات البرمجة الضمنية بها (لاحظ أن البرمجة على المستوى الوظائفي ليست مثل البرمجة الوظائفية),
وعلى عكس معظم اللغات التي تدعم البرمجة ذات التوجه الموضوعي، فإن موضوع مساحة الاسم namespace التسلسلية المرنة للغة جيه (حيث يتواجد كل اسم في منطقة معينة) يمكن استخدامها بصورة فعال لتكون إطارا لكل من البرمجة ذات التوجه الموضوعي المبنية على النموذج الأصلي والأخرى المبنية على الطبقات.
ولغة جيه ليست لغة برمجة فون نيومان von Neumann، ومع ذلك فمن الممكن استخدام أسلوب برمجة فون نيومان.
منذ مارس 2011، أصبحت لغة جيه برنامج مفتوح المصدر وحر تحت ترخيص GPLv3. يمكن للمرء أيضا أن يشتري مصدرا منها للاستخدام التجاري بموجب رخصة يتم التفاوض عليها.
تتيح جيه أسلوبا خالي من النقاط وذو تركيب وظيفي، وم ثم يمكن أن تكون برامجها موجزة للغاية ومحمولة على تشويش للشفرة.
برنامج مرحبا بالعالم hello world program في جي0 هو
'Hello, world!'
تطبيق هذا البرنامج يعكس الاستخدام التقليدي لجيه- يتم إدخال البرامج إلى جلسة ترجمة للجيه، ثم تعرض نتائج ظاهرة. من الممكن أن يتم تدبر أمر تنفيذ مخطوطات الجيه على أن تكون برامج مستقلة بذاتها. ولكن آليات ربط المخطوط بالمترجم تعتمد على النظام. هذا هو الشكل الذي تبدو عليه مع نظام تشغيل يونيكس UNIX:
#!/bin/jc
echo 'Hello, world!'
exit "
على مر التاريخ كانت لغة إيه بي إل تستخدم الرمز / للإشارة إلى مطوية ما، لذلك فإن +/1 2 3 كانت تكافئ 1+2+3. في نفس الوقت، كان يتم تمثيل الأقسام برموز التقسيم الرياضية (الأوبيلوس obelus، ÷) والذي كانت تنفذ بالضرب على علامة الناقص والنقطتان معا (في كلا النهايتين الورقيتين EBCDIC و ASCII). نظرا لأن ASCII بوجه عام لا تدعم الضربات المزدوجة بطريقة تعتمد على الأداة، ولا تتضمن رمز تقسيم في حد ذاته، ولغة جيه تستعين بعلامة % لتشير على هذا التقسيم، كصورة تقريبية مرئية أو تذكرة. (وهذا يفسر شيئا من الصفات الخاصة بالذاكرة لرموز جيه، وشيئا من المآزق التي تظهر بواسطة استخدام ASCII).
وفيما يلي نوضح برنامجا لحساب متوسط قائمة من الأرقام:
avg=: +/ % #
avg 1 2 3 4
تشير # إلى عدد العناصر في المصفوفة. +/ تلخص عناصر المصفوفة. %تقسم المجموع على عدد العناصر. ملحوظة: avg معرفة سابقا باستخدام سلسلة من ثلاث أفعال ("+/"، "%"و "#") والتي تعرف باسم الشوكة forkز خاصة أن (V0 V1 V2) Ny هي نفسها مثل (V0 Ny) V1 (V2 Ny) والتي توضح بعض نقاط القوة لدى لغة جيه.
(V0 V1 V2 هنا تشير إلى الأفعال و Ny تشير إلى الأسماء)
بعض الأمثلة على استخدام avg :
v=: ?. 20 $ 100 ملاحظة: متجه عشوائي
46 55 79 52 54 39 60 57 60 94 46 78 13 18 51 92 78 60 90 62
avg v
59.2
4 avg\ v ملاحظة: تحريك المتوسط على فترات بطول 4
58 60 56 51.25 52.5 54 67.75 64.25 69.5 57.75 38.75 40 43.5 59.75 70.25 80 72.5
m=: ?. 4 5 $ 50 ملاحظة: مصفوفة عشوائية
46 5 29 2 4
39 10 7 10 44
46 28 13 18 1
42 28 10 40 12
avg"1 m ملاحظة: تطبيق الدالة avg على كل مصفوفة فرعية برتبة 1 (كل صف) في m
17.2 22 21.2 26.4
المرتبة rank: هي مفهوم حتمي في لغة الجيه. دلالته في لغة الجيه شبيهة بالاختيار "select" في لغة SQL و"while" في لغة السي.
فيما يلي تطبيق لquicksort، من قاموس لغة جيه:
sel=: adverb def 'u # ['
quicksort=: verb define
if. 1&gt;: #y do. y
else.
(quicksort y &lt;sel e),(y =sel e),quicksort y&gt;sel e=.y(~?#y
وفيما يلي مثالا على الكويكسورت quicksort يظهر البرمجة الضمنية tacit programming. تتضمن البرمجة الضمنية تركيبة من بعض الوظائف معا ولا تشير بشكل صريح إلى أي من لمتغيرات. دعم لغة الجيه لforks و hooks يشير إلى القواعد بشأن كيف أن المناقشات التي تطبق على هذه الوظيفة ستطبق على وظائف محتواها.
quicksort=: (($:@(&lt;#[)، (=#[)، $:@(&gt;#[)) ({~ ?@#)) ^: (1&lt;#)
التعبير التالي يبين pi مع أرقام n ويعرض إمكانات الدقة المتوسعة لجيه:
n=: 50 ملاحظة: n هي عدد الأرقام المطلوب
&lt;.@o. 10x^n ملاحظة: دقة إضافية بمقدار 10 للقوة النونية
314159265358979323846264338327950288419716939937510
أنواع وهياكل البيانات.
تدعم لغة الجيه ثلاث أنواع بسيطة:
من بين هذه الثلاثة تتميز الرقيمة بكثرة تنوعها.
أحد الأنماط الرقمية للغة الجيه هي البايت. يوجد قيمتين للبايت وهما صفر ووواحد. إضافة إلى ذلك يمكن تصنيف البايتات في قوائم. على سبيل المثال تكون 10101100 قائمة من ثماني بايتات. ومن الناحية التركيبية/ نجد أن محلل الجيه يتعامل مع ذلك على أنه كلمة واحدة (أحرف المسافات تعرف بأنها كلمة تشكل حرفا أو كيانا حين تفصل بين اثنين يمكن اعتبارهما من ناحية أخرى كلمات رقمية). كما يدعم أيضا قوائم ذات طول اعتباطي.
علاوة على ذلك، فإن جيه تدعم كل العمليات المزدوجة المعتادة في هذه القوائم، مثل and, or, exclusive or, rotate, shift, not...الخ، على سبيل المثال.
1 0 0 1 0 0 1 0 +. 0 1 0 1 1 0 1 0 ملاحظة: أو
1 1 0 1 1 0 1 0
3 |. 1 0 1 1 0 0 1 1 1 1 1 ملاحظة: دوّر
1 0 0 1 1 1 1 1 1 0 1
وعلينا أن نعرف أن جيه أيضا تدعم مصفوفات نظامية أعلى من البايتات- ويمكن أن تتكون من مصفوفات ثنائية الأبعاد وثلاثية الأبعاد.. الخ. تلك العمليات المذكورة سابقا تؤدي عملا جيدا في هذه المصفوفات.
الأنماط الرقمية الأخرى تتضمن الأعداد الصحيحة (3، 42)، النقاط العائمة (3.14، 8.8e22)، التركيبات (oj1, 2.5j3e88)، الأرقام الصحيحة الدقيقة المتوسعة (12345678901234567890x)، الكسر المنطقي(الدقة المتوسعة) (1r2, 3r4). وفيما يتعلق بالبايتات، يمكن أن يتم تشكيل تلك في قوائم أو مصفوفات ذات أبعاد اعتباطية. وفيما يتعلق بالبايتات، تتم العمليات على كافة الأرقام الموجودة بالمصفوفة.
يمكن تحويل قوائم البايتات لأرقام صحيحة باستخدام العلامة.verb#. يمكن تحويل الأرقام الصحيحة إلى قوائم من البايتات باستخدام العلامة #:verb. (وعند التحليل تكون كل من J. و: كيانات تكون كلمات. لا يمكن اعتبارها مطلقا كرموز في حد ذاتها إلا إذا سبقتها مسافة.)
تدعم لغة جيه أيضا النوع الحرفي (الرمزي الحرفي). تدرج الحروف بين علامات اقتباس 'a' أو "b". كما يتم دعم قائمة من الأحرف أيضا باستخدام تقليد وضع تلك الأحرف الرمزية المتعددة بين علامات اقتباس مثل 'abcdefg'عادة ما يكون عرض الأحرف الرمزية الفردية 8 بايت (ascii)، ولكن جيه أيضا تدعم أحرف مكتوبة أخرى وهي (Unicode). العمليات الرقمية والبوليانية غير مدعومة بالأحرف، ولكن العمليات ذات التوجه التجميعي (مثل rotate) فهي مدعومة.
وفي النهاية، هناك نوع البيانات الصندوقية. عادة يتم وضع البيانات في صندوق باستخدام عملية&gt; (بدون أي برهان أو معطى على اليسار- وإذا ما كان هناك أحد المعطيات على اليسار فسوف تكون تلك عملية "أقل من "). وهذا هو نظير عملية &amp; بلغة السي (بدون أي معطيات يسارية). ومع ذلك حين تكون نتيجة &amp; السي ذات دلالات مرجعية، فإن نتيجة عملية&gt; للجي تكون ذات دلالات قيمة. بمعنى آخر فإن&gt; هي وظيفة وينتج عنها نتيجة. النتيجة هي أبعاد صفرية بغض النظر عن هيكل البيانات المتضمنة. من وجهة نظر مبرمج الجيه،&gt; "تضع البيانات في صندوق" وتدع المبرمج يعمل بمصفوفة من الصناديق (ويمكن دمجها مع صناديق أخرى، أو يمكن عمل نسخ أخرى من هذا الصندوق). البيانات الموجودة بالصندوق يمكن عرضها بلغة جيه، إلى حد ما بعد النمط، يقوم بعض مترجمي لغة SQL بتزيين الجداول الناتجة عن بيانات مختارة.
&lt;1 0 0 1 0
|1 0 0 1 0|
النمط الجماعي الوحيد الذي تقدمه لغة الجيه هي المصفوفة ذات الأبعاد الاعتباطية. معظم اللوغاريتمات يمكن أن يتم التعبير عنها بدقة باستخدام عمليات على هذه المصفوفات.
مصفوفات جيه ذات أنماط متجانسة، على سبيل المثال القائمة 123 هي قائمة من الأعداد الصحيحة بالرغم من أن العدد 1 هو بايت. لمعظم الأجزاء، هذه المشاكل في أنواع الأنماط شفافة بالنسبة للمبرمج. فقط بعض العمليات المتخصصة الخاصة تكشف عن اختلافات في النوع. على سبيل المثال، القائمة 1.0 0.0 1.0 0.0 يتم التعامل معها بنفس الطريقة، بواسطة معظم العمليات، مثل القائمة 1 0 1 0.
لغة الجيه أيضا تدعم المصفوفات الرقمية المحللة حيث القيم غير الصفرية يتم تخزينها بمؤشراتها. هذه هي آلية جيدة حيث تكون قيم قليلة نسبيا غير صفرية.
تدعم لغة الجيه أيضا موضوعات وطوائف، ولكن هذه مجرد أشياء من صنع الإنسان عن كيفية تسمية الأشياء، وهي ليست أنواع بيانات في حد ذاتها. عوضا عن ذلك، تستخدم الأحرف الصندوقية للإشارة إلى الأشياء (والطوائف). بيانات لغة الجيه ذات دلالات لها قيمة، ولكن الأشياء والطوائف تحتاج إلى دلالات مرجعية.
نوع زائف آخر – يرتبط بالاسم بدلا من القيمة وهو ملفات خرائط الذاكرة.