After reader Bjorn's post, I felt a bit guilty thinking that I'm doing a disservice to J.
You see, in my working environment, J is not the primary resource skill set. So my mindset is that we incorporate J into our enterprise system in a very specific way. So me saying we should not build a whole system using J is just plain wrong. Wrong because I am setting "limits" to what can be done using J and suggesting it to other people, particularly newbies who may be able to accomplish more than what I can envision if they have not known the "limits". So to Scott, maybe you should give it another thought. -----Original Message----- From: [email protected] [mailto:[email protected]] On Behalf Of Björn Helgason Sent: Friday, June 11, 2010 4:10 AM To: Programming forum Subject: Re: [Jprogramming] Feasibility of mid-size client-server databases in J versus, say, Java+SQL? 2010/6/10 Stefan Scott Alexander <[email protected]>: > I'm hearing from other people on this thread (for example, Alex Rufon) > that J might not be very good at transaction-oriented or record-based > processing, Just to make it clear. You can read a file one character at a time. You can make operate on one record at a time. Just that you can do it is not to say you should or should not do it. It is only a question of what you want to do and what your options are. Lets say I have a really large file and I want to find and change a few characters in the file. Say we have a file a and it has 500.000 records each 10 characters long and I want to change one line (10 characters) in record number 367.435 a) You could read the whole file into your work are one character at a time. b) You could read 10 characters at a time. c) You probably would not be able to read the whole file in one go into the work area. d) You could map the file as 500.000 by 10 matrix and J could then replace the line with one quick operation. All of these options you could try but the last one (d) would take a lot less time than a and b and c would probably not work in all instances and you might run out of memory. So it is a question of what you know how to do and what you try to do. I other programming languages you might try a) or you might try to use pointers and do something like d) and if you are not careful you may get the pointers wrong (a very common bug in some other languages) in J the pointers are handled by J for you. So the question is more what do you know and not what J can do. It is also possible to extend J and call external routines. You will probably find that your first system will not be optimal and you will probably be able to improve it many times over. It is often fun to see some example sent in here to the forum. Often the code gets enormous speedup and very often most of the code more or less disappears. Do not worry about it because most of us have been doing not so smart first (or more) attempts. -- Björn Helgason, Verkfræðingur Fornustekkum II 781 Hornafirði, t-póst: [email protected] gsm: +3546985532 sími: +3544781286 http://groups.google.com/group/J-Programming Tæknikunnátta höndlar hið flókna, sköpunargáfa er meistari einfaldleikans góður kennari getur stigið á tær án þess að glansinn fari af skónum /|_ .-----------------------------------. ,' .\ / | Með léttri lund verður | ,--' _,' | Dagurinn í dag | / / | Enn betri en gærdagurinn | ( -. | `-----------------------------------' | ) | (\_ _/) (`-. '--.) (='.'=) ♖♘♗♕♔♙ `. )----' (")_(") ☃☠ ---------------------------------------------------------------------- For information about J forums see http://www.jsoftware.com/forums.htm ---------------------------------------------------------------------- For information about J forums see http://www.jsoftware.com/forums.htm
