मैं मॉड्यूल में नामित फ़ंक्शंस को ठीक से परिभाषित कर सकता हूं, लेकिन मुझे अभी तक आईईएक्स> या एक्स> कंसोल में उपयोग के लिए इसका लटका नहीं मिला है। इस प्रकारमैं ** (ArgumentError) के बिना Elixir कंसोल में नामित फ़ंक्शंस को परिभाषित कैसे कर सकता हूं मॉड्यूल के बाहर def/2 का आह्वान नहीं कर सकता?
(ArgumentError) cannot invoke def/2 outside module
pprime.exs
IO.puts "initial division test"
defmodule Expand do
def transform(myvar) do
8 * myvar + 3;
end
end
div2 = fn inputnum ->
[:a, inputnum/2.0, inputnum/3, inputnum/5.0, inputnum/7]
end
output = div2.(20.1)
मैं अमृत ठीक के साथ इस चला सकते हैं,:
मैं निम्नलिखित त्रुटि मिलती रहती है जब मैं डीईएफ़ आदेश चलाने का प्रयास
$ elixir pprime.exs
हालांकि, कंसोल में, मुझे ऐसा कोई प्रतीत नहीं होता है:
Erlang/OTP 17 [erts-6.3] [source] [64-bit] [async-threads:10] [kernel-poll:false]
Interactive Elixir (1.0.2) - press Ctrl+C to exit (type h() ENTER for help)
iex(1)> def transform(myvar) do 8 * myvar + 3; end
** (ArgumentError) cannot invoke def/2 outside module
(elixir) lib/kernel.ex:3556: Kernel.assert_module_scope/3
(elixir) lib/kernel.ex:2816: Kernel.define/4
(elixir) expanding macro: Kernel.def/2
(elixir) iex:1: :elixir_compiler.__FILE__/2
मैं एलिक्सीर कंसोल में नामित फ़ंक्शन को कैसे परिभाषित कर सकता हूं?
क्या यह भी संभव है?
क्या मुझे एलिक्सीर कंसोल में उपयोग करने के लिए एक विशेष मॉड्यूल बनाने की आवश्यकता है?
क्या कोई फ़ंक्शन को परिभाषित करने के लिए एलिक्सीर कंसोल के लिए मॉड्यूल जोड़ सकता है? –
हां, आप बस 'def' मॉड्यूल' में 'def' को घोंसला कर सकते हैं, जैसे कि exs फ़ाइल में। –
//, मैं यक बालों की बेहोशी, गीली खुशबू गंध करता हूं, लेकिन मुझे लगता है कि हर लैंग पाइथन नहीं हो सकता है या नहीं। –