BDNradio: ECO II in Delphi 2005 with the ECO Team

By: John Kaster

Abstract: Read the chat log and listen to the replay of the live audio interview with the ECO team on the new features of ECO

ECO Team chat

Listen to the audio replay.

This is a log of the chat room during the live audio chat from February 1, 2005 on Delphi 2005 with the ECO Team. They discuss ECO support in Delphi 2005.

Note: This log is only the chat room transcript. There is much additional information covered in the audio replay that is not available in this chat log. For all previous and upcoming live chats, see

VIP Lounge

aohlsson: Feel free to ask any ECO related questions using the /ask command or the "ask" button.
jkaster inserts the following link:
jkaster: additional information on ECO
jkaster inserts the following link:,1420,50002,00.html
jkaster: various articles and animations on ECO
jkaster inserts the following link:
jkaster: eco team blogs

jkaster: mrpmorris: "Many people in the newsgroups have been asking about a Delphi 2005 release of Bold. Do Borland have a timeframe for releasing it?" - We do have a prototype of Bold working in Delphi 2005. We still have to resolve how to make that available.

jkaster: Delphi64: "Can you speak to your evaluations of ECO performance? Does it scale well in "high-traffic" scenarios. Say, internet related activities, where there might be many "hits" on the database?" - We have been doing some performance measurements, but nothing conclusive yet.

jkaster inserts the following link:
This is an ASP.NET web site powered by ECO 2

jkaster: jthurman: "I found the initial learning curve for ECO to be very steep, and the documentation less than helpful. Pete had to explain things to me to get me started. Do you intend to provide resources to help ECO neophytes get started?" - yes, as much as we can

jkaster: JoeH: "How much of the OCL does ECO2 implement ?" - OCL is a query language, or expression language, on top of UML models. It's a navigational language. Most of the OCL spec is implemented. There are things in OCL 2 (we were on the design committee for that specification) that have not been implemented yet. But 85 - 90% of the spec has been covered.

jkaster: LizR: "are you planning to make more tutorials on how to use eco, and as suggested in the news groups with the avi movies of you guys doing things so we can watch and learn?" - Yes

jkaster: davidi: "If it wasn't already asked - how would the team suggest that D7/Bold apps be migrated to ECO?" - It's not easy. There are things that can be migrated easily, such as the model. There are some newsgroup posts about a tool that helps with doing this. When the application needs to be ported, a lot of the business logic would translate fairly well, but the framework is very different in ECO when compared to Bold.

jkaster: LizR: "Is there any hope you will make an ECO version for win32 so for those of us who havent dabbled or dont need to dabble will be able to use even some of the functionality ?" - The current ECO implementation uses quite a lot of the features of .NET. Porting it to Win32 would require a lot of changes.

jkaster: JoeH: "Can 'shadow copying' be safely used with eco2 ?" - I don't know enough about this to answer it well.

jkaster: RobLove: "Any plans to implement a OCL Browser against your current model/db? (Similar to SQL Window for Database Access)" - yes, that's something the ECO space debugger should address

jkaster: davidi: "Will ECO support Microsoft's announced "ObjectSpace" Does ObjectSpace==EcoSpace?" - First of all, ObjectSpace has been pushed into the future for several years. It's primarily an O/R mapper. ECO does more than that.

jkaster: mrpmorris: "Are there any plans to make the EcoServices etc more accessible to third party developers?" - yes and no. We're always trying to improve the architecture for making things more accessible.

jkaster: jthurman: "I know there are a couple of third-party tools for ECO. Is there a reasonably comprehensive list of them anywhere?" - Not that I know of. But that's something we should do.

jkaster: mrpmorris: "Any plans to release a tool for quickly testing models, like the product BoldSoft used to have named "ModelRun"?" - No current plans for this, but there are features of the ECO framework that can do this.

jkaster: JoeH: "What, if any, features are unavailable using an ECO2 persistence db mapper instead of a bdp driver ?" - There are a couple things you can't do if you write your own persistence mapper. You can't use the design-time support for create or evolve database, but you can still do it at runtime.

jkaster: jthurman: "speaking of which, how WOULD one connect an ECO model to MySQL?" - Jonas: One would read my article on how to do it.
jkaster inserts the link

