আমি জানি জুলিয়ায় অপারেটরগুলি কেবল স্ট্যান্ডার্ড ফাংশন এবং আমি সাধারণ উপসর্গ কল সিনট্যাক্স ব্যবহার করে সেগুলি ব্যবহার করতে পারি:
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
আমার জন্য ম্যাক্রো এক্সারসাইজ হিসাবে বিকাশ করা হয়েছিল, এটি জুলিয়া ১.x এর মতো কাজ করে না।)