NB. filename: c:\test\pbptest.ijs テスト。loadd 'c:\test\pbptest.ijs' とする。
require 'c:\test\pbp.ijs'
16 i2bl 123 456 7890
16 i2bs 123 456 7890
16 i2ss 123 456 7890
16 bl2n 1 2 3;4 5 6;15 15
16 bs2n '123';'456';'ff'
16 ss2n '123 456 ff'
NB. filename: c:\test\pbpgen.ijs 練習問題作成算譜というかスクリプト
require'c:\test\pbp.ijs'
Ran=.2+?10#,:15,5#200
echo'Q1. i2ss の右側の10進数を,左端の数値を基数とした表現に変換せよ。'
echo'正解は,問題の行の上にカーソルを移動して2回ENTERを押すと表示される。'
echo;:inv@([,'i2ss'"_;])&>/@split"1":each Ran
echo''
Ran=.2+?10#,:15,5#200
echo'Q2. 左端の数値を基数とした ss2n の右側の表現を10進数に変換せよ。'
q=.''''"_
echo(":@[,' ss2n '"_,q,i2ss,q)&>/@split"1 Ran
echo''
実行例(一部改変):
] loadd 'c:\test\pbptest.ijs'
] 16 i2bl 123 456 7890
+----+------+---------+
|7 11|1 12 8|1 14 13 2|
+----+------+---------+
] 16 i2bs 123 456 7890
+--+---+----+
|7b|1c8|1ed2|
+--+---+----+
] 16 i2ss 123 456 7890
7b 1c8 1ed2
] 16 bl2n 1 2 3;4 5 6;15 15
291 1110 255
] 16 bs2n '123';'456';'ff'
291 1110 255
] 16 ss2n '123 456 ff'
291 1110 255
実行例2(抄):
load 'c:\test\pbpgen.ijs'
Q1. i2ss の右側の10進数を,左端の数値を基数とした表現に変換せよ。
正解は,問題の行の上にカーソルを移動して2回ENTERを押すと表示される。
8 i2ss 157 81 54 56 41
7 i2ss 59 62 196 48 80
...
2 i2ss 129 39 147 48 45
Q2. 左端の数値を基数とした ss2n の右側の表現を10進数に変換せよ。
9 ss2n '12 84 175 30 11'
16 ss2n '7 53 b 91 5d'
...
9 ss2n '180 18 211 144 182'
おしまい
がんばりましたがうまくいかないところが出てきます。
プログラムの文を
>>145の「NB. filename: c:\test\pbp.ijs 基数変換」
から
>>149の最後の「echo''」の文までをプログラムとしてペーストしてプログラムファイルとしました。
プログラムを置く所をC:\Users\○○\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\〜では
start menuにスペースがあるためj言語のウィンドウでは
「] loadd 'c:\〜\pbptest.ijs'を入力しましたが、スペースの前までしかまでしか読んでくれませんでした
それでドキュメントフォルダにプログラムを置いてみたのですが読見込めず
windows7x64でやってるのですが、メモ帳で書いてファイル名の中に.ijsをつけてたのですが
テキストにしかならんしため、関連付けをやっても駄目で
拡張子を表示する方法で.ijsにすることができました。
しかしそれでも読み込めませんでした。
「not found: c:/test/pbptest.ijs
|file name error: scriptd
| 0!:1 y[4!:55<'y'」
と表示されます。
それでpbptestのtestを削って
] loadd 'c:\test\pbp.ijs'でやってみましたところ読み込んでくれました
ところが
ss2n=: (bs2n cutopen)
NB. filename: c:\test\pbptest.ijs 繝・せ繝医Moadd 'c:\test\pbptest.ijs' 縺ィ縺吶k縲・
require 'c:\test\pbp.ijs'
の所で読み込みが停止し
not found: c:/test/pbp.ijs
|stack error: fexist
| fexist y
と表示され止ってしまいました。
153 :
デフォルトの名無しさん:2011/09/20(火) 01:56:36.88
そこで
] 160;16 i2bl 123 456 7890を実行すると
+----+------+---------+
|7 11|1 12 8|1 14 13 2|
+----+------+---------+ときちんと表示してくれました。
ここまで実行してたウィンドウはjconsole.exeで、そこで直接実行させてました。
今度はプログラムをウィンドウにコピペしたところ
同じ所で停止し「not found: c:/test/pbp.ijs」を表示し
ウィンドウズの小さな窓が出て
「jconsole.exeは動作を停止しました
問題が発生したため、プログラムが正しく動作しなくなりました。
プログラムは閉じられ、解決策がある場合はwindowsから通知されます。」が表示され
プログラムの終了ボタンが付いててクリックしたら終了してしまいました。
そこで今度は灰色jのj64-701conで動かしました。
先と同様にプログラムのコピペをした後、jconsole.exeの時と同じエラーを出して終了しました。
今度はウィンドウ内で] loadd 'c:\test\pbp.ijs'を実行してみました(j64-701conを起動させてます)
これもjconsole.exeと同じエラーをはいて終わりました。
結局jcopnsoleと同じ動作をしてくれました。
154 :
デフォルトの名無しさん:2011/09/20(火) 01:58:55.97
こんな同じことをわざわざ書く必要ないだろうと思われたかもしれませんが
この文章を書き始めたときはそれぞれ違う動作をしてたのでそれを書き込んでたのですが
僕がj言語入力ミスをしたのがわかったのでそのせいで違う動作をしてたわかりました。
ここまでくるまでたくさんのいろいろな無駄なことをしてしまいました。
話を元に戻しまして、例のコマンドの動作検証はまだ一コマンドしか試してないのですが
プログラムを最後まで読みこまなかったのですが、これでいいんでしょうか?
基本中の基本の話に戻ってしまいますが
j64-701(j701もですが)の黄色のjのj64-701brkと灰色のjのj64-701conと黄緑色のjのj64-701gtkと水色のjのj64-701jhs
の違いは何なんでしょうか?
よくわからず使ってましたが、どこかにこの基本的なことを教えてくれる日本語のサイトまたは英語のサイトはないんでしょうか?
http://www.jsoftware.com/のヘルプサイトにこの辺のことは書いてあったのでしょうか? 使い方がよくわからなくてあまりできませんでした。
英語の成績はひどすぎたので翻訳サイトを使わないと読めません。
155 :
すみません。:2011/09/20(火) 02:02:58.98
>>145-151さん
すみません。
大事なことを忘れてました、
こんな僕のために長いプログラムを考えてくださって
ありがとうございました。
156 :
デフォルトの名無しさん:2011/09/20(火) 05:07:37.48
>>150 最初のロード文以外は
実行できました。答えもちゃんその通りでました。
>>151は
大方実行できました。
ただload 'c:\test\pbpgen.ijs'は実行できませんでした。
not found: c:/test/pbpgen.ijs
|file name error: script
| 0!:0 y[4!:55<'y'
とエラーが出てしまいます。
以降はできました。これでよかったでしょうか?
Q1
8 i2ss 157 81 54 56 41
235 121 66 70 51
7 i2ss 59 62 196 48 80
113 116 400 66 143
2 i2ss 129 39 147 48 45
10000001 100111 10010011 110000 101101
Q2
9 ss2n '12 84 175 30 11'
11 76 149 27 10
16 ss2n '7 53 b 91 5d'
7 83 11 145 93
9 ss2n '180 18 211 144 182'
153 17 172 121 155
157 :
デフォルトの名無しさん:2011/09/20(火) 05:44:48.38
ただ
> 正解は,問題の行の上にカーソルを移動して2回ENTERを押すと表示される。
がわかりません。
コピペすると
9 ss2n '180 18 211 144 182'
153 17 172 121 155
8 i2ss 157 81 54 56 41
235 121 66 70 51
7 i2ss 59 62 196 48 80
113 116 400 66 143
...
|spelling error
| ...
| ^
2 i2ss 129 39 147 48 45
と表示されます。ここでENTERキーを押すと次の行に
10000001 100111 10010011 110000 101101
と表示されした。
>カーソルを移動して2回ENTERを押すと
ってどういう状況を説明されてるんでしょうか?
変な動作になった理由がわかりました。
夫々は「おっとおっと」じゃなくって「それぞ」だったんですね。
それぞれを名前をつけて保存してって事は二つプログラム入ってたんですね。
>>149からは次のプログラムだったんですね。だから動かなかったんですね。
>>148も各行の「16」以下も設問だったんですね
なんか僕はずいぶんアホアホでした゚(゚´Д`゚)゚
>>138,141さんおは Re
>>152-157 役立ってるか逆に苦労させてるか心配です。自己解決された点も多い様ですが取り急ぎ。
【1】Jのアイコンまとめ(Win関係のみ)
JR7: jhsIDE(jhs.bat 水色) gtkIDE(jgtk.bat 緑) CUI(jconsole.exe 灰色) (黄色はjの実行を中断させる jbreak.bat) Win2K以降(但しgtkIDEは原則XP以降)
JR6: JwdwIDE(j.exe 水色) JwdpIDE(javaw.exe+j.jar/JavaRTE 赤) CUI(jconsole.exe) (黄色はjの実行を中断させる jbreak.bat) Win2K以降
JR5: JwdwIDE(j.exe 水色) JwdpIDE(javaw.exe+j.jar/JavaRTE 赤) CUI(jconsole.exe) jbreakなし Win95以降
JR4: JwdwIDE(j.exe 水色) WinのCUIなし jbreakなし 64bit版なし Win95以降
JR3: JwdwIDE(j.exe 赤?) Win3以降
【2】「正解は; 問題の行の上にカーソルを移動して2回ENTERを押すと表示される。」
ってのは、実は上記の内 JwdwIDE; JwdpIDE; gtkIDE での操作(jhsIDEでの操作は忘れた)。jconsole.exe/CUIでは仰る通り1行づつコピペして下さい。
本当はJの入門にはR6のJwdwIDEが適していて、R7は既習者やajax開発者向きかもです。R7のjhs/gtkIDEはすんなり導入できればめでたいが、トラブルにハマるとハードル高いかも。R6とR7は言語仕様に於いては殆ど違いなし。
【3】ファイルは全部で3つ: pbp.ijs; pbptest.ijs; pbpgen.ijs
それぞれ(スマソw)の始まりor続きには NB. filename: c:\test\自分ファイル名.ijs と書いてある行がある。
160 :
デフォルトの名無しさん:2011/09/20(火) 08:18:05.13
>>158-159 ありがとうございます。
時間が出来たときに確かめてみたいとおもいます。
アイコンの色の質問に対する返答がハズれていたのは洩れも自覚していたので、古くなったが判断材料になりそうな記事を引いて私訳してみますた(対訳)。
JODの開発者John Baker 2011-2-12の記事:
JODのページ/ソフトウェアカテゴリの書庫
J 7.01 が今や貴方のブラウザで動く
The JOD Page/Archive for the 'Software' Category
J 7.01 Now Playing in your Browser
(続く)
J言語使いにとっての激変が進行中だ。J R7.01のリリースに当って、JSOFTWARE社は、既に定着している2種のユーザ向けIDE[JwdwとJwdpのこと]を廃止して、替りにGTKとウェブブラウザに基づいた新機軸の利用者界面に入れ替えるという冒険に打って出た。
皆さん良くご存じの通り新ソフト必ずしも改良ソフトならず(刷新は冒険でもある事をお忘れなく)。しかし今回のは意義ある変更である。
(続く)
Big changes are afoot for J programmers. With the release of J 7.01 JSOFTWARE has taken the risky step of deprecating two well established user IDE's and replacing them with brand new GTK and Web browser-based interfaces.
As we all know new software is not necessarily better software, (remember that risky bit), but in this case the changes make sense.
[スクリーンショット]
J 7.01 JHSが動作している画面(ブラウザとしてクロームを使用)
J 7.01 running JHS on Chrome
(続く)
今迄のJ言語処理系は大いにWin指向だった。成程Jは十余年に亙りUNIX/LinuxやMacの系列で完璧に動いて来たとは言え、IDEがWinに偏向していたことは否めまい。
これはJSOFTWARE社も十分自覚していて、Javaベースの可搬IDE[Jwdp]にも、WinIDE[Jwdw]と同等の機能を整備しようとして来た。だが不幸にも、JavaIDEはJavaそれ自身と同様、期待に十分応えられなかった。
(続く)
165 :
I., S.:2011/09/21(水) 19:51:33.09
Early J systems were largely Windows-Centric. Yes, J has run perfectly well on strains of UNIX/Linux and the Mac for over a decade but I think it's fair to say that J IDE's were biased toward Windows.
JSOFTWARE was well aware of this and tried to offer the features of their Windows IDE with a portable Java based IDE. Unfortunately the Java IDE, like Java itself, failed to live up to expectations.
(続く)
166 :
I., S.:2011/09/21(水) 19:58:39.66
絶対多数ではないにしろ、LinuxやMacほかの非Win環境でJを動かすプログラマは今や大勢居るのだから、彼らを軽視する理由はない。
それでは「この開発環境はWin/Linux/Mac/スマホ/他多くのIT機器できちんと動き、最先端の技術と機能を具え、環境間の互換性もバッチリです」なーんていうIDEをどうにかすれば提供できるもんだろうか……。
唯一無二の答えなど無いから、JSOFTWAREは2通りのIDEを用意するという賢明な決定をした。JHSとJGTKである。
(続く)
167 :
I., S.:2011/09/21(水) 20:05:31.34
Now that the many, if not the majority of J programmers, run J on non-Windows, (mostly Linux and the Mac), systems it makes no sense to treat them like second class citizens.
So how do you provide a _state of the art portable user IDE_ that runs well on Windows, Linux, the Mac, smart phones and various IGadgets. There is no single answer so JSOFTWARE wisely decided to offer two IDEs: JHS and JGTK.
(続く)
168 :
I., S.:2011/09/21(水) 20:11:54.62
[以下は輪を掛けて手抜き&超訳w]
従来のWinIDE似なのはJGTK[JwdwにもJwdpにも近い]。JGTKはLinux寄りだが他環境でも動く。
JGTKの起動は遅いが起動してしまえば[従来のWinIDEと]パフォに顕著な違いは感じられない。エディタは従来のWinIDEのより優秀。初版にしては上出来。皆で鍛え上げて行くべし。
(続く)
The JGTK IDE is a desktop application that is similar to the older Windows IDE. JGTK is somewhat biased toward Linux but this his doesn't mean it doesn't work well on other systems.
I run it on WinXP and Win7 machines all the time. JGTK takes longer to load than the older Windows IDE but once it's up and running I don't see significant performance differences.
The JGTK editor is superior to the older Windows editor and I love the side bar and UNIX style code tagging. For a first version JGTK is a nice bit of work that will only improve as J programmers and users pound away on it.
(続く)
JGTKは上出来。対してJHSは根っから過激。JHSはデスクトップでなく[自PCのスタンドアロンアプリ的にふるまうのをやめ]貴方のブラウザをJ開発環境にする。最初は私も「う〜んどうなんだろうなコレ」と思ったがグーグル社のクロームと併せると効果抜群だった。
旧WinIDEより速い。オーバヘッドも小さくてブラウザを通しているのを屡(しばしば)忘れる。優れたユーザインタフェイスというものはユーザにあれこれ働き掛けず、存在を感じさせないのだ[超訳]。
(次回最終回)
JGTK is nice but JHS is radical. JHS abandons the desktop and turns your favorite web browser into a stripped down J programming environment. I was skeptical when I first heard about JHS but it has won me over.
JHS is amazingly effective under Google's Chrome browser. It comes up in a flash and is as zippy or faster than the older Windows IDE.
Even better this webby goodness imposes minimal burdens. The JHS web server is often one of the smaller processes running on my machines.
I have been doing the bulk of my JOD update work with JHS and I frequently forget I'm using a browser! _Good user interfaces, unlike politicians, get out of your face!_
[以下割愛スマソ>John Baker]
(ひとまず糸冬)
172 :
I., S.:2011/09/21(水) 22:21:21.87
あとこれも。Jのホームから。こんなに勇ましいとは思わなかった。
"安定版のダウンロードページ"
J701とJ602は共に安定版である。J701には特筆すべき改革が導入されており、新参ユーザであろうが古参であろうが、未開拓技術の最先端での挑戦を望む者向けである。
J602は資産継承重視のユーザと、事を(特にウィンドウズ環境に於いて)緩徐に運びたいと望む者向けである。
www.jsoftware.com/stable.htm
"Download Stable"
J701 and J602 are both stable releases. J701 introduces significant change and is for users, new or old, who want the challenge of the bleeding edge.
J602 is for legacy users and those who want, especially in Windows, a gentler experience.
翻訳乙
そういやJ7は取ってきたきりで使ってないな。
174 :
GUIにしてみますた:2011/09/24(土) 06:56:13.43
NB. filename: xbase2ch.ijs hibari.2ch(ry)tech/1263291450/138-
require'c:\test\pbp.ijs'
XB2cF=: 0 : 0
pc xB;
xywh 6 6 86 12;cc Toi static;
xywh 6 18 86 12;cc Kai edit;
rem form end;
)
xbrun=: 3 : 0
'Suru Odai'=: wdselect 'DoreniSIRU?';<'T)o 10';'F)rom 10'
if.Suru do.
wd XB2cF
syutudai''
wd'pshow' end.
)
xB_cancel=: wd bind'pclose'
xB_Kai_button=: 3 : 0
if. A -: Kai do.
wd'set Kai'
syutudai'' end.
)
syutudai=: 3 : 0
'B D'=: ":each t=. 2+ ? 15 19
X=: i2ss/ t
'A Q'=: Odai{ (D;X,'(',B,')=?') ,: X;D,'=?(',B,')'
wd 'set Toi *', Q, Zuru#A
)
Zuru=: 1
xbrun'' NB. Kokomade
175 :
取り説1/2:2011/09/24(土) 07:06:18.96
xbase2ch_man=: 0 : 0
xbase2ch.ijs: J R6までの Jwd で基数変換の練習を行うGUIアプリ。wってレベ(ry
起動法:
load'xbase2ch.ijs' … IDE内から
j.exe xbase2ch.ijs … コマンドラインから。IDE併走
j.exe -jijx xbase2ch.ijs … 単独アプリモード。IDE無
javaw.exe -jar j.jar xbase2ch.ijs … JavaRTE上で実行
尚、以前のレスの c:\test\pbp.ijs が必要。パスは適宜直して下さい。
使い方:
1.起動するとPopUpが出て、どれに汁? T:10進への変換 F:10進からの変換
と訊くので選ぶ。
2.Formが開いて出題。正解を入れると次出題。
(続く)
(続き)
3.最初は正解も晒すモードになっているので、勝手が分ったら
ソースの Zuru=:1 を Zuru=:0 にするか、IDE配下ならIDEのijx窓に移って
ダイレクトに Zuru=:0 と打ち込むと直後の出題から隠す。
4.余計な空白・全角・英大文字は不正解となる。
5.ESCで終了(右上の「[x]閉じる」ボタンはハンドラを略したので効かない)。
6.尚、ソースをIDEのエディタで開きalt+E EでFormEditorを起動すると
出題・回答Formの体裁を貴方好みに変えられます。
)
いや、だからその7万てのが高いか安いかって話だよw
さて、今年のJ界隈の運勢は…
learning JのAppendix 1: Evaluating Expressionsを読んでるが、なんかややこしい。
で、↑のスレをざっと読んでみたが順調に行けば2月の早いうちにも
android marketに上げるらしい。
>>184 そのサイトのギャラリーをながめていたらpov-rayを思い出した。
187 :
デフォルトの名無しさん:2012/03/12(月) 22:00:38.89
>どう思う?
MSの回し者乙
と思う
190 :
I., S.:2012/03/18(日) 08:43:13.52
Anarchy golfにK言語が入った模様。Kのオープンソース版konaと言う実装らしい。
Kona is the open-source implementation of the K programming language.
If you don't know APL, then this is the place to start.
K is an ASCII-based APL. KDB (or Q) is the popular database software built on top of K.
K was originally designed by Arthur Whitney and Kx Systems.
Kona is unaffiliated with Kx.
オリジナルと"open-source implementation"の間に、
埋められない絶大な差があるような気がする。
A+とNARS2000くらいの差が。
元々商品だったJとは比べものにならないのじゃないかと思う。
>>193 >>67,74に挙げた話を繰り返しているだけですよ。
A+がJと同等のパフォーマンスを発揮したのに対して、
NARS2000はエクセルにも劣るものだった。
AtCoder Regular Contest #003
の簡単な問題をJでやってみた。
A: GPA計算
echo 0j10":(([:+/'FDCBA'i.])%#);}.<;._2 stdin''
B: さかさま辞書
echo@>(/:|.&.>)}.<;._2 stdin''
さかのぼって AtCoder Regular Contest #001
の問題もJでやってみた。
A: センター採点
echo(>./,<./)+/"1=;}.<;._2 stdin''
B: リモコン
echo(<.@(%&10)+0 1 2 3 4 1 2 3 3 2{~10&|)|@-/".}:stdin''
最近コード書いてないなぁ。
theory of array関係の論文もサワリだけ読んで放りっぱなしだし。