We can safely say that Rust being used in various application domains already, slowly improving the corresponding libraries. There is exist quite important domain, which is often overlooked, but of the immense importance - finances, taxes and business logic applications. In fact, this is precisely where Rust will shine with its predictability, speed, and openness to the feedback. I asked a couple of times if someone actually use it in these domains, and you can see a few examples of the traits being developed (and often abandoned) for such applications. And the business logic, taxation computations, financial transactions handling is what makes our world economy going, essentially preventing crashing everything to pieces. This kingdom totally ruled by COBOL and Java. Obviously using Rust would be a total level (or even levels) up. So hereby, I propose to create the Business Applications Working Group for coordinating such efforts. It might be a low traffic one, but at least people would work together on building the relevant crates ecosystem, and compiler features if required.
Iām not sure I fully understand the scope or focus (or maybe the āBusinessā is just used differently). So Iād like to ask a bit more specifically.
Are you mostly interested in finances here, or whatever a bigger company might need on the inside which is often finance-related but not necessarily? Iām asking because I have written this spirit family of libraries. It is aimed at easing up developing of services (which also these internal applications are) like helping with configuration, logging, etc. My motivation for it was actually implementing an internal service and getting somewhat up to the level of how other java services are able to log, provide metrics, ā¦
Would that be in scope or not?
Either way, while I feel like getting into this sector will be somewhat tricky, on the effort.
As someone who has majored in Business SE and writes business applications for a living, hereās what a PL good for writing business applications must have:
decimal math
flexible rounding rules (not all countries use bankerās rounding)
lots and lots of integration libraries
Integration is incredibly important, since many companies have layers and layers of legacy applications utilizing 20-year old protocols. You canāt write a useful business application that can only do HTTP/2 and JSON or Protobuf.
@vorner yes, I meant the āBusinessā in a broader term, it is just I have more experience with finances there, also quant software is easier to find open sourced. So depending on the details the service management can be in the scope as well.
One big example is Jane Street who promotes using OCaml and uses it internally almost everywhere. And they claim it was a part of their huge success. I have a feeling, that Rust can be a part of a similar recipe as well if cooked well. There is another good example - Imandra, aiming to bring formal verification to the business core of finances, governance, and even web-development. They also base their framework and tools on top of OCaml.
@orthoxerox yes, I mentioned in the post in users community three crates for dealing with decimal numbers: decimal, rust-decimal, and bigdecimal. The second and third point are indeed uncovered. So we should work on improving databases access, reiterate recent move to make a Rust alternative to Elasticsearch, improving the interfaces with R, Julia, Excel, various interfaces, like SWIFT, etc.
I wonder if āBusinessā means āEnterpriseā? For example making sure we have first class support for NTLM windows authentication - windows domains are pretty common. An even more specific finance working group might be good later on, but I think thereās a lot of polish still needed to reduce the barriers to entry of using Rust in a large company - an enterprise working group would great.
But if you mean Business as āFinanceā I know a handful of quants that are keen on Rust and might want to push forward the status quo. From a finance perspective having a rust version of ISDAās CDM ( https://www.isda.org/2018/11/22/isda-cdm-factsheet/ ) would be interesting as well as FIX parsersā¦
I do have a project that lay down the ground work of the backend for enterprise application.
The vision of this project would be to become a core system in an ERP, which is mostly just centered around a database. It would be great if I can get some people to look at the project and hopefully receive some contributions.
I suggest we can create an organization on GitHub with repositories āmetaā - for discussion and proposals, and libraries themselves. For example decimals, FIX parser, something else, can fit perfectly into this, maybe some Java and COBOL integration stuff, Excel integration, etc. It will improve the visibility of the respective projects, at the very least.
Iād be interested in participating, although I donāt have bandwidth to push this forward. For me, this most interesting parts are robust integrations for things like excel and ms sql server.