Prev: The correct choice for implementation (was: A simple web clientlibrary)
Next: Solved Re: Emacs speedbar doesn't show .lisp and .asd files
From: Tim X on 11 Mar 2010 07:17 Alessio Stalla <alessiostalla(a)gmail.com> writes: > On Mar 11, 8:32 am, Tim X <t...(a)nospam.dev.null> wrote: >> >> P.S. If anyone knows of a CL library that will allow me to interact with >> an Oracle database AND allow me to call stored procedures, passing data >> in both directions and access ref cursors, *PLEASE* let me know - I >> would still prefer to use CL for these jobs over perl. > > If it's a viable option for you, you could use ABCL on the JVM and use > Oracle's JDBC driver. > Yes, I was thinking about that as a possible option. Don't know anything about ABCL and was hoping to stick with a familiar ANSI implementation such as SBCL or even CLISP. Don't know anything about the interface/mapping between ABCL and java libs and wsn't sure if I was going that route whether I would be better off just jumping into clojure as I've been thinking about finding some project to try it out. Is there much that would take getting accustomed to in ABCL that may feel 'foreign' and how ANSI compliant is it? thanks, Tim thanks for the suggestion Tim -- tcross (at) rapttech dot com dot au
From: ccc31807 on 11 Mar 2010 07:39 On Mar 10, 11:47 pm, Ben Morrow <b...(a)morrow.me.uk> wrote: > > WRT Perl, I agree that it's an ugly, convoluted, write once read never > > language, > > No. No No No. *Your* Perl may be, but don't tarnish the rest of us with > the same brush. It's perfectly possible to write readable Perl; indeed, > IMHO, it's wasier to write readable Perl (with a little effort) than > most other languages. Ben, I like Perl a lot, and I've developed enough proficiency in Perl to do useful work and earn a living with it. I said this with my tongue partly in my cheek, and without meaning to give reasons for avoiding it. People can consider Perl ugly with all the punctuation characters, just as Larry Wall can consider Lisp ugly with all the parens (his remark about Lisp looking like oatmeal with finger nail clippings.) The OO and reference hacks are also convoluted, with arrays and hashes only holding scalar values. This caused the convoluted assignment statements which you objected to, i.e., $hash{$anotherhash{$k}{'key}} ('realkey'}. If you keep your data structures in mind, it's easy to write these references without thinking, but hard to read them when the data structures are out of mind. In the thread on c.l.l. ("another frustrating learner question, CLOS") I wrote a fairly extended defense of REs, which was the original point of RG's complaint about Perl. REs are also ugly, convoluted, and write once read never bits of code, but they can also be beautiful, elegant, and perfectly lucid bits of code as well, and at the same time, too. This is one of the mysteries of life which we might as well accept, as we can do nothing to change it. CC.
From: Alessio Stalla on 11 Mar 2010 11:45 On Mar 11, 1:17 pm, Tim X <t...(a)nospam.dev.null> wrote: > Alessio Stalla <alessiosta...(a)gmail.com> writes: > > On Mar 11, 8:32 am, Tim X <t...(a)nospam.dev.null> wrote: > > >> P.S. If anyone knows of a CL library that will allow me to interact with > >> an Oracle database AND allow me to call stored procedures, passing data > >> in both directions and access ref cursors, *PLEASE* let me know - I > >> would still prefer to use CL for these jobs over perl. > > > If it's a viable option for you, you could use ABCL on the JVM and use > > Oracle's JDBC driver. > > Yes, I was thinking about that as a possible option. Don't know anything > about ABCL and was hoping to stick with a familiar ANSI implementation > such as SBCL or even CLISP. Don't know anything about the > interface/mapping between ABCL and java libs and wsn't sure if I was > going that route whether I would be better off just jumping into clojure > as I've been thinking about finding some project to try it out. The Java access API is derived from ACL's jlinker (http:// www.franz.com/support/documentation/current/doc/jlinker.htm). The notable differences are: - ACL's API assumes the JVM is a different process, while ABCL runs in- process, so it lacks all the functions for managing the connection with the JVM; and - ABCL's API has the option to be a bit less verbose, letting ABCL choose automatically the method to call from the argument types, at the cost of a runtime performance hit. For example: (jcall (jmethod "java.lang.Comparable" "compareTo" "java.lang.Object") instance obj) vs (jcall "compareTo" instance obj). There's also the JSS library maintained by Alan Ruttenberg which is even less verbose, has more features and is more efficient (wrt ABCL's abbreviated API). > Is there much that would take getting accustomed to in ABCL that may > feel 'foreign' and how ANSI compliant is it? It is mostly ANSI compliant; it lacks the long form of define-method- combination and fails 30-something tests from the GCL ANSI test suite (IIRC 21k+ tests). Compared to other, more mature implementations with a larger user base, it lacks a number of things that are usually taken for granted; for example, the MOP is incomplete, the debugger could be improved in many ways (e.g. it doesn't show local variable information), the compiler doesn't use type information very much, etc. Oh, and it's the only CL implementation I know of where = fixnums are not always EQ, due to boxing imposed by the JVM. hth, Alessio
From: Ron Garret on 11 Mar 2010 13:24 In article <hnadgc$id4$1(a)news.eternal-september.org>, Tim Bradshaw <tfb(a)tfeb.org> wrote: > On 2010-03-11 02:58:54 +0000, Ron Garret said: > > > And how am I supposed to know that if I don't know Perl? > > This whole "Perl is really hard to learn" thing you have going on is > kind of intersting. I mean, one would think you could test this sort > of hypothesis by looking at the number of people who learn it. Oh, > damn. You would think you could test this sort of hypothesis by looking at the number of people who learn it, but you would be wrong. C++ is clearly harder to learn than, say, Scheme, and yet I'm pretty sure that more people know C++ than know Scheme. Esperanto is easier to learn than Mandarin, and yet more people know Mandarin. rg
From: Martijn Lievaart on 11 Mar 2010 15:57
On Wed, 10 Mar 2010 16:41:27 -0800, Ron Garret wrote: > Why must those be the only possibilities? It was because the Perl code, > which had been working fine for months, suddenly started failing > silently and intermittently, and I was told there was no way to do the > equivalent of wrapping the whole script in the equivalent of a > TRY...EXCEPT form in order to catch the error. Whether this was in fact > true or whether the entire engineering team was incompetent I do not > know. But they seemed pretty bright and capable otherwise, so it would > be pretty odd for them all to be mistaken about this. If they didn't know about eval { original code here };, they were incompetent. But there were probably other factors at work you didn't tell about. M4 |