Location: Puebla, México.
Remote: Yes.
Willing to relocate: No, but if your company happen to have an office in CDMX, I may be able to travel back and forth occasionally.
Technologies:
- Haskell [Advanced], Rust [Advanced]. Love Haskell.
- Ocaml [Basic], Clojure [Basic], Scala [Basic], Erlang [Basic]. Functional programing and that stuff.
- Git, Neovim, Unix [Linux, macOS], Nix [very basic, still learning].
- Github, Gitlab.
- Agda, Lean. But I'm also learning Coq. Not an expert, but I try to do my proofs.
- C (but not C++), Python, Flutter.
- I also know Java, but I'm not proud of that. I wrote a parser combinator a while ago just for fun (but with Java verbosity it's a mess).
Résumé/CV: https://cv.ivmoreau.com/
Email: hire@ivmoreau.com
Hi! I'm a Software Engineer/Computer Scientist higly interested in Functional Programming, especially with Haskell. But I can also work with Rust.I can learn new things pretty quickly and usually without any help, just making my way through the documentation. And I also love problem-solving, so I really try to get things working every time. But I'm also always working to improve my skills to become better in what I do.
While I would really like to work with compilers, types and a lot of formal stuff, I'm always open to other areas of development (i.e. Haskell's servant or distributed-process).
I'm currently a Computer Science undergraduate student at Benemérita Universidad Autónoma de Puebla. I'm finishing my bachelors in Summer 2023 (I managed to reduce by one year my degree, while having a good GPA [95.7/100]). But I also have a lot of free time, so this shouldn't be much of an issue. I promise to be careful.
I would love to be in your team building exciting things! So get in contact with me if you are interested or want to talk more about it.
Thank you so much for your time, and I hope you are having a good day!
But also a better package system than the current state of Hackage. Otherwise, Haskell is perfect.
https://wiki.debian.org/StaticLinking#Rusthttps://lwn.net/Articles/797616/https://github.com/rust-lang/rfcs/pull/2603
I note that the PR for Rust symbol mangling got merged, but it looks like it isn't the default yet, they are waiting on external tools supporting it.
Of course you can do dynamic linking without the way that I previously described, but that library will be highly tight to a specific version of the compiler. I think that the biggest problem is dealing with product types for that matter.
This is the most interesting part of this announcement for me:
>> You can test Arti ... as an embeddable library (if you don't mind a little API instability).
My first thought was adding Tor as a transport for TCP DNS resolution for an existing recursive resolver like unbound. Or, a TOR proxy for DoH public recursive resolvers. Either would result in better privacy than directly using a centralized public resolver with DoH. For the former, you would need to send the query through multiple circuits to have confidence that a guard or an exit node wasn't modifying the query/result (with all exits for a particular query in the same country to minimize geo DNS load balancing causing different results-- this level of control would be easier with a library than a separate daemon communicated through via socks. For the latter, using a socks proxy would work, but the library would make for a simpler setup for the user.
Too bad rust doesn't really do dynamic linking. 'libtor' as a distribution maintained library that is automatically kept patched for security vulnerabilities would add piece of mind when running applications that embed Tor.
As far as I remember, you can actually do dynamic linking. But it has its caveats.
Maybe using two different crates, lib-internal and lib-external, where lib-internal compiles to an dylib/so that exposes a C-abi compatible interface. Lib-external it’s just a idiomatic Rust wrapper to that api. It’s a little bit wonky, but I’m pretty sure that it can work.