Hi Aai. Thanks. I did, but still: 22{. DB 1 CREDO 11 IN 111 UNUM _18{.DB NB. it is necessary to put a blank character before AMEN. 321 SÆCULI AMEN
$ DB 1926 'key val'=: <"1 |: >({. , ([,' ',])&.>/@:}.)@:(' '&cut) each LF cut DB |domain error | 'key val'=:<"1|:> ({.,([,' ',])&.>/@:}.)@:(' '&cut)each LF cut DB 3 {. cut DB ┌─┬────────┬──────┐ │1│CREDO 11│IN 111│ └─┴────────┴──────┘ The line number should be before the word. - Bo >________________________________ > Fra: Aai <agroeneveld...@gmail.com> >Til: programm...@jsoftware.com >Sendt: 15:21 fredag den 30. november 2012 >Emne: Re: [Jprogramming] Translating BASIC into J > >Hi Bo, you need to feed the animal, e.g. > >DB=: 0 :0 >1 CREDO >11 IN >111 UNUM >... >) > >and then: > >'key val'=: <"1 |: >({. , ([,' ',])&.>/@:}.)@:(' '&cut) each LF cut DB > > > >On 30-11-12 15:03, Bo Jacoby wrote: >> Hi June. I can't make it work. >> require 'strings' >> cut >> ' '&$: :([: -.&a: <;._2@,~) >> 'key val'=: <"1 |: >({. , ([,' ',])&.>/@:}.)@:(' '&cut) each LF cut >> |domain error >> | 'key val'=:<"1|:> ({.,([,' ',])&.>/@:}.)@:(' '&cut)each LF cut >> - Bo >> >> >> >> >>> ________________________________ >>> Fra: June Kim (김창준) <junea...@gmail.com> >>> Til: programm...@jsoftware.com >>> Sendt: 9:30 fredag den 30. november 2012 >>> Emne: Re: [Jprogramming] Translating BASIC into J >>> >>> I forgot to mention that cut is from strings. >>> >>> Hence, you should >>> >>> require 'strings' >>> >>> first, before running my other lines. >>> >>> On Wed, Nov 28, 2012 at 2:43 PM, June Kim (김창준) <junea...@gmail.com> wrote: >>> >>>> Hi Bo, >>>> >>>> Firstly on the database file: >>>> >>>> I suppose there is no blank line in between the lines of the file. >>>> I suppose AMEN at the end was actually, 0 AMEN, instead. >>>> >>>> Now a quick and dirty version -- notice that this doesn't fully implement >>>> the basic code exactly, but you'll get the key idea. >>>> >>>> 'key val'=: <"1 |: >({. , ([,' ',])&.>/@:}.)@:(' '&cut) each LF cut >>>> 1!:1<jpath'~user/temp/CREDO' NB. I put the CREDO file here >>>> search=:*./@(+./)@( [ (= , '0'&=@,: ) ({.~ #)~ ) >>>> val#~key search every < '13522' NB. query for 13522 >>>> >>>> >>>> June >>>> >>>> >>>> On Tue, Nov 27, 2012 at 3:31 PM, Bo Jacoby <bojac...@yahoo.dk> wrote: >>>> >>>>> Dear J'ers. >>>>> >>>>> At the Norddata conference in Göteborg in the summer 1989 I gave a >>>>> lecture (in Danish) on Ultraflexible Database Structure and Artificial >>>>> Catholicism. >>>>> >>>>> >>>>> It contained this 8-liner in BASIC. >>>>> >>>>> 1 INPUT;C$: IF C$="" THEN END >>>>> 2 OPEN "CREDO" FOR INPUT AS 1: PRINT":"; >>>>> 3 IF EOF(1) THEN CLOSE: PRINT: GOTO 1 >>>>> 4 LINE INPUT#1,A$: B$=C$ >>>>> 5 IF A$=""THEN A%=-1 ELSE A%=ASC(A$)-48: A$=MID$(A$,2) >>>>> 6 IF B$=""THEN B%=-1 ELSE B%=ASC(B$)-48: B$=MID$(B$,2) >>>>> 7 IF A%<0 THEN PRINT" ";A$;: GOTO 3 >>>>> 8 IF A%=0 OR B%=0 OR A%=B% THEN 5 ELSE 3 >>>>> >>>>> I have not yet been able to translate this program into J, mainly (I >>>>> think) because I have no experience in reading textfiles from J. I request >>>>> your assistance! The line numbers in the file must be separated from the >>>>> rest of the lines. The line numbers may be padded to the right with >>>>> zeroes. >>>>> >>>>> >>>>> The program is a database browser. The question put to the program is a >>>>> number, and the answer from the program consists of the lines in the >>>>> database having numbers compatible to that of the question. Like this: >>>>> >>>>> 1: CREDO AMEN >>>>> 2: CONFITEOR AMEN >>>>> 3: EXPECTO AMEN >>>>> 0: CREDO CONFITEOR ET EXPECTO AMEN >>>>> >>>>> The digit zero is wild card character. A zero in the question indicate >>>>> that the answer has many words, and zero in a word in the database >>>>> indicate >>>>> that this word answers many questions. So "AMEN" is included in all >>>>> answers. Like this: >>>>> >>>>> 11: CREDO IN DEUM AMEN >>>>> 12: CREDO IN JESUM AMEN >>>>> 13: CREDO IN SPIRITUM AMEN >>>>> 14: CREDO ECCLESIAM AMEN >>>>> 15: CREDO AMEN >>>>> 10: CREDO IN DEUM ET IN JESUM ET IN SPIRITUM ET ECCLESIAM AMEN >>>>> 21: CONFITEOR BAPTISMA AMEN >>>>> 22: CONFITEOR AMEN >>>>> 31: EXPECTO RESURRECTIONEM AMEN >>>>> 32: EXPECTO VITAM AMEN >>>>> 33: EXPECTO AMEN >>>>> 30: EXPECTO RESURRECTIONEM ET VITAM AMEN >>>>> 01: CREDO IN DEUM CONFITEOR BAPTISMA ET EXPECTO RESURRECTIONEM AMEN >>>>> 13500: CREDO IN SPIRITUM QUI CUM PATRE ET FILIO SIMUL ADORATUR ET >>>>> GLORIFICATUR AMEN >>>>> >>>>> 13510: CREDO IN SPIRITUM QUI CUM PATRE ET FILIO SIMUL ADORATUR AMEN >>>>> 13520: CREDO IN SPIRITUM QUI CUM PATRE ET FILIO SIMUL GLORIFICATUR AMEN >>>>> 13501: CREDO IN SPIRITUM QUI CUM PATRE ADORATUR ET GLORIFICATUR AMEN >>>>> 13502: CREDO IN SPIRITUM QUI CUM FILIO ADORATUR ET GLORIFICATUR AMEN >>>>> 13511: CREDO IN SPIRITUM QUI CUM PATRE ADORATUR AMEN >>>>> 13512: CREDO IN SPIRITUM QUI CUM FILIO ADORATUR AMEN >>>>> 13521: CREDO IN SPIRITUM QUI CUM PATRE GLORIFICATUR AMEN >>>>> 13522: CREDO IN SPIRITUM QUI CUM FILIO GLORIFICATUR AMEN >>>>> >>>>> The database is this. >>>>> 1 CREDO >>>>> 11 IN >>>>> 111 UNUM >>>>> 11 DEUM >>>>> 112 PATREM >>>>> 1121 OMNIPOTENTEM >>>>> 113 FACTOREM >>>>> 1131 CÆLI >>>>> 1139 ET >>>>> 1132 TERRÆ >>>>> 11331 VISIBILIUM >>>>> 1133 OMNIUM >>>>> 11339 ET >>>>> 11332 INVISIBILIUM >>>>> 19 ET >>>>> 12 IN >>>>> 1211 UNUM >>>>> 1211 DOMINUM >>>>> 12 JESUM >>>>> 1211 CHRISTUM >>>>> 1212 FILIUM >>>>> 1212 DEI >>>>> 12121 UNIGENITUM >>>>> 1219 ET >>>>> 1213 EX >>>>> 1213 PATRE >>>>> 1213 NATUM >>>>> 12131 ANTE >>>>> 121311 OMNIA >>>>> 12131 SÆCULA >>>>> 1221 DEUM >>>>> 12211 DE >>>>> 12211 DEO >>>>> 1222 LUMEN >>>>> 12221 DE >>>>> 12221 LUMINE >>>>> 1223 DEUM >>>>> 12231 VERUM >>>>> 12232 DE >>>>> 12232 DEO >>>>> 122321 VERO >>>>> 1231 GENITUM >>>>> 12311 NON >>>>> 12311 FACTUM >>>>> 1232 CONSUBSTANTIALEM >>>>> 1232 PATRI >>>>> 12321 PER >>>>> 12321 QUEM >>>>> 12321 OMNIA >>>>> 12321 FACTA >>>>> 12321 SUNT >>>>> 124 QUI >>>>> 124101 PROPTER >>>>> 124101 NOS >>>>> 12410101 HOMINES >>>>> 124109 ET >>>>> 124102 PROPTER >>>>> 12410201 NOSTRAM >>>>> 124102 SALUTEM >>>>> 12411 DESCENDIT >>>>> 1241101 DE >>>>> 1241101 CÆLIS >>>>> 12419 ET >>>>> 12412 INCARNATUS >>>>> 12412 EST >>>>> 1241201 DE >>>>> 1241201 SPIRITU >>>>> 124120101 SANCTO >>>>> 1241202 EX >>>>> 1241202 MARIA >>>>> 124120201 VIRGINE >>>>> 12419 ET >>>>> 1241301 HOMO >>>>> 12413 FACTUS >>>>> >>>>> 12413 EST >>>>> 124211 CRUCIFIXUS >>>>> 1242101 ETIAM >>>>> 1242101 PRO >>>>> 1242101 NOBIS >>>>> 1242102 SUB >>>>> 1242102 PONTIO >>>>> 1242102 PILATO >>>>> 124212 PASSUS >>>>> 124219 ET >>>>> 124213 SEPULTUS >>>>> 12421 EST >>>>> 12429 ET >>>>> 12422 RESURREXIT >>>>> 124221 TERTIA >>>>> 124221 DIE >>>>> 124222 SECUMDUM >>>>> 124222 SCRIPTURAS >>>>> 12429 ET >>>>> 12423 ASCENDIT >>>>> 124231 IN >>>>> 124231 CÆLUM >>>>> 12424 SEDET >>>>> 124241 AD >>>>> 124241 DEXTERAM >>>>> 124241 PATRIS >>>>> 12429 ET >>>>> 124251 ITERUM >>>>> 12425 VENTURUS >>>>> >>>>> 12425 EST >>>>> 124252 CUM >>>>> 124252 GLORIA >>>>> 124253 JUDICARE >>>>> 1242531 VIVOS >>>>> 1242539 ET >>>>> 1242532 MORTUOS >>>>> 125 CUJUS >>>>> 125 REGNI >>>>> 125 NON >>>>> 125 ERIT >>>>> 125 FINIS >>>>> 19 ET >>>>> 13 IN >>>>> 13 SPIRITUM >>>>> 131 SANCTUM >>>>> 132 DOMINUM >>>>> 139 ET >>>>> 133 VIVIFICANTEM >>>>> 134 QUI >>>>> 134 EX >>>>> 1341 PATRE >>>>> 1342 FILIO >>>>> 1349 QUE >>>>> 134 PROCEDIT >>>>> 135 QUI >>>>> 135 CUM >>>>> 13501 PATRE >>>>> 13509 ET >>>>> 13502 FILIO >>>>> 13509 SIMUL >>>>> 1351 ADORATUR >>>>> 1359 ET >>>>> 1352 GLORIFICATUR >>>>> 136 QUI >>>>> 136 LOCUTUS EST >>>>> 1361 PER >>>>> 1361 PROPHETAS >>>>> 19 ET >>>>> 141 UNAM >>>>> 142 SANCTAM >>>>> 143 CATHOLICAM >>>>> 149 ET >>>>> 144 APOSTOLICAM >>>>> 14 ECCLESIAM >>>>> 2 CONFITEOR >>>>> 211 UNUM >>>>> 21 BAPTISMA >>>>> 212 IN >>>>> 212 REMISSIONEM >>>>> 2121 PECCATORUM >>>>> 9 ET >>>>> 3 EXPECTO >>>>> 31 RESURRECTIONEM >>>>> 311 MORTUORUM >>>>> 39 ET >>>>> 32 VITAM >>>>> 3211 VENTURI >>>>> 321 SÆCULI >>>>> AMEN >>>>> ---------------------------------------------------------------------- >>>>> For information about J forums see http://www.jsoftware.com/forums.htm >>>>> >>>> >>> ---------------------------------------------------------------------- >>> For information about J forums see http://www.jsoftware.com/forums.htm >>> >>> >> ---------------------------------------------------------------------- >> For information about J forums see http://www.jsoftware.com/forums.htm > >-- >Met vriendelijke groet, >@@i = Arie Groeneveld > >---------------------------------------------------------------------- >For information about J forums see http://www.jsoftware.com/forums.htm > > ---------------------------------------------------------------------- For information about J forums see http://www.jsoftware.com/forums.htm