పాల్ గ్రాహం కొత్త ప్రోగ్రామింగ్ లాంగ్వేజ్ బెల్ ను ప్రకటించారు

బెల్ భాష బెల్ భాషలో వ్రాయబడింది.

పాల్ గ్రాహం కొత్త ప్రోగ్రామింగ్ లాంగ్వేజ్ బెల్ ను ప్రకటించారు
1960లో, జాన్ మెక్‌కార్తీ కొత్త తరహా ప్రోగ్రామింగ్ లాంగ్వేజ్ అయిన లిస్ప్‌ని వివరించాడు. నేను "కొత్త రకం" అని చెప్తున్నాను ఎందుకంటే లిస్ప్ కేవలం కొత్త భాష మాత్రమే కాదు, భాషలను వివరించే కొత్త మార్గం.

లిస్ప్‌ను నిర్వచించడానికి, అతను ఒక చిన్న స్టేట్‌మెంట్‌లతో, ఒక రకమైన సిద్ధాంతాలతో ప్రారంభించాడు, ఆ తర్వాత అతను భాష కోసం ఒక వ్యాఖ్యాతను వ్రాయడానికి ఉపయోగించాడు.

ప్రోగ్రామింగ్ లాంగ్వేజ్‌ని సాధారణ అర్థంలో వివరించడానికి ఇది సెట్ చేయలేదు - కంప్యూటర్‌కు ఏమి చేయాలో చెప్పడానికి ఉపయోగించే భాష. అతని 1960 పనిలో, లిస్ప్ ట్యూరింగ్ మెషీన్‌కు సమానమైన గణన యొక్క అధికారిక నమూనాగా అర్థం చేసుకోబడింది. అతని గ్రాడ్యుయేట్ విద్యార్థి స్టీవ్ రస్సెల్ సూచించే వరకు మెక్‌కార్తీ దీన్ని కంప్యూటర్‌లలో ఉపయోగించడం గురించి ఆలోచించలేదు.

1960లో లిస్ప్ ప్రోగ్రామింగ్ లాంగ్వేజ్‌లకు సాధారణమైన లక్షణాలను కలిగి లేదు. ఉదాహరణకు, సంఖ్యలు, లోపాలు లేదా I/O ఏవీ లేవు. కాబట్టి కంప్యూటర్‌లను ప్రోగ్రామ్ చేయడానికి ఉపయోగించే భాషలకు ప్రాతిపదికగా లిస్ప్‌ను ఉపయోగించిన వ్యక్తులు ఈ లక్షణాలను స్వయంగా జోడించాల్సి ఉంటుంది. మరియు వారు అక్షసంబంధమైన విధానాన్ని విడిచిపెట్టడం ద్వారా దీన్ని చేసారు.

ఆ విధంగా, లిస్ప్ అభివృద్ధి రెండు దశల్లో కొనసాగింది - మరియు చాలా స్వతంత్రంగా కనిపించింది: 1960 పేపర్‌లో ప్రవేశపెట్టబడిన ఒక అధికారిక దశ మరియు కంప్యూటర్‌లలో అమలు చేయడానికి భాష స్వీకరించబడిన మరియు విస్తరించబడిన అమలు దశ. ప్రధాన పని, అమలు చేయబడిన అవకాశాల సంఖ్యతో కొలిస్తే, అమలు దశలో జరిగింది. 1960 నుండి లిస్ప్, కామన్ లిస్ప్‌లోకి అనువదించబడింది, కేవలం 53 పంక్తులు మాత్రమే ఉన్నాయి. ఇది వ్యక్తీకరణలను అర్థం చేసుకోవడానికి అవసరమైనది మాత్రమే చేస్తుంది. మిగతావన్నీ అమలు దశలో జోడించబడ్డాయి.

నా పరికల్పన ఏమిటంటే, దాని కష్టతరమైన చరిత్ర ఉన్నప్పటికీ, దాని అభివృద్ధి రెండు దశల్లో సంభవించిన వాస్తవం నుండి లిస్ప్ ప్రయోజనం పొందింది; ఒక భాషని దాని వ్యాఖ్యాతని వ్రాయడం ద్వారా నిర్వచించే అసలైన వ్యాయామం లిస్ప్‌కు దాని ఉత్తమ లక్షణాలను అందించింది. మరియు అలా అయితే, ఎందుకు మరింత ముందుకు వెళ్ళకూడదు?

