Lisp में 3 शानदार चीज़ें.
(black7375.tistory.com)Racket टीम की पसंद के आधार पर
Lisp परिवार की भाषाओं में उन्नत रूप से लागू की गई बातों का परिचय दिया गया है।
- Racket के सबसे शक्तिशाली और सुरक्षित macros
1.1 सुरक्षित macros
- C vs Racket: macros का syntax होना क्यों ज़रूरी है
- Common Lisp vs Racket: hygienic macros क्यों ज़रूरी हैं
1.2 शक्तिशाली macros
- Syntax objects का उपयोग करके transform का अवलोकन
- Syntax objects और lists को संभालना
-define-syntaxसे सीधे transform करके देखना
- pattern matching macros से declarative ढंग से लिखना
- macro definition के समय compile-time और runtime
- functions या variables को define करने वाले macros - Racket के Thread के साथ dynamic binding
2.1 dynamic binding क्या है?
2.2 dynamic binding क्यों?
- global variables से होने वाले अनावश्यक global pollution को रोकना
- context से अनावश्यक parameters हटाना
- dependency injection में अनावश्यक boilerplate कम करना
2.3 Thread-safe dynamic binding - Common Lisp का dynamic और flexible object-oriented system
3.1 object-oriented implementation के विभिन्न रूप
3.2 flexible method system
- class definition बदले बिना extend किए जा सकने वाले methods
- object type के अनुसार multiple dispatch
- cross-cutting concerns को नियंत्रित करने के लिए method combination
3.3 dynamic objects
3.4 object-oriented system को extend करने वाला MOP(Meta-Object Protocol)
- creation के समय state control आज़माने वाला counter
- मौजूदा functionality को extend करने वाला type checker
- class definition में keywords जोड़कर value validation करना
3.5 multiple inheritance
- C++ की multiple inheritance समस्या
- CPL(Class Precedence List) नियम
5 टिप्पणियां
बाद में पढ़ाई करते समय इसे ज़रूर पढ़ना चाहिए!!
धन्यवाद!! हाहा
मैं जानना चाहता/चाहती हूँ कि कई dialects में से आप racket की ख़ासियत से कैसे आकर्षित हुए/हुई!
मैंने HtDP(How to Design Programs) के ज़रिए, SICP के आसान संस्करण की तरह पढ़ाई करते हुए इसे जाना।
इसका syntax काफ़ी साफ़-सुथरा है और बहुत अच्छी तरह बनाया गया है।
इसलिए दिलचस्पी लेकर यह-वह देखने लगा, तो लगा कि इसकी design के कई हिस्से उम्मीद से ज़्यादा अच्छे से सोचे गए हैं..
धन्यवाद! ऐसी भी एक किताब है।