October 16, 2017
On Monday, 16 October 2017 at 09:31:51 UTC, Ecstatic Coder wrote:
>>> Btw, when I say you can actually develop complete web servers in Dart and Go just with the components provided in the standard libraries, I really mean it, even if I personally also
>>
>> I programmed in Go.
>> I also was part of Dart team for about a year.
>> So yeah, I know what you mean.
>>
>
> Ok, then please can you explain why you say about web development libraries that "it’s not standard in Go and Dart",

Web development for me is usually a fair bit more then:
Register a bunch of handler functions that do Http Request -> Http Response
( Go std lib cira 2015)

There is templating, routing, some kind of ORM (sick) / ODM / DAO, access-control, authorization, marshaling, these things.

I recognize some of these have simple versions in Go’s std lib like templates and json serialization.

My point is not that http server is not bundled but rather that for me “whole http server” would imply some backend work i.e. DB drivers and other 3rd party stuff.

Go projects I worked on pulled in a great amount of these. Too much I’d say. There is a package for everything in Go or so it seems.

> as you are probably the most informed person on that subject from the whole D community.
>
> For instance, the web server behind my personal web site is EXCLUSIVELY based on Go's standard library, nothing else was used...

I just double checked and yes, you can’t do SQL without database “driver” package.

So I’m really curious how you get by without it... Files/REST API?

>
> And moreover its code is incredibly concise and performant. Great job from Google engineering teams...

They have very nice runtime since around 1.6. Can’t agree on consie part, Go always looks verbose and repetative, a bit like Java 1.2. Dart also features quite capable JIT and runtime, in contrast to Go it’s quite concise but more high-level.



October 16, 2017
On 2017-10-16 09:45, Adam Wilson wrote:

> The most important SQL DB's all have high quality C libraries. Why not leverage those? 

If the drivers should be compatible with vibe.d the underlying C library needs to be compatible vibe.d's asynchronous event model. I don't know if they all (the C libraries) support asynchronous communication.

-- 
/Jacob Carlborg
October 16, 2017
On Monday, 16 October 2017 at 17:17:29 UTC, Dmitry Olshansky wrote:
> On Monday, 16 October 2017 at 09:31:51 UTC, Ecstatic Coder wrote:
>>>> Btw, when I say you can actually develop complete web servers in Dart and Go just with the components provided in the standard libraries, I really mean it, even if I personally also
>>>
>>> I programmed in Go.
>>> I also was part of Dart team for about a year.
>>> So yeah, I know what you mean.
>>>
>>
>> Ok, then please can you explain why you say about web development libraries that "it’s not standard in Go and Dart",
>
> Web development for me is usually a fair bit more then:
> Register a bunch of handler functions that do Http Request -> Http Response
> ( Go std lib cira 2015)
>
> There is templating, routing, some kind of ORM (sick) / ODM / DAO, access-control, authorization, marshaling, these things.
>
> I recognize some of these have simple versions in Go’s std lib like templates and json serialization.
>
> My point is not that http server is not bundled but rather that for me “whole http server” would imply some backend work i.e. DB drivers and other 3rd party stuff.
>
> Go projects I worked on pulled in a great amount of these. Too much I’d say. There is a package for everything in Go or so it seems.
>
>> as you are probably the most informed person on that subject from the whole D community.
>>
>> For instance, the web server behind my personal web site is EXCLUSIVELY based on Go's standard library, nothing else was used...
>
> I just double checked and yes, you can’t do SQL without database “driver” package.
>
> So I’m really curious how you get by without it... Files/REST API?
>
>>
>> And moreover its code is incredibly concise and performant. Great job from Google engineering teams...
>
> They have very nice runtime since around 1.6. Can’t agree on consie part, Go always looks verbose and repetative, a bit like Java 1.2. Dart also features quite capable JIT and runtime, in contrast to Go it’s quite concise but more high-level.

If you had tried my website you would have noticed that it's a static web site, so no SQL was harmed during its production ;)

And to be 100% honest with you, indeed I actually don't program in Go but in my own proprietary language which emits Go code from a syntax similar to my Phoenix language, hence the "concise" adjective.

