ಸದಸ್ಯ:Harshithaguddu/WEP

ವಿಕಿಪೀಡಿಯದಿಂದ, ಇದು ಮುಕ್ತ ಹಾಗೂ ಸ್ವತಂತ್ರ ವಿಶ್ವಕೋಶ
ಇಂಟರ್ಪ್ರಿಟರ್
ಇಂಟರ್ಪ್ರಿಟರ್

ಇಂಟರ್ಪ್ರಿಟರ್ (ಗಣಕ)[ಬದಲಾಯಿಸಿ]

ಗಣಕ ವಿಜ್ಞಾನದಲ್ಲಿ, ಇಂಟರ್ಪ್ರಿಟರ್ ಒಂದು ಗಣಕ ಪ್ರೋಗ್ರಾಂಯಾಗಿದ್ದು,ಪ್ರೋಗ್ರಾಂ ಅಥವಾ ಸ್ಕ್ರಿಪ್ಟಿಂಗ್ ಭಾಷೆಯಲ್ಲಿ ಬರೆದ ಸೂಚನೆಗಳನ್ನು ಯಂತ್ರ ಭಾಷೆ ಪ್ರೋಗ್ರಾಂಗೆ ಬದಲಾಯಿಸದ್ದೆ ಕಾರ್ಯಗತಗೊಳಿಸುತ್ತದೆ.ಇಂಟರ್ಪ್ರಿಟರ್ ಸಾಮಾನ್ಯವಾಗಿ ಪ್ರೋಗ್ರಾಂಮನ್ನು ನಡಸುವುದಕ್ಕೆ ಕೆಳಗಿನ ತಂತ್ರಗಳಲ್ಲಿ ಒಂದನ್ನು ಬಳಸುತ್ತದೆ:

  1. ಸೊರ್ಸ್ ಕೋಡ್ ಅನ್ನು ಪಾರ್ಸ್ ಮಾಡಿ ಮತ್ತು ನೇರವಾಗಿ ಅದರ ನಡವಳಿಕೆಯನ್ನು ನಿರ್ವಹಿಸಿ;
  2. ಸೊರ್ಸ್ ಕೋಡ್ ಅನ್ನು ಕೆಲವು ಪರಿಣಾಮಕಾರಿ ಮಧ್ಯಂತರ ಪ್ರಾತಿನಿಧ್ಯಕ್ಕೆ ಅನುವಾದಿಸಿ ಮತ್ತು ತಕ್ಷಣ ಇದನ್ನು ಕಾರ್ಯಗತಗೊಳಿಸಿ;
  3. ಇಂಟರ್ಪ್ರಿಟರ್ ಸಿಸ್ಟಮ್ನಯಿನ್ನ ಭಾಗವಾಗಿರುವ ಕಂಪೈಲರ್ ಶೇಖರಿಸಿದ ಪ್ರೆಕಂಪೈಲ್ಡ್ ಕೋಡ್ ಅನ್ನು ಕಾರ್ಯಗತಗೊಳಿಸಿ.

