Pretty nice 3d modelling app from a guy who worked for Alias | Wavefront when they were a real company ! Looks good, (in fact, the screenshots on the website don't do it justice so don't be misled), has an Irix executable available. It's a few versions back from the Linnix one but maybe with some encouragement ...... download 'er, see what you think. Maybe we can twist his arm ...

I've had it on my Linux box for years but never get to use it since I've got Maya on my Octane2. The author has some really interesting things to say about C99 with respect to C++, little of which I agree with but interesting nonetheless...

Project:Temporarily lost at sea...Plan:World domination! Or something...

vishnu wrote:The author has some really interesting things to say about C99 with respect to C++, little of which I agree with but interesting nonetheless...

I agree with much of what he's saying, basically the C++ object model is not very good at providing binary compatibility over time for modules compiled by different vendors. It suffers from from the "fragile base class" problem, Objective C suffers a similar problem, change the size of a parent class by adding a field and you break existing compiled descendents. Also naming mangling is not consistent between compilers. If you are exporting C++ entry points you are asking for trouble.

People who write software intended as parts of a collaborative effort need to cooperate on picking an ABI (application binary interface). For the fragile base class problem, the solution is to code to an interface rather than to a concrete base class. C++ has always stressed the importance of hiding implementation details, yes? Bjarne is no dummy...

Project:Temporarily lost at sea...Plan:World domination! Or something...

Does nobody appretiate the irony of the recommended solution to C++ weaknesses is to pretend to all code outside your compiled module that you are not using C++ by only exposing a procedural interface?

One of the places Java and .NET have really succeeded is by being able to properly support object-orientated APIs at the binary level and supported directly by the compilers. You can take somebody elses JAR or assembly and just use it, and don't have to recompile even when they make major changes.

Well, the thing is - both Java and .NET for quite a bit of their initial life had "reference" compilers designed and maintained by the language creators - so those two had much better chance of ensuring that things are compatible within itself etc.And what matters the most - both J and .N are VM based - in theory this ensures the execution environment for your code is compatible regardless of platform... Try compiling something in .NET to a native machine code as library (if even possible) and then we can look at portability

C++ for a change ended (or rather started) up with a bunch of compilers - some different almost as if it were for another language (think GCC vs MSVC) - even though there was "one standard" the platform differences and other stuff made it difficult to follow. Add snowball effect and you end up with things that are not compatible anywhere beyond "hello world"..

kubatyszko wrote:C++ for a change ended (or rather started) up with a bunch of compilers - some different almost as if it were for another language (think GCC vs MSVC) - even though there was "one standard" the platform differences and other stuff made it difficult to follow.

The standard was at the source code level rather than the generate code or ABI, eg what a vtable would look like or what name mangling to use. The piece that was missing was an OO ABI. Both COM and SOM provided this but both stayed proprietary, but did allow object orientated software to interoperate at the binary level even in different languages. COM was the cheap and cheerful one that did not actually need a runtime but it's language interoperability failed for any C++ compiler that did not generate a vtable that matched COM's expectations.

In C++ as in any language the shoulda coulda woulda's are thick rich and delicious...

When asked what he'd change if he could have a Jave do-over, James Gosling reportedly said*, apparently tongue in cheek, that he'd leave out classes. You could argue that things like MSVC and KDE have been successful in spite of C++ rather than because of it. There's a good reason why libs like the STL and Boost are given away as source - ABI rules are twisted, for example with KDE: http://techbase.kde.org/Policies/Binary_Compatibility_Issues_With_C++ - but if you can follow them they usually work.

I dropped off a mid-spec Octane for the author last weekend - very nice fellow, enjoyed chatting with him and hope to see him again. His O2 had died for reasons unknown, which I believe is a large part of why the IRIX version is lagging. So, there may be a current version released for IRIX before too long (fingers crossed).

vishnu wrote:Did he say anything about when he might start considering releasing Equinox as source?

I think "never" would be the word you're looking for. There are several flossy 3d apps out there already, this is his baby and he wants it to look and work the way he wants it to look and work. I don't get the impression that dealing with shitforbrains Loonixites with a gtk2 obsession is in his dreams for a better tomorrow ....