jkaster: jkaster: "Any tips for building an ECO ASP.NET application that handles large sets of data?" - The first handle for selecting data should be an OclPSHandleto limit your selection set.

jkaster: CraigF: "If/when there is Bold for D2005 will there be a means to share the Bold model with ECO .NET?" - Other than what we've already discussed, no.

jkaster: mrpmorris: "Is there any way to tell the EcoSpace to unload objects if they haven't been used for X minutes?" - Currently, no

jkaster: I'll fix errors in transcript later
jkaster: Delphi64: "Can you talk about your future plans for ECO?" - We are looking into more O/R mapping functionality. We're looking at .NET 2.0. We're looking at UML state machines/diagrams.

jkaster: livechat: "What is the final ECO number currently on the roadmap? ECO-IV?" - From our point of you, we're just looking at technical capabilities, not release versions.

Public chat

Welcome to the moderated Borland Community Chat!
You are allowed to speak freely with everyone in this lower window. In the upper window you'll find all messages written by moderators and invited speakers.

mrpmorris: Hi guys
Woof: WOOF
RobLove: Hi Peter
RobLove: Oh and you up top too ;-)
LizKimber: ok thats a bit better.. not much :)
mrpmorris: Hi Jan
LizR: Interesting choice of music
LizR: :) if its playing elvis.. Im there
jthurman: Hey Pete. I figured you'd be here. :)
mrpmorris: Well, you know, just keeping up the numbers :)
jthurman: Of course
jonneve: Hi all
mrpmorris: I'm really quite bored of those Delphi 64 bit compiler threads on the newsgroups
jthurman: I'm just here for the music.
jthurman: Hey Robert.
RobLove: hi
mrpmorris: It's a bit like going on holiday in your car and having children in the back repeatedly saying "Are we there yet?"
LizR: Me too those 64bit ones have gone on a while
LizR: hehe, Id trade you for a dog who whines from the instant you put your coat/shoes on
mrpmorris: I'd like to see ECO for Visual Studio :)
JoeH: nice job Pete on your ECO website
jthurman: "Good afternoon, good evening, and good night!"
LizR: sounds good from the UK :)
jthurman: Anders: Sounds fine in Illinois.
RobLove: Utah is choppy but that is network problems here :-(
mrpmorris: Love OOP, hate RDBMS, use ECO :)
mrpmorris: I have 10 EcoSpaces in my pool on - they all stay in sync just fine
mrpmorris: Is he dead? :)
Delphi64: ouch
LizR: did he fall off the chair?
mrpmorris: Slippery wooden floors :)
Delphi64: big strapping lads. little chairs
JoeH: Pete do you also use the mapper pooling ?
LizR: I had nice man trying to sell me food at the door so I missed a fair bit
mrpmorris: Joe yes
mrpmorris: ASP.NET is single-process so I only needed to set SyncActive = true
JoeH: cool
jthurman: Pete made it into the top frame! :)
mrpmorris polishes his knuckles :)
mrpmorris: 125,000 page hits in Jan for
JoeH: i am still low on the steep learning curve :)
jthurman: There needs to be "I just clicked 'New ECO Application,' now what?" on BDN.
mrpmorris: ECO is doing just fine :)
jesper: I am!
LizR: There needs to be a "Hmm my " New eco application" option is missing how in blazes do I get it back thing :P
mrpmorris: The Grid handler code in ASP.NET was new
mrpmorris: Hi Jesper
jesper: Hiya dudes. I'm not on audio, though.
jthurman: ECOSpace debugger -> neat!
mrpmorris: You type out what is new, David I can read it out :)
JoeH: jesper much thanks to you and Jonas for helping NexusDb get a db mapper going :)
jesper: You're welcome. I heard you're releasing it in the product?
JoeH: i am just a user - but yes they are
jesper: Ocl specs:
mrpmorris: Didn't you guys write the OCL spec?
JoeH: "Object Constraint Language" by Warmer & Kleppe is helping me figure all this out :)

Editor's note: This is either this book or that one (I think)

