(Prolog + LISP + Erlang) with integration issues versus C++
Sun Sep 4 17:26:59 CEST 2005
It sounds regretful, yet from your initial post it looked like the
managerial decision had already been made influenced by recommendations
outside of your technical team. It is very difficult to steer
management decision in the right direction, unless you have a lot of
respect from them or a lot of money (and/or reputation). Otherwise all
you have left is to abide their rules.
From the statements below it is clear that the decision was made by
people who were never involved in maintenance of medium/large projects
developed in C++, and therefore they didn't realize the cost of the
infrastructure needed to support such projects.
Others may have a different view on this, but in my opinion the main
weakness in C++ development is not so much the cost of development but
the cost of maintenance. It is rare that the same people who developed
the system in the first place (and hopefully followed some uniform
coding standards) will be assigned to support the product. As your
product evolves and you need to support more platforms the cost of
finding bugs in C++ code is high, and eventually the code will evolve to
be unmanageable, and it'll take a lot of time (and money) for a new
developer introduced to the team to comprehend the system and be useful.
On the other hand I don't know the details of your project, perhaps it
is small, in which case C++ could be a suitable language. Yet in any
event, from the management point of view it doesn't sound wise to
completely ignore the opinion of their employees. If they only allowed
you to make certain development choices, your team would be much more
enthusiastic about solving the problem, and be rewarded by having
Dev Functional wrote:
> Hello all
> I would sincerely like to thank all of the people who responsded to my mail.
> Here are the details of the discussion and decisions made.
> 1) It was pointed out that while each language will have merits and strength,
> however, together they would have both interop (performance) and
> 2) It was stated that it is better to fight with the nuances of one language,
> rather than drool on the strength of each of them independently and
> then face licensing issues, interop issues, performance issues, support
> issues , not to speak of the maintenance.
> 3) It was pointed out that today even Ericcsson does not use Erlang for its
> new product development. Why ?
> 4) The following products of Ericcsson are written in C++
> distributed RAM database, the base for the TSP application
> server platform
> TDMA-CDMA HLR
> GSM-TDMA-CDMA mobility gateway
> AAA server.
> 5) It was pointed out that clisp has GPL licensing and no money should be
> wasted on acquiring software licenses (eg. Franz)
> 6) It was pointed out that Prolog, CLISP are themselves interested in C !
> So, if there is a smart idea present eg. backtracking, we can see the
> implementation and use it in the code. There is no need to take
> the complete
> load of the language, since we don't want all the features any way.
> 7) RPC and message passing related weakness in Erlang can cause security
> vulnerability issues.
> 8) High performance in computation, high responsiveness in network i/o,
> aync and disk i/o is mandatory.
> The performance slide related to yaws was mentioned and the management
> wondered why the world hasn't moved on to yaws by ditching
> oh-so-slow Apache ?
> 8) The management has decided to organize 4 week long formal rigorous training
> in C++ and Template Programming. There will be sessions in competency
> building in tools like gprof, gdb, g++4, gcc4 etc.
> 9) The decision has been taken by the management and the tools to be used are
> - C++ (user land), g++4
> - C (kernel land) gcc4
> - STL
> - Boost Library
> There is no license fees to be paid to anybody.
> 10) All storage related standards have types defined in C and it makes sense
> to have the programmatic representation as close as possible to
> the standard.
> 11) The management also highlighted that if the languages so far used
> were so great then the capitalists would have grabbed them up
> long time ago
> and made lots of money by now by developing and selling products.
> So, either the capitalists are fools or the current development team !
> It was also pointed out that Google does lot of work related to
> retrieval, inference, distributed computing over thousands of
> compute nodes
> but does not use Erlang ! Why ?
> In the final analysis, the project will proceed with the above made decisions
> and I will need to abide by these decisions if I am to keep my job.
> Once again thanks to all the people on this list, who tried to help me out.
More information about the erlang-questions