پاسكال (لغة برمجة)

(تم التحويل من Pascal (programming language))
Pascal
LagrangePAS.jpg
Paradigm
FamilyWirth Pascal
Designed byNiklaus Wirth
First appeared1970; 54 years ago (1970
Typing discipline
Filename extensions.pp, .pas, .inc,
Major implementations
اللهجات
Influenced by
Influenced
لغات برمجة
لغات كائنية
سي++
++C
سي شارپ
#C
دلفي (لغة برمجة)
Delphi
ادا 95
Ada
جاڤا
Java
سمولتوك
Smalltalk
روبي
Ruby
اوبجكت پاسكال
Object Pascal
لغات تقليدية
بيسيك
Basic
سي
C
باسكال
Pascal
كوبول
COBOL
فورتران
FORTRAN
أسمبلي
Assembly
لغات وظيفية
ليسپ
Lisp
پرولوگ
Prolog
پايثون
Python
پاريس
Paris
هندسة برامج

پاسكال Pascal لغة برمجة تعتمد على الأوامر. و هي معروفة بوضوحها و قوتها و سهولة إنشاء البرامج عن طريقها. و هو ما يجعل من باسكال اللغة البرمجية الأكثر استعمالا في التدريس حتى وقت قريب.

وبالإضافة إلى سهولتها و قوتها، تمتاز لغة باسكال بعدة قواسم مشتركة مع لغة الـسي.غير أن باسكال كان قد صمم في البداية لأسباب تعليمية بحتة و كان مقتصرا على خاصيّات محدودة جدا (فعلى سبيل المثال لم يكون هناك وجود لسلاسل الأحرف)؛ و بالإضافة لكل ذلك فإن كل النسخ المستعملة لباسكال خارج العالم التعليمي هي نسخ معدلة مثل توربو باسكال، دلفي، أوبجكت باسكال...

وفي المقابل، فإنه من المعروف أن باسكال فد مكّن من تصميم برامج شهيرة مثل TeX و جزء من أوائل أنظمة التشغيل الخاصة بـماكينتوش. وقد اقتـُبست هذه اللغة في لغات أخرى مثل أدا، مودولا-2 (ثم مودولا-3أوبيرون ...


. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

التقديم و التاريخ

قد تم اختراع لغة باسكال (التي اتخذت اسمها من عالم الرياضيات الفرنسي (بليز پاسكال) عن طريق نيكولاس ويرذ خلال السبعينيات من القرن العشرين. و قد تم تصميمها لتفيد في تعليم البرمجة بطريقة سهلة و لكن صحيحة، في محاولة لمجابهة تعقيدات ألغول 68. و هذه اللغة من بين اللغات التي ساعدت على تعليم البرمجة المنظمة. و باعتبار أنه من غير المنصوح به استعمال الـ goto أو القفز داخل البرنامج فإن باسكال يعتمد على الشروط (if, case...) و التكرارات (while, for, repeat...) و التي تمتلك كل واحدة منها مدخلا و مخرجا حتى يتم تسهيل التحكم، مما يؤدي إلى برنامج أكثر سرعة و تنظيما.

وتعد هذه اللغة كذلك صارمة في ما يخص تعريف المتغيرات، بمعنى أن كل متغير يجب أن يعرف بنزع عند التجميع. و في المقابل فإن عدم تأقلمه لتمكين التنقل من النوع حرف إلى النوع سلسلة حروف يعد من نقاط ضعفه.

وقد تمكنت لغة باسكال من التغليل بشكل كبير في الميدان التعليمي و مجال الأبحاث (الجامعات)، و بصفة أقل في المبدان الصناعي.

وقد تم نشر ملفات المجمع P4 المصدرية في الجامعات، بسعر مخفض جدا. و هذا المجمع ينشئ الـ P-Code، و هو كود لجهاز افتراضي. ولذلك يمكن القول أن البرامج "الباسكالية" كانت سهلة النقل على الأجهزة.

وكان لمجمع UCSD Pascal (UCSD = University of California at San Diego)، نجاح كبير خاصة على الأجهزة من نوع Apple II و التي كانت شديدة الإنتشار.

ولكن "التربو" كان من عمل شركة بورلاند الحديثة، والتي أنشأت سنة 1983 و التي قامت بتسويق المجمع توربو باسكال بسعر غاية في التخفيض (49 $ حينها مقابل 500 $ سعر مجمع باسكال من شركة مايكروسوفت والذي لم يكن يمتلك محررا مدمجا حتى).


التربو باسكال

قام بكتابة تربو باسكال أندرس هيلزبرگ (و قد كان اسمه قبل TP، كومباس باسكال ثم بولي باسكال). و قد كان ينشئ لغة الآلة ((x86 تحت DOS) وبسرعة نظرا لخفته (12 ك.ب.) و اعتماده شبه التام على الرام و لم يعد ينشئ بالتالي الـ P-Code. وقد كان مرفقا مع بيئة متكاملة (محرر نصوص و مساعدة عن بعد). و ما فتئ الباسكال يشهد التحسين تلو الآخر ففي عام 1987 ظهرت النسخة 4 التي احتوت على بيئة برمجة مدمجة متكاملة و في عام 1989 ظهرت النسخة 5.5 التي امتازت بدمجها لمفهوم الشيء (Object)، وفي عام 1990، مكنت النسخة 6 من برمجة نوافذ (تحت صندوق الأوامر DOS). ثم في عام 1993، ظهرت آخر نسخة، وهي النسخة السابعة لنظام تشغيل دوس و لنظام ويندوز. وقد أصدرت شركة بورلاند سنة 1995 لغة دلفي للتأقلم مع البرمجة المرئية التي أطلقتها مايكروسوفت مع فيجوال ستوديو و كان دلفي مجمعا حقيقيا ينشئ لغة الآلة. وفي سنة 2001 أطلقت شركة بورلاند كيليكس، و هو المرادف لدلفي الخاص بمنظومة لينوكس.

فري باسكال

بعد توقف تيربو باسكال عن الإنتاج والانتقال إلى الدلفي قام فريق فري باسكال بإنتاج بديل لتيربو باسكال مجاني مفتوح المصدر منافس للغة السي++ وهو متوافق مع لغة دلفي ويوجد في عدد كبير من المنصات مثل لينكس، وندوز، ماكنتوش، وآرم، وغيرها الكثير. وقد صدر الإصدار الأول منه في منتصف عام 2000، والإصدار الأخير منه الأن هو 2.4 وتوجد له بيئة متكاملة توجد في عدد من المنصات تسمى لازاراس وهي مصممة بواسطة فري باسكال نفسه، وهي مشابهة لبيئة تطوير دلفي 7 إلا أنها ما زالت في حالة التطوير ولم تصل بعد إلى نسخة رقم 1. آخر نسخة رسمية من لازاراس هي: 0.9.28. ويوجد عدد كبير من البرامج تم تطويرها باستخدام لازاراس وفري باسكال حتى قبل صدور النسخة رقم 1 من لازاراس.


مثال على برنامج باسكال : Hello world الشهيرة

program Hello(output);
begin
   writeln('Hello world!');
end.


انظر أيضاً

الهامش

  1. ^ "We looked very carefully at Delphi Object Pascal and built a working prototype of bound method references in order to understand their interaction with the Java programming language and its APIs ... Our conclusion was that bound method references are unnecessary and detrimental to the language. This decision was made in consultation with Borland International, who had previous experience with bound method references in Delphi Object Pascal." (from About Microsoft's "Delegates" Archived 2012-06-27 at the Wayback Machine at java.sun.com.
  2. ^ TechMetrix Research (1999). "History of Java" (PDF). Java Application Servers Report. Archived from the original (PDF) on 2010-12-29. The project went ahead under the name "green" and the language was based on an old model of UCSD Pascal, which makes it possible to generate interpretive code
  3. ^ "A Conversation with James Gosling - ACM Queue". Archived from the original on 16 July 2015. Retrieved 11 August 2015.

للاستزادة

  • Niklaus Wirth: The Programming Language Pascal. 35–63, Acta Informatica, Volume 1, 1971.
  • C. A. R. Hoare: "Notes on data structuring". In O.-J. Dahl, E. W. Dijkstra and C. A. R. Hoare, editors, Structured Programming, pages 83–174. Academic Press, 1972.
  • C. A. R. Hoare, Niklaus Wirth: An Axiomatic Definition of the Programming Language Pascal. 335–355, Acta Informatica, Volume 2, 1973.
  • Kathleen Jensen and Niklaus Wirth: PASCAL – User Manual and Report. Springer-Verlag, 1974, 1985, 1991, ISBN 0-387-97649-3 and ISBN 3-540-97649-3.
  • Niklaus Wirth: Algorithms + Data Structures = Programs. Prentice-Hall, 1975, ISBN 0-13-022418-9.
  • Niklaus Wirth: An assessment of the programming language PASCAL. 23–30 ACM SIGPLAN Notices Volume 10, Issue 6, June 1975.
  • N. Wirth, and A. I. Wasserman, ed: Programming Language Design. IEEE Computer Society Press, 1980
  • D. W. Barron (Ed.): Pascal – The Language and its Implementation. John Wiley 1981, ISBN 0-471-27835-1
  • Peter Grogono: Programming in Pascal, Revised Edition, Addison-Wesley, 1980
  • Richard S. Forsyth: Pascal in Work and Play, Chapman and Hall, 1982
  • N. Wirth, M. Broy, ed, and E. Denert, ed: Pascal and its Successors in Software Pioneers: Contributions to Software Engineering. Springer-Verlag, 2002, ISBN 3-540-43081-4
  • N. Wirth: Recollections about the Development of Pascal. ACM SIGPLAN Notices, Volume 28, No 3, March 1993.


قالب:Pascal programming language family قالب:Wirth