jesper: Well, we we're in the committee for v2.0 - after our success story of 1.x implementation.
drbob42: I wrote an ECO 2 tutorial, but it hasn't been published on the Borland website, yet.
LizR: cool
mrpmorris: drbob, how long has it taken so far?
JoeH: cool Dr Bob !
jesper: bob; it's almost as cool as writing the specs :)
LizR: Im an eco virgin so.. I need lots of tutorials till I find the one that means something
drbob42: I submitted the material in nov or dec last year if I remember correctly.
drbob42: One of six tutorials - the first one was published last month (on migrating to .NET)
drbob42: the tutorial is in fact about ECO 2 and ASP.NET - very cool stuff ;-)
JoeH: i hear an eco :)
LizR: sigh.. I need a bigger box to type my question in.. coz I cant read all of what I type before I press send hence miss some of the words
jesper: Use notepad and paste it in.
LizR: good point
Delphi64: JK, your'e doing a good job with the questions!
jthurman: We respectfully disagree.
mrpmorris: A balance between a brickwall and Bold would be nice :)
Delphi64: ouch
mrpmorris: Bold was too open
Delphi64: NexusDB Mapper is good!
jthurman: The comment that "some things are meant to be difficult" concerns me.
Delphi64: Yeah first girl friend was like that...
mrpmorris: Jacob, from what I know, this was intended to keep the learning curve more shallow
mrpmorris: If you think ECO is hard to learn without documentation try Bold :)
jthurman: How does "meant to be difficult" make a learning curve more shallow?
Delphi64: my experience as well, oh your talking about ECO
RobLove: The PMapper layer is very extensible.
mrpmorris: jthurman, 1 way to do something rather than 10 :)
Delphi64: (i wissh they'd stop mentioning peter morris...)
jesper: Y'all: Send me your contributions and I'll host the list - at least for a start.
mrpmorris: Delphi64, I wish people would stop mentioning Delphi 64 bit compilers :)
mrpmorris: Hi Joe :)
Delphi64: we need a BDN chat with Peter Morris
jesper: Hi Joe.
JoeOtten: Hi guys
Delphi64: ooh, tough question
LizR: :)
mrpmorris: Delphi64, well, I am available for consultancy you know :)
mrpmorris: I would much rather use WebServices
Delphi64: Let me know when you a REALLY capable of TEACHING ECO.
JoeH: JK: we need those third party BDP guidelines published ! :)
mrpmorris: Delphi64, ready, steady, now
Delphi64: (not saying that you aren't ready)
Delphi64: ok
jthurman: Haha. Good answer! :)
mrpmorris: Delphi64, I've been working with Bold since 2001, and ECO since it was released
Delphi64: yeah, but I asked if anyone was available to teach ECO last year and I got ... silence
mrpmorris: You didn't ask me :)
JoeH: put a link in your blog please
Delphi64: you were still doing Bold at the time, I believe
drbob42: Delphi64: are you close to The Netherlands?
Delphi64: I'm in Wash. DC...
drbob42: Well, if you're ever around, I do regular training (as well as custom classes) - including on ECO
Delphi64: hm... Info on you website Dr. Bob?
drbob42: as wellas (in Dutch) and
mrpmorris: I found that using the OCL "subsequence" command was much more productive
mrpmorris: I'll make the source for available to anyone who wants to read it
CraigF: John K, that's OclPs no?
JoeH: can we have a second ECO2 bdn chat soon ?
LizR: You guys always run out of time :)
teechart: Mr.P, do you have any example to help me implement a TChart control for ECO ?
mrpmorris: teechart, I have never used TChart
JoeH: I was hoping to use tchrt in ECO - glad you are here !
teechart: Well, it's basically like a grid control
jesper: hey!
livechat: O/R Mapping... Interesting....
JoeH: let me know if you need a beta tester
JoeH: i have the .net tchart
mrpmorris: teechart, I would guess that if it supports normal .net databindings then it would work
mrpmorris: That was quite a lot of questions
JoeH: i hve 5 more questions :)
mrpmorris: JoeH, email me or get me on MSN :)
LizR: John needs to feed his spamchecker some happy pills :)
JoeH: ok Pete !
jesper: Use the newsgroups for more questions!
Delphi64: good job.
LizR: Aye thanks for nice chat
JoeH: OK, thanks Jesper
mrpmorris: Or post in the NG's ofcourse :)
JoeH: thanks for the chat !
teechart: thanks ! bye !
livechat: Thank you!!!
jesper: Thanks John + team!
mrpmorris: Thanks, good session
LizR: Take care guys, gonna watch me some naff tv now

Server Response from: ETNASC01