J言語1.5

このエントリーをはてなブックマークに追加
1デフォルトの名無しさん
旧スレの>>1の規制が解けたんでひっそり復活。

他のAPL系言語や、array languageも歓迎。
function-level系言語の使い手大歓迎。

本家(J software)
http://www.jsoftware.com/

旧スレ
J言語 http://toro.2ch.net/test/read.cgi/tech/1263291450/
21:2013/09/28(土) 11:08:33.29
まあ、まあ規制がかかってメンテできなくなったら勘弁ってことで。
3デフォルトの名無しさん:2013/09/28(土) 11:13:55.88
tutorialとかへのリンク貼ってくれよ
4デフォルトの名無しさん:2013/09/28(土) 11:36:07.00
まあ、この辺からじゃないかと。

LEARNING J
http://www.jsoftware.com/help/learning/contents.htm


あと、プログラミング童貞なら先に↓読んだほうがイイって本家は言ってる。

J Primer
http://www.jsoftware.com/help/learning/contents.htm


「従来型言語のスタイルに慣れてるなら、これでCとJのプログラミングスタイルを比較しながら進め」だとか
も言ってたような気も。

J for C Programmers
http://www.jsoftware.com/help/jforc/contents.htm
5デフォルトの名無しさん:2013/09/28(土) 11:39:03.99
と言うか、まあこのへんから始めればいいような気が。

本家のwikiのgetting started
http://www.jsoftware.com/jwiki/Guides/Getting%20Started
6デフォルトの名無しさん:2013/09/28(土) 11:48:20.65
なんか、他に要るもんあったら書いてくれれば出来る範囲でリンク貼るとか説明とかはするかも。

まあ、初心者でヘタレなんでガッカリさせるとは思うけど、その辺は勘弁&容赦なく突っ込んでくれって事で。
71:2013/09/28(土) 14:10:26.39
Jの変数とか関数の定義って、 =: を使うとグローバルで、=. を使うとローカルって事になってるけど、
一番外で使うと =. を使ってもグローバルになるっぽい。

ちょっとやられた。
81:2013/09/28(土) 17:46:31.73
learning Jでlocaleをさらってるが色々と酷い。
ちょっと酷すぎる。
9デフォルトの名無しさん:2013/09/28(土) 17:48:15.19
J++言語なら一時期書いてた
101:2013/09/30(月) 10:03:16.05
JAVA系言語とはは多分対極に位置してると思うw
111:2013/09/30(月) 19:57:31.00
>>8で言ったlocaleのアレな例。

cocurrent 'X'      NB. ロケールXで

k =: 1           NB. 変数kと

at =: 1 : 'u&k'      NB. 引数に取った動詞uの右引数をkでキメウチして返す副詞at(tacit動詞を返す)と
ae =: 1 : '(u&k)y'    NB. 同じ機能の副詞ae(但し、explicit動詞を返す)を定義する。

(+ at)3          NB. 当然どちらも同じ結果が返る。
4
(+ ae)3
4

cocurrent 'base'    NB. baseロケールに戻って

k =: 2           NB. 別のkを定義しておく。

(+ at_X_) 3        NB.  ロケールXからatを呼ぶ。
4               NB. atはロケールXのkを参照している。(learning Jの説明通り)

(+ ae_X_) 3        NB. でaeを呼ぶと
5                NB. 何故かカレントロケール(base)のkを参照してる。。。
121:2013/09/30(月) 20:15:28.69
locale周りの謎動作は他にも見つけてるし、探せばまだまだ出てきそうな悪寒。
131
JのOOPの機構ってどうもプロトタイプ&委譲ベースっぽい。
そういう言語でのOOな設計の仕方って何を読めばいいんだろう。

とりあえずはプロトタイプ元祖のSelfのドキュメントとか読んでみようと思うけど。

http://selflanguage.org/documentation/published/index.html