मुझे पता है कि जूलिया में ऑपरेटर केवल मानक कार्य हैं, और मैं उन्हें साधारण उपसर्ग कॉल सिंटैक्स का उपयोग करके उपयोग कर सकता हूं:
julia> +(1, 2)
3
हालांकि, वे इस अर्थ में भी विशेष हैं कि वे (और आमतौर पर) इन्फिक्स ऑपरेटरों के रूप में उपयोग किए जा सकते हैं:
julia> 1+2
3
क्या मैं अपने खुद के इन्फिक्स ऑपरेटर को परिभाषित कर सकता हूं? यदि हां, तो कैसे?
उदाहरण के लिए:
julia> α(x, y) = x+y
α (generic function with 1 method)
julia> α(1, 2)
3 # as expected
julia> 1α2
# expected result: 3
ERROR: UndefVarError: α2 not defined
Stacktrace:
[1] top-level scope at REPL[5]:1
julia> 1 α 2
# expected result: 3
ERROR: syntax: extra token "α" after end of expression
Stacktrace:
[1] top-level scope at REPL[5]:0
@infix
हैक था (यह जूसकप के द्वारा निहित गुणन पर निर्भर करता है) जिसने ऐसा कियाjulia> using InfixFunctions; @infix α(x, y) = x + y; 1 |α| 2
:। (InfixFunctions.jl
खुद के लिए मैक्रो एक्सरसाइज के रूप में विकसित किया गया था, यह जूलिया के साथ काम नहीं करता है। 1.x जैसा है।)