logo

drewdevault.com

[mirror] blog and personal website of Drew DeVault git clone https://hacktivis.me/git/mirror/drewdevault.com.git

Status-update-January-2022.md (3166B)


  1. ---
  2. title: Status update, January 2022
  3. date: 2022-01-17
  4. outputs: [html, gemtext]
  5. ---
  6. Happy New Year! I had a lovely time in Amsterdam. No one had prepared me for the
  7. (apparently infamous) fireworks culture of the Netherlands. I thought it was
  8. really cool.
  9. Our programming language continues to improve apace. Our cryptography suite now
  10. includes Argon2, Salsa20/XSalsa20, ChaCha20/XChaCha20, and Poly1305, and based
  11. on these functions we have added libsodium-style high-level cryptographic
  12. utilities for AEAD and key derivation, with stream encryption, message signing
  13. and verification, and key exchange coming soon. We have also laid out the
  14. priorities for future crypto work towards supporting TLS, and on the way we
  15. expect to have ed25519/x25519 and Diffie-Hellman added soon. Perhaps enough to
  16. implement an SSH client?
  17. I also implemented an efficient path manipulation module for the standard
  18. library (something I would really have liked to have in C!), and progress
  19. continues on date/time support. We also have a new MIME module (just for Media
  20. Types, not all of MIME) and I expect a patch implementing net::uri to arrive in
  21. my inbox soon. I also finished up cmsg support (for sendmsg and recvmsg), which
  22. is necessary for the Wayland implementation I'm working on (and was a major pain
  23. in the ass). I spent some time working with another collaborator, who is
  24. developing a RISC-V kernel in our language, implementing a serial driver for the
  25. SiFive UART, plus improving the device tree loader and UEFI support.
  26. One of the standard library contributors also wrote a side-project to implement
  27. [Ray Tracing in One Weekend] in our language:
  28. [Ray Tracing in One Weekend]: https://raytracing.github.io/
  29. ![A ray-traced image of many small, colorful balls with three large spheres, two
  30. of which have a mirrored surface that reflects the other
  31. balls.](https://git.sr.ht/~turminal/raytracing/blob/master/example.png)
  32. In other words, language development has been very busy in the past few weeks.
  33. Another note: I have prepared [a lightning talk] for FOSDEM which talks about
  34. the backend that we're using: [qbe]. Check it out!
  35. [a lightning talk]: https://fosdem.org/2022/schedule/event/lg_qbe/
  36. [qbe]: https://c9x.me/compile
  37. In SourceHut news, we have brought on a new full-time contributor, Adnan
  38. Maolood, thanks to [a generous grant from NLNet][nlnet]. We also have another
  39. full-time software engineer starting on February 1st (on our own dime), so I'm
  40. very much looking forward to that. Adnan will be helping us with the GraphQL
  41. work, and the new engineer will be working similarly to Simon and I on FOSS
  42. projects generally (and, hopefully, with GraphQL et al as well). Speaking of
  43. GraphQL, I'm putting the finishing touches on the todo.sr.ht writable API this
  44. week: legacy webhooks. These are nearly done, and following this we need to do
  45. the security review and acceptance testing, then we can ship. Adnan has been
  46. hard at work on adding GraphQL-native webhooks to git.sr.ht, which should also
  47. ship pretty soon.
  48. [nlnet]: https://sourcehut.org/blog/2022-01-10-nlnet-graphql-funding/
  49. That's all for today. Thanks for reading! I'll see you again in another month.