പാസ്കൽ (പ്രോഗ്രാമിങ് ഭാഷ)

വിക്കിപീഡിയ, ഒരു സ്വതന്ത്ര വിജ്ഞാനകോശം.
(Pascal (programming language) എന്ന താളിൽ നിന്നും തിരിച്ചുവിട്ടതു പ്രകാരം)
Jump to navigation Jump to search
പാസ്കൽ
ശൈലി:imperative
പുറത്തുവന്ന വർഷം:1970
രൂപകൽപ്പന ചെയ്തത്:Niklaus Wirth
ഡാറ്റാടൈപ്പ് ചിട്ട:static, strong, safe
പ്രധാന രൂപങ്ങൾ:CDC 6000, PASCAL-P, PDP-11, PDP-10, IBM System/370, HP, GNU
വകഭേദങ്ങൾ:Delphi, Turbo Pascal, UCSD Pascal
സ്വാധീനിക്കപ്പെട്ടത്:ALGOL W
സ്വാധീനിച്ചത്:Ada, Go, Java[1][2][3]


1968-69 ൽ നിക്കോളസ് വിർത്ത് രൂപകൽപ്പന ചെയ്ത് 1970 ൽ പ്രസിദ്ധീകരിച്ച ഒരു ഇംപെറേറ്റീവ് പ്രോഗ്രാമിങ് ഭാഷയാണ് പാസ്കൽ. ഘടനാപരമായ പ്രോഗ്രാമിങ്, ഡാറ്റാ സ്ട്രക്ച്ചർ ഉപയോഗിച്ച് നല്ല പ്രോഗ്രാമിംഗ് രീതികൾ പ്രോത്സാഹിപ്പിക്കുന്നതിന് ഉദ്ദേശിച്ചിട്ടുള്ള ഒരു ചെറിയ ഭാഷയാണ് ഇത്. ഫ്രഞ്ച് ഗണിതശാസ്ത്രജ്ഞനും, തത്ത്വചിന്തകനും, ഭൗതികശാസ്ത്രജ്ഞനുമായ ബ്ലേസ് പാസ്കലിന്റെ ബഹുമാനാർത്ഥമാണ് ഇതിന് ഈ പേര് ലഭിച്ചത്.

അൽഗോൾ 60 ഭാഷയുടെ മാതൃകയിൽ പാസ്കൽ ഇതു വികസിപ്പിച്ചെടുത്തു. അൽഗോൾ എക്സ് (ALGOL X) പ്രൊപ്പോസലുകളുടെ ഭാഗമായി ഈ ഭാഷയിലേക്ക് വിർത്ത് ഇതിനകം നിരവധി മെച്ചപ്പെടുത്തലുകൾ നടത്തിയിരുന്നു, എന്നാൽ ഇവ അംഗീകരിക്കപ്പെട്ടില്ല, പാസ്കൽ പ്രത്യേകം വികസിപ്പിക്കുകയും 1970 ൽ പുറത്തിറക്കുകയും ചെയ്തു. ഒബ്ജക്റ്റ് ഓറിയെന്റഡ് പ്രോഗ്രാമിങ്ങിനായി രൂപകല്പന ചെയ്ത ഒബ്ജക്റ്റ് പാസ്കൽ 1985 ൽ വികസിപ്പിച്ചെടുത്ത ഒരു ഡെറിവേറ്റീവ്; 1980-കളുടെ അവസാനത്തിൽ ഇത് ആപ്പിൾ കംപ്യൂട്ടറും ബോർലാൻഡ് ഏറ്റെടുത്തു. പിന്നീട് ഇത് മൈക്രോസോഫ്റ്റ്‌ വിൻഡോസ് പ്ലാറ്റ്ഫോമിൽ ഡെൽഫിയായി വികസിപ്പിക്കുകയുണ്ടായി. പാസ്കൽ ആശയങ്ങളിലേക്കുള്ള വിപുലീകരണങ്ങൾ പ്രോഗ്രാമിങ്ഭാഷകളായ മോഡുല-2-ഉം ഒബറോണും വികസിപ്പിക്കുന്നതിലേക്ക് നയിച്ചു.

