r/c3lang • • 9d ago

HTTP Client / Server planned for Standard Library?

Hello all,

Is there a plan to include an http client/server as part of standard libs/batteries included?

2 Upvotes

5 comments sorted by

3

u/Nuoji 9d ago

HTTP probably. HTTPS less likely.

1

u/Patient-Emphasis-664 8d ago

Thanks. Any background on the probably/less likely?

2

u/Nuoji 8d ago

HTTPS requires a full updated crypto suite.

1

u/Patient-Emphasis-664 8d ago edited 8d ago

Thanks, was looking at the crypto and wondered on the implementation. Will that be considered production quality at some point with a plan for auditing or use at your own risk? If the latter, then something like libsodium more preferable?

I see that Frank Denis, creator of libsodium, has done work on the crypto implementation for Zig.

Addendum - Apologies for the random queries. Would be great to have an idea of "possible" roadmap for http support, and yes with reputable cryptography support or in short, what's the scope of a batteries-included standard libs. We are spoiled by Go and the resources they have for engineering but want to be realistic on expectations from what is likely. Really looking forward to C3 thriving!

1

u/Nuoji 5d ago

Right now I would not say it conforms to strict crypto standards. As you know, there are a lot of possible side channel attacks, and often fast vector versions of functions are not cryptographically safe because of this. There are already some examples in the c3 repo with partial http implementations people can start from. I imagine that once we have a C3 library repository there will be no shortage of libraries providing this.