On Tuesday, 19 June 2018 at 14:42:20 UTC, Russel Winder wrote:
On Tue, 2018-06-19 at 13:43 +0000, Anton Fediushin via Digitalmars-d wrote:

[…]
I'm not quite sure constructive critique is possible in this case. It's just a bad piece of code poorly implementing something that is a part of the vibe-core.

Constructive criticism is always possible. The second sentence followed by a paragraph or two providing evidence as to why and what is better,would be ideal.

Thanks, maybe I'll try and write something as constructive as possible.


A hidden agenda here is to get C++ people to ignore all the C++ offerings and use D/vibe.d instead. That a crap example has been posted should be ideal material to get stuck in to the technical marketing.

Using C++ sometimes can be a bad idea. Using C++ for web is always a bad idea. Can't agree more, D is a great language by itself and there are smart people working on it. The only thing missing is somewhat good marketing for all of that.


1. It has something to do with lynx, curl works flawlessly
2. Writing HTTP manually is somewhat painful. Request should look
something like this:

$ echo -ne "POST / HTTP/1.1\r\nHost: localhost:8080\r\nContent-Length: 3\r\n\r\nHey" | nc localhost 8080

3. There's `pipe` function in `vibe.core.stream` which does exactly that. I haven't looked at its code but I'm pretty sure it's far more efficient than byte-by-byte approach:

```
import vibe.d;

void main() {
        auto settings = new HTTPServerSettings;
        settings.port = 8080;
        listenHTTP(settings, (req, res) {
                req.bodyReader.pipe(res.bodyWriter);
        });
        runApplication();
}
```


This is clearly getting well stuck in to the task. Can I suggest finishing this off and sending it to s...@accu.org

I will try and do so. I can't see a reason to not give it a try. I'd like more people to participate. Maybe then we'll see more D in the Code Critique.

Reply via email to