![]() |
![]() |
![]() |
Impendance mismatch Hi all,
nil
Joel Spolsky
Forgive me, but what about FoxPro?
Gp
[rolling eyes]
Still waiting for LISP
I can't imagine anything much more ubiquitous than the JRE, upon which Groovy runs.
Jason Dufair
To *meaningfully* run Groovy on top of an Oracle-embedded JRE, the implementation of its runtime would need to be tightly integrated into the implementation of the Oracle database kernel. At that point, you've got a pretty interesting semantic mismatch going - either those Java frameworks or those pesky database behaviors are going to have to give...
Still waiting for LISP
But why the need to embed or run "on top of"? If you have a decent closure implementation, you run "alongside of" and with a decent persistent object framework, are off to the races. I think the "impedance mismatch" is between underpowered languages like Joel mentions (C#, Java, etc.) and getting work done efficiently.
Jason Dufair
If you are going to actually *do* something with the data within the closure, you're going to need, at the very least, a shared notion of datatypes and shared semantics for assignment (including things like whether exceptions can occur, synchronization for concurrent access, layout and overflow, etc.) And I believe that Joel's original post was suggesting much deeper integration, which would mean that the internal representation of tuples, constraints, etc. etc. would also need to match.
Still waiting for LISP
Joel's entire article (with the exception of one sentence) is about syntax. So I won't "go pure functional", but I will argue that the less syntax the language has, the less impedance mismatch there is. He even effectively concedes this point in his addendum.
Jason Dufair
Gili Tzabari
Why ru still waiting for LISP ?
James
Hmm. If it runs on Unix one would type
Well I thought it was amusing
I found an interesting discussion of the O/R impedance mismatch at http://www.agiledata.org/essays/impedanceMismatch.html . The way Scott Ambler describes it on this site, the impedance mismatch isn't between languages and RDBMSes so much as it is between the OO and relational *paradigms*. It's telling that the discussion doesn't even touch the topic of typing or query structuring. I'll avoid parroting his points, but I'll draw your attention to section 3, which I found the most enlightening. Also note that he covers a "cultural" impedance mismatch between the OO and RDBMS people- certainly an important consideration for enterprise software development.
Adam Glassman
Some discussion on the so-called impendance mismatch is here:
MR
"Programming with Circles, Triangles and Rectangles"
Isaac Gouy
|