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

من ويكيبيديا، الموسوعة الحرة
اذهب إلى: تصفح، ‏ ابحث
باسكال
Nologo.svg

التصنيف مهيكلة, أمرية
ظهرت في ۱۹٧۰
صممها نيكلاوس ويرث Niklaus Wirth
التأثير
متأثرة بـ ألجول
أثرت في أدا، أوبجكت باسكال، أوبرتون، أوبرتون-2، جافا، مودولا، مودولا-2، باسكال التكوينية
متفرقات
امتدادات الملفات .pas

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

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

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

التقديم والتاريخ[عدل]

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

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

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

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

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

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

تربو باسكال[عدل]

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

فري باسكال[عدل]

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

أمثلة[عدل]

Program HelloWorld(output);
begin
  writeLn('Hello, World!');
end.
  • برنامج جدول الضرب :
program MultiplicationTable;
 
{$APPTYPE CONSOLE}
 
uses
  SysUtils;
 
var
  X, I: Integer;
begin
  Write('Please input a number: ');
  Readln(X);
  for I  = 1 to 12 do
    Writeln(' * ',' = ', x * i);
 
end.
  • برنامج المضروب:
program Factorial;
 
{$APPTYPE CONSOLE}
 
uses
  SysUtils;
 
var
  Num, i: Integer;
  Fac: Integer;
begin
  Write('Please enter a number: ');
  Readln(Num);
  Fac = 1;
  for I  = Num downto 2 do
    Fac = Fac * I;
  Writeln('Factorial of ', Num, ' is ', Fac);
end.

انظر أيضاً[عدل]

وصلات خارجية[عدل]