(it's here if you are curious about it : https://github.com/senselogic/PHOENIX)

Additionally to the Phoenix-like syntax, Helix allows me to use Allman style, macro-based genericity (through multi-token substitution), which is nice, even if several Go fanatics have explained me in a not so kind manner how and why it would silly and useless to do that, as Go is already perfect.

(I had the same remarks from PHP coders for Phoenix btw).

But I don't care, it's my own personal language, and since one of Go's designed has decided to piss over me twice (guess who), I've decided to keep it for me and let the Go community program the way they want, i.e. by using slow-as-hell interfaces for everything or repeatedly copy-paste-modify the same lines of code...

And YES, despite their flaws, I still think that Dart and Go are by far the best web development languages we have right now, especially compared to PHP and JavaScript/Node.js.

October 17, 2017
On Monday, 16 October 2017 at 20:02:16 UTC, Ecstatic Coder wrote:
> On Monday, 16 October 2017 at 17:17:29 UTC, Dmitry Olshansky wrote:
>> On Monday, 16 October 2017 at 09:31:51 UTC, Ecstatic Coder
>
> If you had tried my website you would have noticed that it's a static web site, so no SQL was harmed during its production ;)
>
> And to be 100% honest with you, indeed I actually don't program in Go but in my own proprietary language which emits Go code from a syntax similar to my Phoenix language, hence the "concise" adjective.

I actually think that Go is quite an attractive _runtime_ to target. Sooner or later somebody should notice that too.

>
> (it's here if you are curious about it : https://github.com/senselogic/PHOENIX)
>
> Additionally to the Phoenix-like syntax, Helix allows me to use Allman style, macro-based genericity (through multi-token substitution), which is nice, even if several Go fanatics have explained me in a not so kind manner how and why it would silly and useless to do that, as Go is already perfect.

Yeah, the biggest disservice to Go community is a decent amount of blind fanatics.

>
> (I had the same remarks from PHP coders for Phoenix btw).
>
> But I don't care, it's my own personal language, and since one of Go's designed has decided to piss over me twice (guess who), I've decided to keep it for me and let the Go community program the way they want, i.e. by using slow-as-hell interfaces for everything or repeatedly copy-paste-modify the same lines of code...

Yeah, seen a lot of these. And then, of course, crude in-house codegen tools :)

>
> And YES, despite their flaws, I still think that Dart and Go are by far the best web development languages we have right now, especially compared to PHP and JavaScript/Node.js.


October 17, 2017
On Monday, 16 October 2017 at 14:14:50 UTC, Ola Fosheim Grøstad wrote:
> On Monday, 16 October 2017 at 13:49:50 UTC, Atila Neves wrote:
>> A std::shared_ptr going out of scope can pause the program for just as long as a GC mark-and-sweep.
>
> I don't use shared_ptr much, but why would a single shared_ptr be that slow?

It wouldn't.

It's when you have a shared_ptr to an object that has a shared_ptr to an object that has a ... (or unique_ptrs along the way).

I saw a paper on this once but my google fun is failing me.

Atila


October 17, 2017
On Friday, 6 October 2017 at 17:14:51 UTC, Rion wrote:
> https://www.quora.com/What-is-your-review-of-D-programming-language
>
> It seems that D still has the GC being mentioned up to today.
>
> Maybe its better to move the standard library slower to a non gc version in the future...

There is nothing wrong with having a GC however the issues are (IMO):
1.The current implementation of the GC.
2.Doing manual memory with classes in @nogc context is impossible (Destroy isn't @nogc as it called the finalizer function directly!)
3.Lots of things needed to work before -betterc is useful in c++ heavy projects.
The paranoia stems from java terrible GC implementation, it has gotten better over the years, but the damage has been already done in terms of reputation.
October 17, 2017
On Tuesday, 17 October 2017 at 10:05:23 UTC, Atila Neves wrote:
> It's when you have a shared_ptr to an object that has a shared_ptr to an object that has a ... (or unique_ptrs along the way).

Well, yes I've seen some online lectures/tutorials that use it for managing graphs and linked lists, but this is overkill in most cases. shared_ptr seems most suited for sharing resources over threads.

Although I guess you can get that effect if you use it for tracking cached objects in a database client or something like that.

Sounds more like a problem for people developing frameworks than for applications. Frameworks have to make the difficult trade off of whether they should roll their own or use a standard mechanism. End users often would prefer a standard solution I guess.





1 2 3 4 5 6 7 8
Next ›   Last »