On Wednesday, 16 April 2014 at 09:10:47 UTC, Sönke Ludwig wrote:
Am 16.04.2014 11:05, schrieb Chris:
On Wednesday, 16 April 2014 at 08:21:37 UTC, Bienlein wrote:
On Tuesday, 15 April 2014 at 19:19:00 UTC, Jordi Sayol wrote:
El 11/04/14 12:10, Walter Bright ha escrit:

but hey, now we have D.

Yeah, I like D far better than Java.

+1000

So do I. But for Java there is Hibernate, Hadoop, Cassandra, DI, JSF,
JMS, JTA, SOAP, REST, vert.x, Quartz, web servers, application
servers, various NoSQL-DBs and I don't know what. As you most often need some of those things in enterprise computing I'm pretty much
bound to Java.

There are a number of job adds for Go developers (see
http://golangprojects.com). Go seems to be a good complement for Ruby, Python, PHP which are slow and have bad concurrency. Then Go seems to appeal to companies whose product is some server-side application
(like some cloud offering or PaaS).

I believe D could also play well in this server-side arena like Go. Maybe with the FiberScheduler developed by Sean Kelly D can also offer
"dead-simple" concurrency and be appealing to developing cloud
solutions or other style of server-side applications for which easy
concurrency is a big plus.

-- Bienlein

I use vibe.d for a small server side application. It's quite fast, although we haven't tested it on a larger scale yet. On the downside, vibe.d's API is not quite intuitive, so it takes a while to get used to it. But that might be down to the fact that it's not easy to write an intuitive API for the web with all the different bits and pieces that
have different logics to them.

Are there any particular things that you could list from the top of your head? Making thinkgs as clear and simple as possible is one of the prime goals, but sometimes there are unfortunately compromises necessary in the name of performance or safety.

I will report them as soon as I come across one (I'm not working with vibe.d at the moment). Off the top of my head I found the Json method "get" a bit strange

j["name"].get!string == "Example"

i.e. that you have to convert in this way. I expected string type to be the default, i.e.

j["name"].get() or get(j["name"]) without explicit conversion. Part of the "difficulties" I encountered was that the user has to click his/her way through all the structs etc to get to the point. E.g. if you go to

http://vibed.org/api/vibe.data.json/

you hear about "get", and if you want to know more about get, you have to go to

http://vibed.org/api/vibe.data.json/Json

to read about it in more detail. And then you have to click on "get" if you want to see the method's signature.

If you have to look up many things at the same time (as you would, when you build a server infrastructure), you have to go back and forth a lot, in many tabs in your browser, and I sometimes just lose track of where everything was.

Reply via email to