ಲಿಸ್ಪ್ ಪ್ರೋಗ್ರಾಮಿಂಗ್ ಭಾಷೆ ಮತ್ತು ಡಾರ್ಟ್ಮೌತ್ ಬೇಸಿಕ್ನಯನ್ನ ಆರಂಭಿಕ ಆವೃತ್ತಿಗಳು ಮೋದಲನೆಯ ಮಾದರಿಯ ಒಂದು ಒಳ್ಳೆಯ ಉದಾಹರಣೆಯಾಗಿದೆ. ಪರ್ಲ್, ಪೈಥಾನ್, ಮಟ್ಲಾಬ್, ಮತ್ತು ರೂಬಿಯು ಎರಡನೇಯ ಮಾದರಿಗೆ ಮತ್ತು ಯುಸಿಎಸ್ಡಿ ಪ್ಯಾಸ್ಕಲ್ ಮೂರನೇಯ ಮಾದರಿಯ ಒಳ್ಳೆಯ ಉದಾಹರಣೆಯಾಗಿದೆ. ಮುಂಚಿತವಾಗಿಯೆ ಸೊರ್ಸ್ ಪ್ರೋಗ್ರಾಂಮನ್ನು ಕಂಪೈಲ್ ಮಾಡಿ ಯಂತ್ರ ವಿಮುಕ್ತ ಕೋಡ್ ಯಾಗಿ ಶೇಖರಿಸಿ ನಂತರ ರನ್-ಟೈಮ್ನಲ್ಲಿ ಲಿಂಕ್ ಮಾಡಿ ಮತ್ತು ಇಂಟರ್ಪ್ರಿಟರ್ ಮತ್ತು/ಅಥವಾ ಕಂಪೈಲರ್ನಿಂದ ಕಾರ್ಯಗತಗೊಳಿಸಲಾಗುತ್ತದೆ.ಸ್ಮಾಲ್ಟಾಲ್ಕ್, ಮತ್ತು ಬೇಸಿಕ್ ಮತ್ತು ಜಾವಾದ ಸಮಕಾಲೀನ ಆವೃತ್ತಿಗಳು ಎರಡನೇ ಮತ್ತು ಮೂರನೇಯ ಮಾದರಿಯ ಸಂಯೋಜನೆಗೆ ಉದಾಹರಣೆಯಾಗಿದೆ.ಅಲ್ಗೊಲ್, ಪೋರ್ಟ್ರೇನ್, ಕಾಬಾ ಮತ್ತು ಸಿ/ಸಿ++ ಅಂತಹ ಗಣಕ ಭಾಷೆಗಳಿಗೆ ವಿವಿಧ ರೀತಿಯ ಇಂಟರ್ಪ್ರಿಟರ್ಗಳನ್ನು ರಚಿಸಲಾಗಿದೆ. ಪ್ರೋಗ್ರಾಮಿಂಗ್ ಭಾಷೆಯನ್ನು ಜಾರಿಗೊಳಿಸುವುದಕ್ಕೆ ಎರಡು ಪ್ರಮುಖ ವಿಧಾನಗಳು ಕಂಪಿಲತೀವ್ನ್ ಮತ್ತು ಇಂಟರ್ಪ್ರಿಟೇಶನ್ಯಾಗಿದು, ಅವು ಪರಸ್ಪರ ಪ್ರತ್ಯೇಕವಾಗಿಲ್ಲ.ಹೆಚ್ಚಾಗಿ ಇಂಟರ್ಪ್ರೆಟ ಮಾಡುವ ವ್ಯವಸ್ಥೆಗಳು ಕಂಪೈಲರ್ಗಳಂತೆ ಕೆಲವು ಅನುವಾದ ಕಾರ್ಯಗಳನ್ನು ನಿರ್ವಹಿಸುತ್ತದೆ."ಇಂಟರ್ಪ್ರೆಟೇಡ್ ಭಾಷೆ" ಅಥವಾ "ಕಂಪೈಲ್ಡ್ ಭಾಷೆ", ಗಣಕ ಭಾಷೆಯ ಅಂಗೀಕೃತ ಅನುಷ್ಠಾನಿಸಿ ಪ್ರೊಗ್ರಾಮ್ ಕಂಪೈಲ್ಯಾಗಿದೆಯೊ ಅಥವಾ ಇಂಟರ್ಪ್ರಿಟ್ಯಾಗಿದೆಯೊ ಎಂದು ಸೂಚಿಸುತ್ತದೆ.

ಇತಿಹಾಸ[ಬದಲಾಯಿಸಿ]

