May 08, 2020
On Friday, 8 May 2020 at 06:41:59 UTC, Jan Hönig wrote:
> On Thursday, 7 May 2020 at 05:04:12 UTC, zoujiaqing wrote:
>> On Wednesday, 6 May 2020 at 22:28:28 UTC, Dukc wrote:
>>> [...]
>
> I have a somewhat stupid question. I asked it on reddit, but I got no answer there.
> I haven't done much with web or networking in general until now, thus excuse my ignorance.
>
> What is the difference between hunt and vibe-d?

hunt and vibe-d are different libraries, different code base, no dependencies between them two. If you use the Hunt Framework you also get a lot more functionality for web development than just the basics.

vibe.d mostly just provides the basics with a few extra convenience things a framework would offer.

Hunt Framework on the other hand seems like it has been created especially for big projects in mind with dependency injection, MVC and some other common coding patterns.
May 08, 2020
On Friday, 8 May 2020 at 06:41:59 UTC, Jan Hönig wrote:
> On Thursday, 7 May 2020 at 05:04:12 UTC, zoujiaqing wrote:
>> On Wednesday, 6 May 2020 at 22:28:28 UTC, Dukc wrote:
>>> On Friday, 1 May 2020 at 10:54:55 UTC, zoujiaqing wrote:
>>>> [snip]
>>>
>>> Thanks, but: Some of the files have Apache license, but some have none. I think you should add a license to the whole repository that would cover those files that don't have their own.
>>
>> OK, thanks ;)
>
> I have a somewhat stupid question. I asked it on reddit, but I got no answer there.
> I haven't done much with web or networking in general until now, thus excuse my ignorance.
>
> What is the difference between hunt and vibe-d?

I can say anything about hunt, but vibe-d is three things:

1. https://github.com/vibe-d/eventcore
This is the core of it and gives you a proactor for async programming with callbacks. Instead of a blocking 'write(data)' call you do 'write(data, dlg)' where dlg is a delegate that is called once the write has finished.

2. https://github.com/vibe-d/vibe-core
Writing non-trivial programs with a bare proactor quickly leads to callback hell. Far easier is to hide the callback behind fibers. This is what vibe-core does. Everything runs as a fiber, which gets suspended on call to eventcore's async interface and is automatically resumed after the async call finishes.

3. https://github.com/vibe-d/vibe.d
This implements stuff that's useful for web programming on top of 2. HTTP, WebSockets, databases, serialization, stuff like that.
May 09, 2020
On Friday, 8 May 2020 at 06:41:59 UTC, Jan Hönig wrote:
> What is the difference between hunt and vibe-d?

Hunt and Vibe are important series frameworks in D language ecology, but there is no connection between the two frameworks.

 1.hunt library (https://github.com/huntlabs/hunt) contains the abstraction of cross-platform network io, as well as functions such as binary serialization and json object binding. ( hunt library is currently the best performing network io in D languages.)

 2.hunt-net (https://github.com/huntlabs/hunt - net) is a network protocol library based on hunt library implementation that contains abstract encoder and decoder support.

 3.hunt-http (https://github.com/huntlabs/hunt - http) is a hunt-net implementation-based http library that contains both http1.1、http/2 and websocket support and powerful HttpClient implementations.

 4.hunt-database (https://github.com/huntlabs/hunt - database) is an abstraction of a database, and the bottom layer also uses hunt-net for network communication. the protocol parsing part of PostgreSQL and MySQL two databases is realized completely using the language of D, which includes the implementation of asynchronous operation interface and database connection pool.

 5. hunt-redis (https://github.com/huntlabs/hunt-redis) is a redis client implementation that sends and receives network data based on hunt-net and also supports connection pooling.

 6.hunt-amqp (https://github.com/huntlabs/hunt-amqp) is a amqp 1.0 implementation, mainly let D language native support RabbitMQ, network layer is also based on the creation of.

 7.hunt-entity (https://github.com/huntlabs/hunt-entity) is a ORM implementation, similar to php doctrine2 and java JPA..

 8.hunt-framework (https://github.com/huntlabs/hunt-framework) is currently the most fully functional web framework, in the language close to practical frameworks such as springboot、laravel、django, built-in template engines like jinja2 and twig, just through the configuration file to make the entire framework run smoothly.

  One of our demo projects is a forum project called `dicoth`, which is based on hunt-framework. Of course, this project is currently a sample code, but it doesn't prevent you from seeing how hunt-framework use it, project address (https://github.com/dicoth/dicoth).

 Summary: HuntLabs entire hunt framework-related ecosystem contains most of the tools needed for the server, but also draws on a lot of excellent content from languages such as java and php, hoping that the D language can occupy part of the server market.

May 09, 2020
Thanks everyone for the clarification!
May 11, 2020
On 2020-05-09 09:02, zoujiaqing wrote:

> ( hunt library is currently the best performing network io in D languages.)
Would be interesting to see how Hunt and Mecca [1] compare. Mecca is quite a basic library, compared to Hunt. It doesn't support anything more high level than TCP sockets.

http://github.com/weka-io/mecca

-- 
/Jacob Carlborg
1 2
Next ›   Last »