Where will D sit in the web service space?

ChangLong via Digitalmars-d digitalmars-d at puremagic.com
Sun Jul 12 21:29:20 PDT 2015


On Sunday, 12 July 2015 at 12:14:31 UTC, Ola Fosheim Grøstad 
wrote:
> I've been thinking a bit about where languages fit in the web 
> service space. Both mobile app and web services are likely 
> candidates for typed and efficient languages. I'm not at all 
> happy with the "prolific" choices that are available. Yet, D is 
> currently not in a strong position for mobile apps or web 
> servers. So what does the competition look like?
>
>
> JAVA is big and a strong player, but also heavy and resource 
> demanding. I don't consider it for my use due to the resource 
> requirements. I want something more nimble.
>
> - Java is for those who already have invested in the language 
> or need a framework written in it.
>
>
> C# plays in the same category as Java, with the additional 
> "Microsoft" taint (for good and bad).
>
> - Like Java, C# is for those who need integration with 
> Microsoft products.
>
>
> GO is nimble, but the language is a bit annoying. On the good 
> side it has a low latency GC, but with a performance penalty. 
> Google are now also fully supporting Go on Google App Engine 
> (together with Java and Python)
> https://sourcegraph.com/blog/live/gophercon2015/123574706480
> https://groups.google.com/forum/#!topic/google-appengine-go/as9wUqT77YU
>
> - Go is an alternative for those who want to write a light 
> server from scratch and/or integrate with Google Cloud. It has 
> a very quickly gained a lot of web related frameworks and 3rd 
> party APIs.
>
>
> RUST was never meant for the web servers, but people seem to 
> have taken to writing frameworks for it lately. Rust is like Go 
> a bit annoying, but with some strong non-GC semantics.
>
> - Rust is difficult to place, but seems like an emerging 
> TCP/HTTP alternative where better-speed-than-GC is a 
> requirement. Might become an alternative to C++/Java for 
> game-servers?
>
>
> C++ offers everything needed, but unfortunately writing safe 
> code in C++ is tedious and difficult.
>
> - I'm not really sure why anyone would want to write a server 
> in C++. Seems like a "last resort" language for this purpose. 
> What you fall back on when the alternatives don't cut it, or 
> don't integrate with required libraries, at the cost of 
> development time.
>
> HASKELL is used to some extent. In theory a functional language 
> should be a perfect match for a web service, but is it? Not 
> sure, but I am not likely to use it for web programming for the 
> same reason I would not choose C++. I am afraid it will become 
> tedious.
>
> PONY is an upcoming actor based, non-GC language that might be 
> worth watching. Not production ready, a fringe language, but 
> the actor based programming model might be suitable.
>
> Maybe you know some other statically typed languages worth 
> mentioning?
>
> To me it seems like C++ and Rust are the most likely targets 
> for D to compete with. Yet, to me those languages are on the 
> fringe of web-service programming. More suitable for 
> specialised services like image rescaling or game servers.
>
>  Java, C# and now Go seems to have strong infrastructure 
> advantages that makes them difficult targets. They all have 
> integration advantages not provided by other languages.
>
> What do you think about the future for D in the web service 
> space?


I has use vibe.d for a small project recently,  after finish that 
I think the follow fact will 	
prevent many programmers use vibe.d in commercial projects:

1) Lack of successful open source project for real product
2) Multi thread performance is poor, scalability is not suit for 
big project
3) No Inversion of Control (aka: Dependency Injection) Concept
4) No mature ORM/ODM components
5) No Form/Validator/Translation/Locale Components
6) No modernize framework

Some company has successful story in D use no-GC solution, for 
example: Sociomantic,  Hedge Fund by Andy Smith,  weka.io...  And 
they all are close source.

There are thousands of web projects in development every day,  D 
is not use as development languages mainly because D is not ready 
yet.






More information about the Digitalmars-d mailing list