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

പ്രോഗ്രാമിങ് ഭാഷ


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

പാസ്കൽ
ശൈലി:
രൂപകൽപ്പന ചെയ്തത്:Niklaus Wirth
ഡാറ്റാടൈപ്പ് ചിട്ട:
പ്രധാന രൂപങ്ങൾ:
വകഭേദങ്ങൾ:
സ്വാധീനിച്ചത്:

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

ചരിത്രം

തിരുത്തുക

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

തിരുത്തുക

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

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

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

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

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

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

ഡൊണാൾഡ് ഇ. നത്ത് എഴുതിയ ടൈപ്പ്സെറ്റിംഗ് സിസ്റ്റം ഡിഇസി പിഡിപി -10 പാസ്കലിനെ അടിസ്ഥാനമാക്കിയിട്ടുള്ള യഥാർത്ഥ ലിറ്ററേറ്റ് പ്രോഗ്രാമിംഗ് സിസ്റ്റമായ വെബിലാണ്(WEB)എഴുതിയത്. അഡോബി ഫോട്ടോഷോപ്പ് [6] പോലുള്ള വാണിജ്യ വിജയം കൈവരിച്ച ആപ്ലിക്കേഷനുകൾ, മാക്കിന്റോഷ് പ്രോഗ്രാമേഴ്സ് വർക്ക്ഷോപ്പ് മുതലയാവ പാസ്കലിലാണ് എഴുതിയിട്ടുള്ളത്, ടോട്ടൽ കമാൻഡർ, സ്കൈപ്പ്, മാക്രോമീഡിയ ക്യാപ്റ്റിവേറ്റ് തുടങ്ങിയ ആപ്ലിക്കേഷനുകൾ ഡെൽഫിയിലും (ഒബ്ജക്റ്റ് പാസ്കൽ) എഴുതി. 1980 മുതൽ ഓപ്പറേറ്റിംഗ് സിസ്റ്റങ്ങൾക്കായി സിസ്റ്റം പ്രോഗ്രാമിംഗ് ഭാഷയായി അപ്പോളോ കമ്പ്യൂട്ടർ പാസ്കലിനെ ഉപയോഗിച്ചു.

ഗവേഷണ പ്രോജക്ടുകൾ മുതൽ പിസി ഗെയിമുകൾ, എംബെഡഡ് സിസ്റ്റങ്ങൾ തുടങ്ങി എല്ലാത്തിനും പാസ്കലിന്റെ വകഭേദങ്ങൾ ഉപയോഗിച്ചു. വ്യാപകമായി ഉപയോഗിക്കുന്ന പുതിയ പാസ്കൽ കംപൈലറുകൾ നിലവിലുണ്ട്.[7]

ഒബ്ജക്റ്റ് പാസ്കൽ

തിരുത്തുക

ലിസയിലെ ജോലിക്കിടെ, ലാറി ടെസ്‌ലർ ഭാഷയുമായി ഒബ്‌ജക്റ്റ് ഓറിയന്റഡ് എക്സ്റ്റൻഷനുകൾ ചേർക്കാമെന്ന ആശയവുമായി വിർത്തിനോട് യോജിക്കാൻ തുടങ്ങി. ഇത് 1983 തുടക്കത്തിൽ അവതരിപ്പിച്ച ക്ലാസ്കലിലേക്ക് നയിച്ചു. ലിസ പ്രോഗ്രാം മങ്ങുകയും മാക് പകരം വയ്ക്കുകയും ചെയ്തപ്പോൾ, ഒബ്ജക്റ്റ് പാസ്കൽ എന്നറിയപ്പെടുന്ന മറ്റൊരു പതിപ്പ് സൃഷ്ടിക്കപ്പെട്ടു. ഇത് മാക് ആപ്പ് ആപ്ലിക്കേഷൻ ഫ്രെയിംവർക്കിന്റെ ഭാഗമായി 1985 ൽ മാക്കിന്റോഷിൽ അവതരിപ്പിച്ചു, 1990 കളുടെ തുടക്കത്തിൽ ആപ്പിളിന്റെ പ്രാഥമിക വികസന ഭാഷയായി ഇത് മാറി. 1989-ൽ പതിപ്പ് 5.5 പുറത്തിറക്കിയതോടെ ഒബ്ജക്റ്റ് പാസ്കൽ എക്സ്റ്റൻഷനുകൾ ടർബോ പാസ്കലിൽ ചേർത്തു.[8] കാലക്രമേണ, ഒബ്ജക്റ്റ് പാസ്കൽ മൈക്രോസോഫ്റ്റ് വിൻഡോസിനായുള്ള ഡെൽഫി സിസ്റ്റത്തിന്റെ അടിസ്ഥാനമായി മാറി, ഇത് ഇപ്പോഴും വിൻഡോസ് ആപ്ലിക്കേഷനുകൾ വികസിപ്പിക്കുന്നതിന് ഉപയോഗിക്കുന്നു, കൂടാതെ മറ്റ് സിസ്റ്റങ്ങളിലേക്ക് കോഡ് ക്രോസ്-കംപൈൽ ചെയ്യാൻ കഴിയും. സ്വതന്ത്ര പാസ്കൽ ഒരു ഓപ്പൺ സോഴ്സ് ആണ്, ലാസറസ് എന്ന സ്വന്തം ഗ്രാഫിക്കൽ ഐഡിഇ(IDE)ഉള്ള ക്രോസ്-പ്ലാറ്റ്ഫോം ബദലാണ്.

  1. "About Microsoft's "Delegates"". Archived from the original on 2012-06-27. 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.
  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.
  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.
  6. https://www.computerhistory.org/atchm/adobe-photoshop-source-code/ Archived 2014-05-07 at the Wayback Machine., Adobe Photoshop Source Code
  7. tiobe.com Archived 2012-03-15 at the Wayback Machine., Programming Community Index for January 2011.
  8. "Antique Software: Turbo Pascal v5.5". Archived from the original on 2010-11-24. Retrieved 2021-11-08.