問題タブ [j]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
void - Jの無効動詞
オンラインで J を使用する方法を学んでおり、この言語を使用して古い Java の割り当てをやり直しています。オペランドを取らない動詞を作成する方法、または結果を返す方法を知りたいです。その理由は次のとおりです。動詞を入力できるようにしたいと思いgo
ます。一連のコードを単独で実行し、実行時に生成されるデータを保存する動詞を呼び出してみましょう。ただし、何も表示されません。これの全体的な目標は、少なくともvoid returnChange()
メソッドを必要とする自動販売機クラスとインターフェースを最終的に再現できるようにすることです。
bitwise-operators - J にはビットごとの xor プリミティブが組み込まれていますか?
J には xor のように機能するプリミティブがあることは知っています~:
が、これは実際にはnot equal to (!=)
xor =: 4 : '#.((#:x)~:(#:y))'
動詞定義内では、ビットごとの xor のように機能させることができますが、これは数値のバイナリ表現が同じ長さの場合にのみ機能します。if ステートメントを使用して同じサイズのリストを作成し、ビットごとの xor を作成する完全な動詞を作成する以外にできることはありますか。
ご参考までに、私が質問しているのは、Java で作業していた Nim 解決プログラムを J で再作成したいからです。
haskell - J スタイルの副詞、フォークなどは、主流の関数型言語のライブラリを介してエミュレートされていますか?
動詞、副詞、フォークなどを介した超凝縮された暗黙のプログラミングの J スタイルのエミュレーションが、主流の関数型言語のライブラリを介して試みられたことはありますか?
もしそうなら、結果はどのくらい成功しましたか?
そうでない場合、これを不可能にする技術的な問題はありますか?それとも、実行する価値がないだけですか?
私は特に、関数型プログラミングの基本概念に直接対応していないように見えるフォークのような構造に興味があります。
j - Jのコンテキストヘルプ
GHCを使用してHaskellをいじくり回すとき、:i
またはのようなさまざまなメタコマンドを使用:t
して、識別子に関する情報を見つけることができます。REBOLでは、REBOLの単語に関する非常に詳細な情報を取得するためにhelp
、などの機能を使用できます。source
Jのためにそのような施設が存在するならば、私はどういうわけかそれを逃しました。ビルトインを知っているJ-erはいますか?
functional-programming - ポイントフリーコードをいじっていますか?
ポイントフリープログラミングを試すために、Factor 言語と J 言語を学んでいます。言語の基本的な仕組みは明確に見えますが、アルゴリズムの設計にどのようにアプローチするかを理解するのは簡単ではありません。
私にとって特に混乱の原因は、さまざまなパラメーターを簡単に試すことができるようにコードを構造化する方法です。これは、Mathematica と Matlab が非常に得意とする類のものを意味します。アルゴリズムを設定して変数を操作し、何が起こるかを観察します。
明示的な変数なしでこれを行うにはどうすればよいですか? たぶん、私はこれについてすべて間違って考えています。ポイントフリープログラミングでこれにどのようにアプローチすればよいですか?
j - 数値行列を作成するための最も簡潔な J 構文
1 から 3 までの数字を取り、考えられる各組み合わせが表されるような行列を作成したいとします。たとえば、次のようになります。
これを行うために J で定式化した単項動詞を次に示します。
,"0/~ 1+i.y
もともとそれで十分だと思っていましたが、残念ながら次の出力が生成されます。
つまり、その形状は 3 3 2 で、9 2 の形状が必要です。それを修正するために考えられる唯一の方法は、すべてのデータを新しい形状に注ぐことです。これを行うには、もっと簡潔な方法が必要だと確信しています。誰でも知っていますか?
j - Jのリストで要素が出現する回数を数えるより簡潔な方法は何ですか?
これが私がやった(おそらく素朴な)方法です:
つまり、4 count 3 4 4 3 4 7 9
結果が3
であるとすれば4
、与えられたリストに 3 が 3 回出現するからです。
これは完全に機能しますが、J がこれを表現するためのより簡潔な方法を提供するかどうか疑問に思います。
j - APL対A対J対K?
アレイ言語の風景は魅力的ですが、終わりのない混乱を招いています。JまたはKまたはAPLまたはAのいずれかを選択する理由はありますか?これらのオプションはどれもオープンソースではないようです-オープンソースバージョンはありますか?心を広げたいのですが、戸惑い続けています。
function - J、関数を作成する
Jを学び始めたばかりで、数が素数かどうかをチェックする関数を作成しようとしました。
これは、13が素数であるかどうかをチェックし、1を返します。
そして、これは0を返します。
だから私の質問:これから関数を作るにはどうすればいいですか?引数を指定するにはどうすればよいですか?
もちろん、これは機能しません。しかし、どうすればJでこの関数を作成できますか?
PS。関数が2で機能しないことはわかっていますが、後で処理します:D