محتويات
- لغة برمجة الكمبيوتر
- أنواع لغات البرمجة عالية المستوى
- أولًا : لغات الآلة والتجميع
- ثانيًا : اللغات الخوارزمية
- 1- لغة البرمجة فورتران FORTRAN
- 2- لغة البرمجة ALGOL
- 3- لغة البرمجة LISP
- 4- لغة البرمجة C
- ثالثًا: اللغات الموجهة للأعمال
- 1- كوبول COBOL
- 2- SQL
- رابعًا : لغات موجهة نحو التعليم
- 1- الأساسي BASIC
- 2- باسكال
- 3- شعار
- Hypertalk -4
- خامسًا : اللغات الشيئية
- C -1 ++
- 2- ادا Ada
- 3- جافا
- 4- البصرية الأساسية
- سادسًا : لغات تعريفية
- سابعًا : لغات البرمجة النصية
- ثامنًا : لغات تنسيق المستندات
- 1- تكس TeX
- 2- بوستسكريبت
- 3- SGML
تتيح اللغات عالية المستوى للمبرمجين ، كتابة تعليمات بلغة يسهل فهمها ، عن اللغات منخفضة المستوى ، وهناك حاجة إلى المترجمين لترجمة البرامج المكتوبة بلغات عالية المستوى ، إلى رمز الجهاز الذي يفهمه الكمبيوتر.
لغة برمجة الكمبيوتر
لغة برمجة الكمبيوتر ، أي من اللغات المختلفة ، للتعبير عن مجموعة من التعليمات التفصيلية للكمبيوتر الرقمي ، يمكن تنفيذ هذه التعليمات مباشرة ، عندما تكون في شكل رقمي خاص بمصنّع الكمبيوتر ، ويعرف باسم لغة الآلة ، أو بعد عملية استبدال بسيطة عند التعبير عنها بلغة تجميع مقابلة ، أو بعد الترجمة من بعض اللغات (ذات المستوى الأعلى) ، وعلى الرغم من وجود العديد من لغات الكمبيوتر ، يتم استخدام عدد قليل نسبيًا على نطاق واسع.
وتعد لغات الآلة ، والتجميع (منخفضة المستوى) ، مما يتطلب من المبرمج ، أن يدير بشكل صريح جميع الميزات الفردية للكمبيوتر ، لتخزين البيانات وتشغيلها ، وفي المقابل ، تحمي اللغات عالية المستوى المبرمج ، من القلق بشأن مثل هذه الاعتبارات ، كما توفر تدوينًا يسهل كتابته وقراءته ، بواسطة المبرمجين.
أنواع لغات البرمجة عالية المستوى
أولًا : لغات الآلة والتجميع
تتكون لغة الآلة من الرموز الرقمية للعمليات ، والتي يمكن لجهاز كمبيوتر معين تنفيذها مباشرة ، والرموز عبارة عن سلاسل من 0s و 1s ، أو أرقام ثنائية (بتات) ، والتي يتم تحويلها بشكل متكرر من وإلى سداسي عشري (الأساس 16) ، للعرض البشري وتعديلها.
وعادةً ما تستخدم تعليمات لغة الآلة بعض البتات لتمثيل العمليات ، مثل الجمع ، وبعضها لتمثيل المعاملات ، أو ربما موقع التعليمات التالية ، ومن الصعب قراءة وكتابة لغة الآلة ، لأنها لا تشبه التدوين الرياضي التقليدي ، أو اللغة البشرية ، وتختلف رموزها من كمبيوتر إلى آخر.
لغة التجميع هي مستوى واحد فوق لغة الآلة ، ويستخدم رموزًا رمزية قصيرة للتعليمات ، ويسمح للمبرمج بإدخال أسماء كتل الذاكرة التي تحتوي على البيانات ، وبالتالي يمكن للمرء كتابة (إضافة أجر ، إجمالي) ، بدلاً من (0110101100101000) لتعليمات تضيف رقمين.
وقد تم تصميم لغة التجميع لترجمتها بسهولة إلى لغة الآلة ، وعلى الرغم من أنه قد تتم الإشارة إلى كتل البيانات بالاسم ، بدلاً من عناوين أجهزتها ، إلا أن لغة التجميع لا توفر وسائل أكثر تعقيدًا لتنظيم المعلومات المعقدة ، مثل لغة الآلة ، وتتطلب لغة التجميع معرفة مفصلة ببنية الكمبيوتر الداخلية.
وهي مفيدة عندما تكون هذه التفاصيل مهمة ، كما هو الحال في برمجة الكمبيوتر للتفاعل مع أجهزة الإدخال / الإخراج (الطابعات ، والماسحات الضوئية ، وأجهزة التخزين وما إلى ذلك). [1]
ثانيًا : اللغات الخوارزمية
تم تصميم اللغات الخوارزمية للتعبير عن الحسابات الرياضية ، أو الرمزية ، ويمكنهم التعبير عن العمليات الجبرية ، في تدوين مشابه للرياضيات ، والسماح باستخدام البرامج الفرعية التي تحزم العمليات شائعة الاستخدام ، لإعادة استخدامها ، وقد كانت اللغات الأولى عالية المستوى.
1- لغة البرمجة فورتران FORTRAN
أول لغة خوارزمية مهمة كانت FORTRAN (ترجمة الصيغة) ، التي تم تصميمها في عام 1957م ، من قبل فريق IBM بقيادة جون باكوس ، وقد كان مخصصًا للحسابات العلمية بأرقام ، ومجموعات حقيقية منظمة على هيئة صفائف أحادية ، أو متعددة الأبعاد.
وتضمنت هياكل التحكم الخاصة به عبارات IF الشرطية ، والحلقات المتكررة (ما يسمى بحلقات DO) ، وعبارة GOTO التي سمحت بتنفيذ غير لاحق لرمز البرنامج ، كما جعل FORTRAN من السهل وجود برامج فرعية للعمليات الرياضية الشائعة ، وبناء مكتبات منها.
كما تم تصميم فورتران FORTRAN أيضًا ، للترجمة إلى لغة آلة فعالة ، وكانت ناجحة على الفور ، وتستمر في التطور.
2- لغة البرمجة ALGOL
تم تصميم ALGOL (لغة الخوارزمية) من قبل لجنة من علماء الكمبيوتر الأمريكيين ، والأوروبيين خلال عامي 1958م -1960م ، لنشر الخوارزميات ، وكذلك لإجراء العمليات الحسابية ، مثل LISP ، وكان لدى ALGOL برامج فرعية متكررة ، وإجراءات يمكن أن تستدعي نفسها لحل مشكلة عن طريق اختزالها ، إلى مشكلة أصغر من نفس النوع.
وقدم ALGOL بنية كتلة ، حيث يتكون البرنامج من كتل ، قد تحتوي على كل من البيانات والتعليمات ، ولها نفس بنية البرنامج بأكمله ، وأصبحت بنية الكتل أداة قوية ، لبناء برامج كبيرة من مكونات صغيرة ، كما ساهم ALGOL بتدوين لوصف بنية لغة البرمجة ، Backus-Naur Form ، والتي أصبحت في بعض الاختلافات الأداة القياسية لتحديد صياغة (قواعد) لغات البرمجة.
كما تم استخدام ALGOL أيضًا على نطاق واسع في أوروبا ، وظل لسنوات عديدة اللغة التي تم نشر خوارزميات الكمبيوتر بها ، والعديد من اللغات المهمة ، مثل Pascal و Ada.
3- لغة البرمجة LISP
تم تطوير LISP (معالجة القائمة) حوالي عام 1960م ، من قبل جون مكارثي ، في معهد ماساتشوستس للتكنولوجيا (MIT) ، وتم تأسيسه على النظرية الرياضية للوظائف العودية (التي تظهر فيها وظيفة في تعريفها الخاص).
وبرنامج LISP هو وظيفة ، يتم تطبيقها على البيانات ، بدلاً من كونها سلسلة من الخطوات الإجرائية ، كما هو الحال في FORTRAN و ALGOL ، ويستخدم LISP تدوينًا بسيطًا للغاية ، ويتم فيه إعطاء العمليات ومعاملاتها في قائمة بين قوسين.
على سبيل المثال ، ( a (* b c) ) ، تعني ( b * c) على الرغم من أن هذا يبدو غير ملائم ، إلا أن الترميز يعمل جيدًا لأجهزة الكمبيوتر ، ويستخدم LISP أيضًا بنية القائمة ، لتمثيل البيانات ، ولأن البرامج والبيانات تستخدم نفس البنية ، فمن السهل لبرنامج LISP أن يعمل على برامج أخرى مثل البيانات.[2]
أصبح LISP لغة مشتركة لبرمجة الذكاء الاصطناعي (AI) ، ويرجع ذلك جزئيًا إلى التقاء عمل LISP و AI في MIT ، وجزئيًا لأن برامج الذكاء الاصطناعي القادرة على (التعلم) ، ويمكن كتابتها في LISP كبرامج تعديل ذاتي ، وتطورت LISP من خلال العديد من اللهجات ، مثل Scheme و Common LISP.
4- لغة البرمجة C
تم تطوير لغة البرمجة C في عام 1972م ، بواسطة Dennis Ritchie ، و Brian Kernighan في شركة AT&T ، لبرمجة أنظمة تشغيل الكمبيوتر ، وقدرتها على هيكلة البيانات ، والبرامج من خلال تكوين وحدات أصغر مماثلة لتلك التي في لغة البرمجة ALGOL.
ويستخدم ترميز مدمج ، ويتيح للمبرمج القدرة على العمل مع عناوين البيانات ، وكذلك مع قيمها ،هذه القدرة مهمة في برمجة الأنظمة ، وتشارك C لغة التجميع بالقدرة على استغلال جميع ميزات البنية الداخلية للكمبيوتر C ، مع سلالتها C ++ ، تظل واحدة من أكثر اللغات شيوعًا.
ثالثًا: اللغات الموجهة للأعمال
1- كوبول COBOL
تم استخدام COBOL (اللغة المشتركة الموجهة للأعمال) بكثافة ، من قبل الشركات منذ إنشائها في عام 1959م ، وأنشأت لجنة من مصنعي ، ومستخدمي الكمبيوتر ، والمنظمات الحكومية الأمريكية CODASYL (لجنة أنظمة البيانات واللغات) ، لتطوير معيار اللغة والإشراف عليه من أجل ضمان قابليتها عبر أنظمة متنوعة.
ويستخدم COBOL تدوينًا شبيهًا باللغة الإنجليزية غير مألوف ، تقوم حسابات الأعمال بتنظيم ، ومعالجة كميات كبيرة من البيانات ، ويقدم COBOL هيكل بيانات السجل لمثل هذه المهام ، يجمع السجل بيانات غير متجانسة ، مثل الاسم ، ورقم الهوية ، والعمر ، والعنوان في وحدة واحدة ، وهذا يتناقض مع اللغات العلمية ، حيث تكون صفائف الأرقام المتجانسة شائعة ، تعد السجلات مثالاً هامًا لبيانات (التقطيع) في كائن واحد ، وتظهر بجميع اللغات الحديثة تقريبًا.
2- SQL
SQL (لغة الاستعلام المنظمة) ، وهي لغة لتحديد تنظيم قواعد البيانات (مجموعات السجلات) ، تسمى قواعد البيانات المنظمة باستخدام SQL الارتباطي ، لأن SQL توفر القدرة على الاستعلام ، عن قاعدة بيانات للمعلومات التي تقع في علاقة معينة ، وعلى سبيل المثال ، قد يكون الاستعلام (البحث عن جميع السجلات مع كل من last_name Smith ومدينة نيويورك) ، وتستخدم برامج قواعد البيانات التجارية عادةً ، لغة شبيهة بـ SQL لاستعلاماتها.
رابعًا : لغات موجهة نحو التعليم
1- الأساسي BASIC
تم تصميم BASIC ، (رمز التعليمات الرمزية لجميع الأغراض للمبتدئين) ، في كلية دارتموث في منتصف الستينيات من قبل جون كيميني وتوماس كورتز ، وكان القصد منه أن يكون من السهل التعلم ، من قبل المبتدئين ، ولا سيما التخصصات العلمية غير الكمبيوتر ، والعمل بشكل جيد على كمبيوتر تقاسم الوقت مع العديد من المستخدمين ، وكان له هياكل بيانات بسيطة ، وترميز وتم تفسيره : تم ترجمة برنامج BASIC سطرًا تلو الآخر ، وتم تنفيذه أثناء ترجمته ، مما جعل من السهل تحديد أخطاء البرمجة.
2- باسكال
حوالي عام 1970م ، صمم نيكلاوس ويرث من سويسرا باسكال لتدريس البرمجة المنظمة ، والتي أكدت على الاستخدام المنظم لهياكل التحكم المشروطة ، والحلقية بدون بيانات GOTO ، على الرغم من أن باسكال يشبه ALGOL في التدوين ، إلا أنه يوفر القدرة على تحديد أنواع البيانات ، التي يمكن من خلالها تنظيم المعلومات المعقدة ، وهي ميزة تتجاوز قدرات ALGOL بالإضافة إلى FORTRAN و COBOL ، وسمحت أنواع البيانات ، المعرفة من قبل المستخدم للمبرمج بإدخال أسماء للبيانات المعقدة ، والتي يمكن لمترجم اللغة بعد ذلك ، التحقق من الاستخدام الصحيح قبل تشغيل البرنامج.
وخلال أواخر السبعينيات والثمانينيات ، كانت باسكال واحدة من أكثر اللغات المستخدمة على نطاق واسع لتعليم البرمجة. كان متاحًا على جميع أجهزة الكمبيوتر تقريبًا ، وبسبب معرفته ووضوحه وأمنه ، تم استخدامه لبرامج الإنتاج وكذلك للتعليم.
كما أن صغر حجمها ، وبساطتها جعلت BASIC لغة شائعة لأجهزة الكمبيوتر الشخصية المبكرة ، واعتمدت أشكاله الأخيرة العديد من هياكل البيانات والتحكم ، في اللغات المعاصرة الأخرى ، مما يجعلها أكثر قوة ولكن أقل ملاءمة للمبتدئين.
3- شعار
تم إنشاء الشعار في أواخر الستينيات باعتباره لهجة LISP مبسطة للتعليم ، واستخدمه سيمور بابيرت وآخرون في معهد ماساتشوستس للتكنولوجيا لتعليم التفكير الرياضي لأطفال المدارس ، كان لديها بنية أكثر تقليدية من LISP وظهرت (رسومات السلحفاة) ، وهي طريقة بسيطة لتوليد رسومات الكمبيوتر.
وقد جاء الاسم من مشروع مبكر ، لبرمجة روبوت يشبه السلاحف ، استخدمت رسومات السلاحف تعليمات تتمحور حول الجسم ، حيث تم تحريك كائن حول الشاشة بواسطة أوامر ، مثل (اليسار 90) و (إلى الأمام) ، والتي تحدد الإجراءات المتعلقة للموضع الحالي وتوجيه الكائن بدلاً من إطار ثابت ، جنبا إلى جنب مع الروتينية العودية ، جعلت هذه التقنية من السهل برمجة أنماط معقدة وجذابة.
Hypertalk -4
تم تصميم Hypertalk ليكون (برمجة لبقية منا) من قبل بيل أتكينسون لأجهزة Macintosh ، من Apple ، باستخدام بنية بسيطة تشبه اللغة الإنجليزية ، مكّن Hypertalk أي شخص من الجمع بين النص ، والرسومات والصوت بسرعة في (مكدسات مرتبطة) ، ويمكن التنقل فيها عن طريق النقر بالماوس على الأزرار القياسية ، التي يوفرها البرنامج.
كان Hypertalk شائعًا بشكل خاص بين المعلمين في الثمانينيات ، وأوائل التسعينيات للعروض التقديمية متعددة الوسائط في الفصول الدراسية ، وعلى الرغم من أن Hypertalk يحتوي على العديد من ميزات اللغات الموجهة للكائنات ، إلا أن Apple لم تقم بتطويرها لأنظمة كمبيوتر أخرى ، وتركتها تتلاشى ، مع انخفاض حصة Apple في السوق في التسعينات ، وتركت طريقة جديدة عبر النظام الأساسي ، لعرض الوسائط المتعددة Hypertalk كلها قديمة تقريبًا.
خامسًا : اللغات الشيئية
تساعد اللغات الموجهة للكائنات على إدارة التعقيد في البرامج الكبيرة ، وتقوم الكائنات بحزم البيانات ، والعمليات عليها بحيث تكون العمليات فقط متاحة للجمهور ، ويتم إخفاء التفاصيل الداخلية لهياكل البيانات ، وجعل إخفاء المعلومات هذا البرمجة على نطاق واسع أسهل من خلال السماح للمبرمج بالتفكير في كل جزء من البرنامج بمعزل عن الآخر.
بالإضافة إلى ذلك ، قد تكون الأشياء مستمدة من الأشياء الأكثر عمومية ، مثل هذا التسلسل الهرمي للكائن جعل من الممكن تعريف الكائنات المتخصصة ، دون تكرار كل ما هو أكثر عمومية ، وقد بدأت البرمجة الشيئية باستخدام لغة (Simula (1967 ، والتي أضافت معلومات مختبئة إلى ALGOL ، وهناك لغة مؤثرة أخرى موجهة للكائنات كانت (Smalltalk (1980 ، حيث كان البرنامج عبارة عن مجموعة من الكائنات التي تفاعلت عن طريق إرسال الرسائل إلى بعضها البعض.
C -1 ++
لغة C ++ ، التي طورتها Bjarne Stroustrup ، في AT & T في منتصف الثمانينيات ، وسعت لغة C بإضافة أشياء إليها مع الحفاظ على كفاءة برامج C ، وكانت واحدة من أهم اللغات ، لكل من التعليم والبرمجة الصناعية ، كما تم كتابة أجزاء كبيرة من العديد من أنظمة التشغيل ، مثل نظام التشغيل Windows 98 ، الخاص بشركة Microsoft في C ++.
2- ادا Ada
تم تسمية Ada باسم Augusta Ada King ، كونتيسة لوفليس ، الذي كان مساعدًا للمخترع الإنجليزي تشارلز باباج في القرن التاسع عشر ، ويطلق عليه أحيانًا أول مبرمج كمبيوتر ، وتم تطوير لغة Ada في أوائل الثمانينيات لصالح وزارة الدفاع الأمريكية ، للبرمجة على نطاق واسع.
وقد جمعت بين تدوين يشبه باسكال ، والقدرة على تجميع العمليات والبيانات في وحدات مستقلة ، لم يكن شكلها الأول ، Ada 83 ، موجهًا بشكل كامل للكائنات ، لكن Ada 95 اللاحق قدم كائنات وقدرة على إنشاء تسلسل هرمي لها ، في حين لم يعد التفويض لاستخدامه في العمل في وزارة الدفاع ، تظل Ada لغة فعالة لهندسة البرامج الكبيرة.
3- جافا
في أوائل التسعينات ، تم تصميم جافا بواسطة شركة Sun Microsystems ، كلغة برمجة لشبكة الويب العالمية (WWW) ، على الرغم من أنها تشبه C ++ في المظهر ، إلا أنها كانت موجهة بالكامل ، على وجه الخصوص ، وتم الاستغناء عن Java بميزات أقل مستوى ، بما في ذلك القدرة على معالجة عناوين البيانات ، وهي قدرة غير مرغوب فيها ولا مفيدة في برامج الأنظمة الموزعة.
ومن أجل أن تكون محمولة ، تتم ترجمة برامج Java بواسطة Java Virtual Machine خاصة ، بكل منصة كمبيوتر ، والتي تقوم بعد ذلك بتنفيذ برنامج Java ، بالإضافة إلى إضافة إمكانات تفاعلية إلى الإنترنت من خلال (تطبيقات) الويب ، وتم استخدام Java على نطاق واسع ، لبرمجة الأجهزة الصغيرة والمحمولة ، مثل الهواتف المحمولة.
4- البصرية الأساسية
تم تطوير Visual Basic بواسطة Microsoft ، لتوسيع إمكانات BASIC عن طريق إضافة كائنات وبرمجة (قائمة على الأحداث) : الأزرار ، والقوائم ، وعناصر أخرى من واجهات المستخدم الرسومية (GUI) ، يمكن أيضًا استخدام Visual Basic داخل برامج Microsoft الأخرى ، لبرمجة الإجراءات الصغيرة.
سادسًا : لغات تعريفية
اللغات التعريفة ، وتسمى أيضًا غير إجرائية أو مستوى عالٍ جدًا ، هي لغات برمجة يحدد فيها البرنامج (بشكل مثالي) ، ما يجب القيام به بدلاً من كيفية القيام بذلك ، في هذه اللغات ، هناك اختلاف أقل بين مواصفات البرنامج ، وتنفيذه عنه في اللغات الإجرائية الموصوفة حتى الآن.
والنوعان الشائعان من اللغات التعريفية هما اللغات المنطقية والوظيفية ، ولغات البرمجة المنطقية ، التي يعتبر PROLOG (البرمجة في المنطق) ، هو الأكثر شهرة ، تنص على برنامج كمجموعة من العلاقات المنطقية (على سبيل المثال ، الجد هو والد أحد الوالدين لشخص ما).
وتشبه هذه اللغات لغة قاعدة بيانات SQL ، ويتم تنفيذ البرنامج بواسطة (محرك الاستدلال) ، الذي يجيب على الاستعلام عن طريق البحث في هذه العلاقات ، بشكل منهجي لعمل استنتاجات من شأنها الإجابة على الاستعلام ، وقد تم استخدام PROLOG على نطاق واسع في معالجة اللغات الطبيعية ، وبرامج الذكاء الاصطناعي الأخرى.
سابعًا : لغات البرمجة النصية
تسمى لغات البرمجة النصية أحيانًا لغات صغيرة ، والغرض منها هو حل مشاكل البرمجة الصغيرة نسبيًا ، التي لا تتطلب عبء بيانات البيانات ، والميزات الأخرى اللازمة لجعل البرامج الكبيرة قابلة للإدارة ، وتُستخدم لغات البرمجة النصية لكتابة أدوات نظام التشغيل المساعدة ، لبرامج معالجة الملفات ذات الأغراض الخاصة ، ولأنها سهلة التعلم ، أحيانًا للبرامج الأكبر حجمًا.
وقد تم تطوير PERL (لغة الاستخراج العملي والتقرير) ، في أواخر الثمانينيات ، للاستخدام في الأصل مع نظام التشغيل UNIXK ، وكان من المفترض أن يكون لديه جميع إمكانات لغات البرمجة النصية السابقة ، وقدم PERL العديد من الطرق لتحديد العمليات المشتركة ، وبالتالي سمح للمبرمج بتبني أي أسلوب مناسب في التسعينيات ، وأصبحت شائعة كأداة برمجة نظام ، سواء لبرامج المرافق الصغيرة ، أو للنماذج الأولية للبرامج الأكبر حجمًا ، إلى جانب اللغات الأخرى التي تمت مناقشتها أدناه ، أصبحت أيضًا شائعة لبرمجة (خوادم) الويب للكمبيوتر.
ثامنًا : لغات تنسيق المستندات
تحدد لغات تنسيق المستندات تنظيم النص والرسومات المطبوعة ، وتنقسم إلى عدة فئات : تدوين تنسيق النص الذي يمكن أن يخدم نفس وظائف برنامج معالجة الكلمات ، ولغات وصف الصفحة التي يتم تفسيرها بواسطة جهاز الطباعة ، وبشكل عام ، لغات الترميز التي تصف الوظيفة المقصودة لأجزاء من المستند.
1- تكس TeX
تم تطوير TeX خلال 1977-1986 ، كلغة تنسيق نصية من قبل دونالد كنوث ، أستاذ بجامعة ستانفورد ، لتحسين جودة الرموز الرياضية في كتبه ، وتقوم أنظمة تنسيق النص ، على عكس معالجات كلمات WYSIWYG ، وبتضمين أوامر تنسيق نص عادي في مستند ، يتم تفسيرها بعد ذلك بواسطة معالج اللغة لإنتاج مستند منسق للعرض أو الطباعة.
وتقوم TeX بوضع علامة على النص المائل ، على سبيل المثال ، كـ {\ it this is italicized} ، والذي يتم عرضه بعد ذلك لأنه مائل.
واستبدل TeX إلى حد كبير لغات تنسيق النص السابقة ، لقد أعطت قدراتها القوية والمرنة تحكمًا دقيقًا للخبير في أشياء مثل اختيار الخطوط ، وتخطيط الجداول ، والتدوين الرياضي ، وإدراج الرسومات في المستند ، ويتم استخدامه بشكل عام بمساعدة حزم (الماكرو) ، التي تحدد أوامر بسيطة للعمليات المشتركة ، مثل بدء فقرة جديدة ، LaTeX هي حزمة تستخدم على نطاق واسع.
يحتوي TeX على العديد من (أوراق الأنماط) القياسية لأنواع مختلفة من المستندات ، وقد يتم تعديلها من قبل كل مستخدم ، وهناك أيضًا برامج ذات صلة مثل BibTeX ، التي تدير المراجع ، وتشتمل على أوراق أنماط لجميع أنماط المراجع الشائعة ، وإصدارات TeX للغات ذات الأحرف الهجائية المختلفة.[3]
2- بوستسكريبت
PostScript هي لغة وصف الصفحة ، تم تطويرها في أوائل الثمانينيات من قبل Adobe Systems Incorporated ، على أساس العمل في Xerox PARC (مركز أبحاث Palo Alto) ، تصف هذه اللغات المستندات بعبارات يمكن تفسيرها بواسطة كمبيوتر شخصي ، لعرض المستند على شاشته ، أو بواسطة معالج دقيق في طابعة أو جهاز تنضيد.
يمكن لأوامر PostScript ، على سبيل المثال ، وضع النص بدقة ، في مختلف الخطوط والأحجام ، ورسم الصور التي يتم وصفها رياضيًا ، وتحديد اللون أو التظليل ، ويستخدم PostScript postfix ، ويسمى أيضًا بالرمز البولندي العكسي ، حيث يتبع اسم العملية وسيطاته. وبالتالي ، يعني (300 60020270 السكتة الدماغية): رسم (السكتة الدماغية) قوس 270 درجة مع نصف قطر 20 في الموقع (300 ، 600). على الرغم من أنه يمكن قراءة PostScript وكتابته بواسطة مبرمج ، إلا أنه يتم إنتاجه عادةً من خلال برامج تنسيق النص ، أو معالجات النصوص أو أدوات عرض الرسومات.[4]
ويرجع نجاح PostScript إلى وجود مواصفاتها في المجال العام ، وكونها مطابقة جيدة لطابعات الليزر عالية الدقة ، وقد أثر على تطوير خطوط الطباعة ، وينتج المصنعون مجموعة كبيرة ومتنوعة من خطوط PostScript.
3- SGML
SGML (لغة الترميز المعممة القياسية) ، هي معيار دولي لتعريف لغات الترميز ، أي أنها لغة معدنية ، يتكون الترميز من تدوينات تسمى العلامات ، التي تحدد وظيفة جزء من النص أو كيفية عرضها ، يؤكد SGML على الترميز الوصفي ، حيث قد تكون العلامة (emphasis) ، يشير هذا الترميز إلى وظيفة المستند ، ويمكن تفسيره على أنه فيديو عكسي على شاشة الكمبيوتر ، أو تسطيره بواسطة آلة كاتبة ، أو مائل في نص مجموعة الحروف.
ويتم استخدام SGML لتحديد DTDs (تعريفات أنواع المستندات) ، ويحدد DTD نوع المستند ، مثل التقرير ، عن طريق تحديد العناصر التي يجب أن تظهر في المستند ، على سبيل المثال إعطاء قواعد لاستخدام عناصر المستند ، مثل أن تظهر فقرة داخل إدخال جدول ولكن قد لا يظهر جدول داخل فقرة.
يمكن تحليل النص المرمّز بواسطة برنامج تحليل لتحديد ما إذا كان يتوافق مع DTD ، وقد يقرأ برنامج آخر الترميزات لإعداد فهرس ، أو لترجمة المستند إلى PostScript للطباعة ، قد يولد نوع آخر ، أو صوتًا كبيرًا للقراء ذوي الإعاقات البصرية أو السمعية.