೧೯೫೨ರಲ್ಲಿ, ಸೀಮಿತವಾದ ಗಣಕಯಂತ್ರಗಳಲ್ಲಿ ಪ್ರೋಗ್ತಮ್ಮಿಂಗ್ ಅನ್ನು ಸುಲುಭಗೊಳಿಸುವುದಕ್ಕಾಗಿ ಇಂಟರ್ಪ್ರಿಟರ್ಗಳನ್ನು ಬಳಿಸುತ್ತಿದರು. ಕಡಿಮೆ ಮಟ್ಟದ ಯಂತ್ರ ಭಾಷೆಗಳ ನಡುವೆ ಭಾಷಾಂತರಿಸಲು ಸಹಾ ಇಂಟರ್ಪ್ರಿಟರ್ಗಳನ್ನು ಬಳಿಸುತ್ತಿದರು, ನಿರ್ಮಾಣ ಹಂತದಲ್ಲಿದ್ದ ಯಂತ್ರಗಳಿಗೆ ಕೋಡ್ ಅನ್ನು ಬರೆದು, ಈಗಾಗಲೇ ನಿರ್ಮಿಸಲಾಗಿದೆ ಗಣಕಯಂತ್ರಗಳಲ್ಲಿ ಪರೀಕ್ಷಿಸಲು ಇಂಟರ್ಪ್ರಿಟರ್ಗಳನ್ನು ಬಳಿಸುತ್ತಿದರು.ಲಿಸ್ಪ್ ಮೊದಲನೆಯ ಇಂಟರ್ಪ್ರೆಟ್ಯಾಗಿದ್ದ ಉನ್ನತ ಮಟ್ಟದ ಭಾಷೆಯಾಗಿತ್ತು. ಲಿಸ್ಪ್ನನ್ನು ಐಬಿಎಂ ೭೦೪ ಗಣಕಯಂತ್ರಗಳಲ್ಲಿ ೧೯೫೮ ರಲ್ಲಿ ಸ್ಟೀವ್ ರಸ್ಸೆಲ್ ಅವರು ಮೊದಲು ಜಾರಿಗೊಳಿಸಲಾಗಿದೆ. ರಸೆಲ್ ಅವರು ಜಾನ್ ಮ್ಯಾಕ್ಕಾರ್ಟಿಯ ಸಂಶೋಧನಾ ಪತ್ರಗಳನ್ನು ಓದಿದ್ದರು, ಮತ್ತು ಲಿಸ್ಪ್ ಎವಲ್ ಫುನ್ಕ್ಷನ್ಗಳನ್ನು ಯಂತ್ರ ಕೋಡ್ ಅಲ್ಲಿ ಅಳವಡಿಸಬಹುದೆಂದು ಅರಿತುಕೊಂಡರು.ಇದರ ಪರಿಣಾಮವಾಗಿ ಲಿಸ್ಪ್ ಫುನ್ಕ್ಷನ್ಗಳನ್ನು ನಡೆಸಲು ಬಳಸಲಾಗುವ ಲಿಸ್ಪ್ ಇಂಟರ್ಪ್ರಿಟರ್ ಕೆಲಸ ಮಾಡುತ್ತಿತ್ತು.

ಇಂಟರ್ಪ್ರಿಟರ್ ವರ್ಸಸ್ ಕಂಪೈಲರ್[ಬದಲಾಯಿಸಿ]

ಉನ್ನತ ಮಟ್ಟದ ಭಾಷೆಯಲ್ಲಿ ಬರೆಯಲಾದ ಪ್ರೋಗ್ರಾಂಗಳು ಕೆಲವು ವಿಧದ ಇಂಟರ್ಪ್ರಿಟರ್ನಿಂದ ನೇರವಾಗಿ ಕಾರ್ಯಗತಗೊಳಿಸಲ್ಪಡುತ್ತವೆ ಅಥವಾ ಸಿ.ಪಿ.ಯು.ಗೆ ಕಾರ್ಯಗತಗೊಳಿಸಲು ಕಂಪೈಲರ್ನ ಮೂಲಕ ಯಂತ್ರ ಸಂಕೇತವಾಗಿ ಮಾರ್ಪಡಿಸಲ್ಪಡುತ್ತವೆ.

