There is a set of about 400 test scripts. Two interpreters that can run these test scripts can not deviate significantly from each other or from the language specified by the J dicitionary.
Parts of the interpreter obviously do symbolic computation. e.g. *: b. _1 %: +: b. _1 -: +:@*: b. _1 %:@-: ^ t. i.10x 1 1 1r2 1r6 1r24 1r120 1r720 1r5040 1r40320 1r362880 [EMAIL PROTECTED]: t. i.10x 1 2 2 4r3 2r3 4r15 4r45 8r315 2r315 4r2835 +:@^ t. i.10x 2 2 1 1r3 1r12 1r60 1r360 1r2520 1r20160 1r181440 (%-.-*:) t. i.13x 0 1 1 2 3 5 8 13 21 34 55 89 144 The "special code" described in Appendix B of the dictionary http://www.jsoftware.com/help/dictionary/special.htm implement certain recognized patterns using more efficient code. The recognition is symbolic because the function definitions are being analyzed and/or manipulated. e.g. x=: 1e6 [EMAIL PROTECTED] 1e5 y=: 1e6 [EMAIL PROTECTED] 1e5 ts=: 6!:2 , 7!:[EMAIL PROTECTED] x (> i. 1:) y NB. index of first place where x>y 0 ts 'x (> i. 1:) y' 5.5873e_6 1152 The fork > i. 1: is recognized and implemented efficiently. ----- Original Message ----- From: Yuvaraj Athur Raghuvir <[EMAIL PROTECTED]> Date: Sunday, September 24, 2006 6:20 pm Subject: [Jgeneral] Intrigued by the Interpreter.... > Hello, > > As I am starting on J, I would like to know: > > 1) How is the J interpreter tested to verify & validate the > properties of > the various symbols of the language? > I am particularly interested in knowing about how the rank > semantics is > validated. > > 2) Is it possible to introduce symbolic computation in functional > languages,particularly J? ---------------------------------------------------------------------- For information about J forums see http://www.jsoftware.com/forums.htm
