Janet - एक फ़ंक्शनल और Imperative प्रोग्रामिंग भाषा
(janet-lang.org)-
पूरी भाषा (core, interpreter, compiler, assembler, PEG) 1Mb से कम के single binary में
-
Windows/Mac/Linux सपोर्ट
-
system scripting language के रूप में बढ़िया
-
जहाँ भी Lisp इस्तेमाल होता है, वहाँ उपयोगी (prototyping, dynamic systems आदि)
-
Lua या Guile की तरह दूसरे प्रोग्रामों में आसानी से embed किया जा सकता है (एक C file और 2 header files)
-
कई भाषाओं की खूबियों को अपनाता है
→ Lisp जैसी Scheme
→ first-class closures & green threads
→ Python-style Generators
→ Mutable & Immutable : array/tuple, table/struct, buffer/string
→ Lisp macros
→ C libraries की dynamic loading संभव
→ REPL सपोर्ट
→ PEG core library में built-in
→ jpm build tool से standalone executable बनाया जा सकता है
2 टिप्पणियां
हर बार जब कोई नई भाषा आती है तो यह हमेशा देखने को मिलता है.. इसके कई फायदे होते हैं, यह किस काम के लिए अच्छी है ... ऐसा कहने पर भी, आखिरकार अगर उस भाषा का कोई "killer app" नहीं हो तो उसे इस्तेमाल करना मुश्किल लगता है। अगर killer app न हो, तो "इस भाषा में आखिर कितनी दूर तक development किया जा सकता है?" या "कौन-सी libraries का support मिलेगा?", "क्या इसे लगातार maintain करने की क्षमता होगी?" .. जैसे सवालों और आलोचनाओं से बचना मुश्किल लगता है.
यह देखना दिलचस्प होगा कि Janet कितने समय तक टिक पाती है.
Janet के GitHub पर इसे Modern Lisp कहा गया है, लेकिन कुछ लोग यह भी मानते हैं कि "अगर List नहीं है, तो वह Lisp नहीं है".
(LISP नाम LISt Processing से आया है, इसलिए)
→ List को, जैसा ऊपर लिखा है, array, hashtable, struct, tuple जैसी data structures से replace किया गया है