ಇಂಟರ್ಪ್ರಿಟರ್ ಕೋಡ್ ಸಾಲುಗಳನ್ನು ಒಂದೊಂದಾಗಿ ತೆಗೆದುಕೊಳ್ಳುತ್ತದೆ ಆದರೆ ಕಂಪೈಲರ್ ಇಡೀ ಕೋಡ್ ಅನ್ನು ಏಕಕಾಲದಲ್ಲಿ ತೆಗೆದುಕೊಳ್ಳುತ್ತದೆ.ಇಂಟರ್ಪ್ರಿಟರ್ ಯಾವುದೇ ಮಧ್ಯಂತರ ಆಬ್ಜೆಕ್ಟ್ ಕೋಡ್ ಅನ್ನು ಉತ್ಪಾದಿಸುವುದಿಲ್ಲ ಆದರೆ ಕಂಪೈಲರ್ ಮಧ್ಯಂತರ ಆಬ್ಜೆಕ್ಟ್ ಕೋಡ್ ಅನ್ನು ಉತ್ಪಾದಿಸುತ್ತದೆ.ಇಂಟರ್ಪ್ರಿಟರ್ ಕಂಪೈಲರ್ಗಿಂತ ನಿಧಾನವಾಗಿ ಕಾರ್ಯನಿರ್ವಹಿಸುತ್ತದೆ. ಇಂಟರ್ಪ್ರಿಟರ್ಗೆ ಕಡಿಮೆ ಮೆಮೋರಿ ಅಗತ್ಯವಿರುತ್ತದೆ ಏಕೆಂದರೆ ಅದು ಮಧ್ಯಂತರ ಆಬ್ಜೆಕ್ಟ್ ಕೋಡ್ ಅನ್ನು ರಚಿಸುವುದಿಲ್ಲ.

ಅಪ್ಲಿಕೇಶನ್[ಬದಲಾಯಿಸಿ]

  • ಆದೇಶ ಭಾಷೆಗಳು ಮತ್ತು ಗ್ಲೂ ಭಾಷೆಗಳನ್ನು ಕಾರ್ಯಗತಗೊಳಿಸಲು ವ್ಯಾಖ್ಯಾನಕಾರರು ಆಗಾಗ್ಗೆ ಬಳಸಲಾಗುತ್ತದೆ.
  • ಸ್ವಯಂ ಮಾರ್ಪಡಿಸುವ ಕೋಡ್ ಸುಲಭವಾಗಿ ಇಂಟರ್ಪ್ರೆಟ್ ಆದ್ದ ಭಾಷೆಯಲ್ಲಿ ಅಳವಡಿಸಬಹುದಾಗಿದೆ.
  • ವರ್ಚುವಲೈಸೇಶನ್: ಹಾರ್ಡ್ವೇರ್ ಆರ್ಕಿಟೆಕ್ಚರ್ಗಾಗಿ ಉದ್ದೇಶಿಸಲಾದ ಯಂತ್ರ ಸಂಕೇತವು ವರ್ಚುವಲ್ ಯಂತ್ರವನ್ನು ಬಳಸಬಹುದಾಗಿದೆ.ಉದ್ದೇಶಿತ ಆರ್ಕಿಟೆಕ್ಚರ್ ಲಭ್ಯವಿಲ್ಲದಿದ್ದಾಗ ಅಥವಾ ಅನೇಕ ಉಪಯೋಗಗಳನ್ನು ನಡೆಸಲು ಇತರ ಬಳಕೆಯಲ್ಲಿ ಇದನ್ನು ಬಳಸುತ್ತಾರೆ.
  • ಸನ್ದಬೊಕ್ಸಿಂಗ್: ಕೆಲವು ಬಗೆಯ ಸ್ಯಾಂಡ್ಬಾಕ್ಸ್ಗಳು ಆಪರೇಟಿಂಗ್ ಸಿಸ್ಟಮ್ ರಕ್ಷಣೆಗಳನ್ನು ಅವಲಂಬಿಸಿವೆ, ಇಂಟರ್ಪ್ರಿಟರ್ ಅಥವಾ ವರ್ಚುವಲ್ ಮೆಷಿನ್ ಅನ್ನು ಹೆಚ್ಚಾಗಿ ಬಳಸಲಾಗುತ್ತದೆ.

ಉಲ್ಲೇಖಗಳು[ಬದಲಾಯಿಸಿ]

[೧] [೨] [೩] [೪]

  1. https://en.wikipedia.org/wiki/Interpreter_(computing)
  2. http://www.columbia.edu/cu/computinghistory/interpreter.html
  3. https://ia800202.us.archive.org/11/items/TheoreticalFoundationsForPracticaltotallyFunctionalProgramming/33429551_PHD_totalthesis.pdf
  4. https://www.youtube.com/watch?v=_C5AHaS1mOA