ചരിത്രം[തിരുത്തുക]

നേരത്തേയുള്ള പരിശ്രമങ്ങൾ[തിരുത്തുക]

1960 കളിൽ കമ്പ്യൂട്ടർ ഭാഷാ രൂപകല്പനയുടെ ചരിത്രം പലതും അൽഗോൾ 60 ഭാഷയിൽ കണ്ടെത്താനായേക്കും. അൽഗോൾ 1950 കളിൽ അൽഗോരിതം വ്യക്തമായി വിശദീകരിക്കാനുള്ള ലക്ഷ്യത്തോടെ വികസിപ്പിച്ചെടുത്തു. ഘടനാപരമായ പ്രോഗ്രാമിങ്ങിനുള്ള അനേകം സവിശേഷതകൾ ഇത് ഉൾക്കൊള്ളുന്നു, അവ ഇന്നത്തെ ഭാഷകളിൽ സാധാരണമാണ്.

ആമുഖം കഴിഞ്ഞ്, 1962 ൽ വിർത്ത് ഹെൽമെറ്റ് വെബറുമായി ചേർന്ന് യൂലർ പ്രോഗ്രാമിങ് ഭാഷയ്ക്കായി പ്രബന്ധം തുടങ്ങി. അൽഗോളിന്റെ വാക്യഘടനയെയും മറ്റ് പല ആശയങ്ങളെയും അടിസ്ഥാനമാക്കിയുള്ളതായിരുന്നു, പക്ഷേ ഇതൊരു ഡെറിവേറ്റീവ് ആയിരുന്നില്ല. ഡൈനാമിക് ലിസ്റ്റുകളും തരങ്ങളും ചേർക്കുകയായിരുന്നു അതിന്റെ പ്രധാന ലക്ഷ്യം. ഇത് ലിസ്പ് പോലുള്ള റോളുകളിൽ ഉപയോഗിക്കാവുന്നതാണ്. ഈ ഭാഷ 1965 ൽ പ്രസിദ്ധീകരിച്ചു.

ഈ സമയത്ത്, അൽഗോളിലെ നിരവധി പ്രശ്നങ്ങൾ തിരിച്ചറിയപ്പെട്ടു, പ്രത്യേകിച്ച് നിലവാരമുള്ള ഒരു സ്ട്രിംഗ് സംവിധാനത്തിന്റെ അഭാവം. ഭാഷ കൈകാര്യം ചെയ്യാനുള്ള ചുമതലയുള്ള സംഘം മെച്ചപ്പെടുത്തലുകൾ തിരിച്ചറിയുന്നതിനും സമർപ്പണങ്ങൾ ആവശ്യപ്പെടുന്നതിനും അൽഗോൾ എക്സ് പ്രക്രിയ ആരംഭിച്ചു. വിർത്ത്, ടോണി ഹൊയർ തുടങ്ങിയവർ ഒരു കൂട്ടം പരിഷ്ക്കരണങ്ങൾ നടത്തുകയും, സ്ട്രിംഗുകൾ ചേർക്കുകയും സിന്റാക്സിൽ ചിലത് മികച്ചതാക്കുകയും, മാറ്റങ്ങൾ വരുത്തുകയും ചെയ്തു. പുതിയ സ്റ്റാൻഡേർഡ് അൽഗോൾ ആയി ഉപയോഗിക്കുന്നതിന് ഇത് വളരെ ചെറിയ അളവുകോലായി കണക്കാക്കപ്പെട്ടിരുന്നു, അതിനാൽ വിർത്ത് ഈ ഭാഷക്ക് വേണ്ടി ഒരു കമ്പൈലർ എഴുതി. അത് അൽഗോൾ ഡബ്ല്യൂ(ALGOL W)എന്ന പേരിൽ അറിയപ്പെട്ടു.

