3 पॉइंट द्वारा GN⁺ 2024-07-13 | 1 टिप्पणियां | WhatsApp पर शेयर करें

क्या आपने कभी खुद अपनी programming language बनाने की इच्छा की है, या यह जानना चाहा है कि उन्हें कैसे design और build किया जाता है? अगर हाँ, तो यह किताब आपके लिए है। Crafting Interpreters में एक पूरी तरह सक्षम और efficient scripting language को implement करने के लिए ज़रूरी सब कुछ शामिल है। आप parsing और semantics के high-level concepts से लेकर bytecode representation और garbage collection जैसी बारीकियों तक सीख सकते हैं। आपका दिमाग नए ideas से चमक उठेगा, और आपके हाथ सचमुच काम में लगकर सख्त हो जाएंगे। यह सच में बहुत मज़ेदार है.

main() से शुरू करके, यह एक ऐसी language बनाता है जिसमें rich syntax, dynamic typing, garbage collection, lexical scope, first-class functions, closures, classes और inheritance जैसी खूबियाँ होती हैं। यह सब कुछ कुछ हज़ार lines के साफ़ और तेज़ code में समाया हुआ है, और क्योंकि आप हर line खुद लिखते हैं, आप इसे पूरी तरह समझ सकते हैं.

किताब चार शानदार formats में उपलब्ध है:

प्रिंट संस्करण

  • 640 पन्नों की सुंदर typography और high-resolution hand-drawn illustrations
  • लेखक द्वारा बड़े मनोयोग से typeset किया गया हर पन्ना
  • बेहतरीन reading experience प्रदान करता है
  • Amazon.com | .ca | .uk | .au | .de | .fr | .es | .it | .jp
  • Barnes and Noble | Book Depository

ई-बुक

  • सावधानी से fine-tune किया गया CSS जो e-reader और screen size के अनुसार ढल जाता है
  • full-color syntax highlighting और live hyperlinks उपलब्ध
  • Kindle Amazon.com | .uk | .ca | .au | .de | .in
  • .fr | .es | .it | .jp | .br | .mx | Apple Books
  • Play Books Google | Nook B&N | EPUB Smashwords

PDF

  • प्रिंट संस्करण की hand-crafted typesetting और crisp illustrations को पूरी तरह दर्शाता है
  • साथ ले जाना कहीं ज़्यादा आसान
  • Payhip पर खरीदने के लिए उपलब्ध
  • मुफ्त sample download

वेब

  • बारीकी से बनाए गए responsive design के साथ desktop से mobile तक शानदार दिखता है
  • सभी chapters, sidebars और illustrations शामिल हैं
  • पूरी किताब मुफ्त में पढ़ी जा सकती है
  • अभी पढ़ें

Robert Nystrom के बारे में

  • कुछ साल पहले parental leave के दौरान language bug ने काट लिया
  • कई hobby languages को जोड़ने के बाद औपचारिक programming language career में आए
  • वर्तमान में Google में Dart language पर काम कर रहे हैं
  • Electronic Arts में 8 साल तक game development किया
  • वहाँ सीखी बातों के आधार पर bestselling किताब Game Programming Patterns लिखी
  • Twitter (@munificentbob), email (bob at this site's domain), blog, और low-volume mailing list पर अधिक जानकारी मिल सकती है

GN⁺ की संक्षिप्त प्रस्तुति

  • Crafting Interpreters उन लोगों के लिए एक अनिवार्य किताब है जो खुद programming language बनाना चाहते हैं
  • यह parsing, semantics, bytecode representation, garbage collection जैसे कई विषयों को कवर करती है
  • Robert Nystrom ने Dart language पर काम करते हुए हासिल अनुभव के आधार पर यह किताब लिखी है
  • यह किताब प्रिंट, ई-बुक, PDF और वेब formats में उपलब्ध है, जिससे अलग-अलग तरह का reading experience मिलता है
  • programming language design और implementation में रुचि रखने वालों के लिए यह बेहद उपयोगी सामग्री है

1 टिप्पणियां

 
GN⁺ 2024-07-13
Hacker News राय
  • यह किताब PL compiler सीखने के दूसरे या तीसरे चरण के लिए उपयुक्त है

    • पहला चरण किसी सरल language में सीधे interpreter लिखना है
    • दूसरा चरण उसे फिर से लिखना है ताकि गलतियाँ कम हों
    • इससे विषय की बारीकियाँ समझने में मदद मिलती है
  • Crumb बनाते समय मैंने Crafting Interpreters पढ़ी थी

    • scope और local variables वाला section खास तौर पर उपयोगी था
    • technical implementation और conceptual insight के बीच संतुलन बहुत मददगार था
    • यह प्रेरणादायक technical writing का एक उदाहरण है
  • इस किताब की सबसे अच्छी बात यह है कि यह एक ही language के लिए दो interpreters लिखने की प्रक्रिया से मार्गदर्शन करती है

    • पहले interpreter में बड़े ideas से परिचय होता है, और दूसरे interpreter में उन्हें फिर से लेकर आत्मसात किया जा सकता है
    • सच में शानदार किताब है
  • दूसरे compiler resources की बात करें तो, मुझे Immo Landwerth का C# में compiler लिखना पसंद आया था

  • ज़्यादातर programmers को यह किताब कम-से-कम एक बार पढ़नी चाहिए

    • इससे समझ आता है कि compiler के अंदर क्या होता है
    • यह बहुत अच्छी तरह लिखी गई technical guide है
    • concepts को भीतर तक समझने में मदद करती है
  • मैं जानना चाहता हूँ कि parametric polymorphism और basic type inference वाली static typed language बनाने के लिए कोई अच्छा resource है या नहीं

  • programming क्षेत्र में नए व्यक्ति के रूप में, मैं सोच रहा हूँ कि ऐसी किताबों को कैसे पढ़ना चाहिए

    • क्या लेखक के साथ-साथ code करते हुए किताब को शुरू से अंत तक पढ़ना चाहिए
    • मुझे ज्ञान को याद रखने में कठिनाई हो रही है
    • मैं language interpreters के बारे में और सीखना चाहता हूँ, लेकिन पता नहीं यह format मददगार होगा या नहीं
    • मैं notes बनाकर इसकी भरपाई करने की कोशिश कर रहा हूँ
  • आखिरकार मैंने किताब पढ़ने का फैसला कर लिया

    • यह शेल्फ पर धूल खा रही थी
  • मैंने अभी दूसरा आधा हिस्सा खत्म किया है

    • शानदार किताब है
    • मैं हर chapter में सुझाई गई challenges में से एक या दो करने की सिफारिश करता हूँ
  • अच्छा हुआ कि language बनाने का जुनून सिर्फ गुजरती हुई दिलचस्पी निकला

    • यह बहुत बड़ा काम है