నడుము అనే ప్రశ్నకు సమాధానమిచ్చే ప్రయత్నం: ప్రారంభ దశలో అధికారిక దశ నుండి అమలు దశకు వెళ్లే బదులు, ఈ మార్పు వీలైనంత ఆలస్యంగా జరిగితే? మీరు పూర్తి ప్రోగ్రామింగ్ లాంగ్వేజ్‌కి దగ్గరగా ఏదైనా కలిగి ఉండే వరకు మీరు యాక్సియోమాటిక్ విధానాన్ని ఉపయోగించడం కొనసాగిస్తే, మీకు ఏ సిద్ధాంతాలు అవసరం మరియు ఫలిత భాష ఎలా ఉంటుంది?

బెల్ అంటే ఏమిటి మరియు ఏది కాదు అనే దాని గురించి నేను స్పష్టంగా చెప్పాలనుకుంటున్నాను. ఇది మెక్‌కార్తీ యొక్క 1960 లిస్ప్ కంటే చాలా ఎక్కువ లక్షణాలను కలిగి ఉన్నప్పటికీ, బెల్ ఇప్పటికీ దాని అధికారిక దశలో ఉన్న ఉత్పత్తి. 1960 పేపర్‌లో వివరించిన లిస్ప్ లాగా, ఇది మీరు ప్రోగ్రామ్ చేయడానికి ఉపయోగించే భాష కాదు. ప్రధానంగా ఎందుకంటే, మెక్‌కార్తీస్ లిస్ప్ లాగా, ఇది సామర్థ్యం గురించి పట్టించుకోదు. నేను బెల్‌కి ఏదైనా జోడించినప్పుడు, సమర్ధవంతమైన అమలును అందించడానికి ప్రయత్నించకుండానే నేను అదనంగా యొక్క అర్థాన్ని వివరిస్తాను.

దేనికోసం? అధికారిక దశను ఎందుకు పొడిగించాలి? ఒక సమాధానం ఏమిటంటే, అక్షసంబంధమైన విధానం మనల్ని ఎక్కడికి తీసుకెళుతుందో చూడటం, ఇది ఒక ఆసక్తికరమైన వ్యాయామం. కంప్యూటర్లు మనం కోరుకున్నంత శక్తివంతంగా ఉంటే, భాషలు ఎలా ఉంటాయి?

కానీ పరిమితులను జోడించడం ద్వారా సమర్థవంతమైన బెల్-ఆధారిత అమలును వ్రాయడం సాధ్యమవుతుందని నేను నమ్ముతున్నాను. మీరు భావవ్యక్తీకరణ శక్తి, స్పష్టత మరియు సమర్ధత కలిగిన భాష కావాలంటే, వ్యతిరేక దిశలో కాకుండా వ్యక్తీకరణ శక్తి మరియు స్పష్టతతో ప్రారంభించి, ఆపై పరిమితులను జోడించడం విలువైనదే కావచ్చు.

కాబట్టి మీరు బెల్ ఆధారంగా ఇంప్లిమెంటేషన్‌ని వ్రాయడానికి ప్రయత్నించాలనుకుంటే, ముందుకు సాగండి. నేను మొదటి వినియోగదారులలో ఒకడిని.

అంతిమంగా, నేను మునుపటి మాండలికాల నుండి కొన్ని విషయాలను పునరుత్పత్తి చేసాను. వారి డిజైనర్లు సరిగ్గా అర్థం చేసుకున్నారు, లేదా గతంలో ఉపయోగించిన మాండలికాలచే ప్రభావితమై, నాకు సరైన సమాధానం కనిపించలేదు - సమయం చెబుతుంది. నేను లిస్ప్ సమావేశాల నుండి చాలా దూరంగా ఉండకూడదని కూడా ప్రయత్నించాను. అంటే మీరు లిస్ప్ సమావేశాలకు దూరంగా ఉన్నట్లయితే, దానికి కారణం ఉండవచ్చు.

ఇక్కడ భాష యొక్క కొనసాగింపు వివరణ.

అనువాదానికి ధన్యవాదాలు: డెనిస్ మిట్రోపోల్స్కీ

PS

మూలం: www.habr.com

ఒక వ్యాఖ్యను జోడించండి