അൽഗോൾ എക്സിന്റെ ശ്രമങ്ങൾ അൽഗോൾ 68 എന്ന വളരെ സങ്കീർണ്ണമായ ഭാഷ തിരഞ്ഞെടുക്കുന്നതിലേക്ക് കാര്യങ്ങൾ നീങ്ങി. ഈ ഭാഷയുടെ സങ്കീർണ്ണത ഉയർന്ന-പ്രകടന കമ്പൈലറുകൾ ഉത്പാദിപ്പിക്കുന്ന ഗണ്യമായ ബുദ്ധിമുട്ടുകൾക്ക് ഇടയാക്കി, അത് വ്യവസായത്തിൽ വ്യാപകമായി ഉപയോഗിക്കപ്പെട്ടില്ല.

പാസ്കൽ[തിരുത്തുക]

പാസ്കൽ അൽഗോൾ ഡബ്ല്യൂ പരിശ്രമങ്ങളെ സ്വാധീനിച്ചു, കമ്പൈലറിലും റൺ സമയത്തിലും കാര്യക്ഷമമായി പ്രവർത്തിക്കുന്ന ഒരു ഭാഷ നിർമ്മിക്കാനുള്ള ഉചിതമായ ലക്ഷ്യത്തോടെ, നന്നായി രൂപീകൃതമായ പ്രോഗ്രാമുകളുടെ വികസനം സാധ്യമാക്കുകയും, വിദ്യാർത്ഥികൾ ഘടനാപരമായ പ്രോഗ്രാമിങ് പഠിപ്പിക്കാൻ ഉപയോഗപ്രദമാക്കുകയും ചെയ്യുന്നു.[4]വിദ്യാർത്ഥികളുടെ ഒരു തലമുറ അണ്ടർ ഗ്രാജുവേറ്റ് കോഴ്സുകളിൽ ഒരു ആമുഖ ഭാഷയായി പാസ്കൽ ഉപയോഗിച്ചു.

ഭാഷയുടെ ആദ്യകാല വിജയങ്ങളിൽ ഒന്ന് യുസിഎസ്ഡി (UCSD) പാസ്കലിന്റെ അവതരണം ആയിരുന്നു. വ്യത്യസ്ത പ്ലാറ്റ്ഫോമുകളിലേക്ക് പോർട്ട് ചെയ്യാവുന്ന ഒരു ഓപ്പറേറ്റിങ് സിസ്റ്റത്തിൽ പ്രവർത്തിക്കുന്ന ഒരു പതിപ്പ്. ആപ്പിൾ II-ന്റെ ഒരു പ്രധാന പ്ലാറ്റ്ഫോം, അത് വ്യാപകമായി ഉപയോഗിച്ചു. ഇത് പാസ്കലിനെ ആപ്പിൾ ലിസയിലും പിന്നീട് മക്കിന്റോഷിന്റെ വികസനത്തിന് ഉപയോഗിച്ചിരുന്ന പ്രഥമ ഉന്നതതലഭാഷയായി മാറി. യഥാർത്ഥ മക്കിന്റോഷ് ഓപ്പറേറ്റിങ് സിസ്റ്റത്തിന്റെ ഭാഗങ്ങൾ മോട്ടറോള 68000 അസംബ്ലി ഭാഷയിലേക്ക് പാസ്കൽ ഉറവിടങ്ങളിൽ നിന്ന് കൈമാറ്റം ചെയ്തു.[5]

അവലംബം[തിരുത്തുക]

  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. മൂലതാളിൽ (PDF) നിന്നും 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". മൂലതാളിൽ നിന്നും 16 July 2015-ന് ആർക്കൈവ് ചെയ്തത്. ശേഖരിച്ചത് 11 August 2015.
  4. Essential Pascal Archived 2017-04-18 at the Wayback Machine. by Marco Cantù
  5. Hertzfeld, Andy. "Hungarian folklore.org Archived 2015-11-18 at the Wayback Machine.: Macintosh Stories. Retrieved 2012-03-06.