Need advice about which tool to choose?Ask the StackShare community!

OCaml

313
184
+ 1
28
Rust

5.8K
4.9K
+ 1
1.2K
Add tool

OCaml vs Rust: What are the differences?

What is OCaml? A general purpose industrial-strength programming language. It is an industrial strength programming language supporting functional, imperative and object-oriented styles. It is the technology of choice in companies where a single mistake can cost millions and speed matters, .

What is Rust? A safe, concurrent, practical language. Rust is a systems programming language that combines strong compile-time correctness guarantees with fast performance. It improves upon the ideas of other systems languages like C++ by providing guaranteed memory safety (no crashes, no data races) and complete control over the lifecycle of memory.

OCaml and Rust belong to "Languages" category of the tech stack.

Rust is an open source tool with 38.2K GitHub stars and 5.95K GitHub forks. Here's a link to Rust's open source repository on GitHub.

Dropbox, Sentry, and Postmates are some of the popular companies that use Rust, whereas OCaml is used by Hammer Lab, NG Informática, and Maersk Digital. Rust has a broader approval, being mentioned in 56 company stacks & 523 developers stacks; compared to OCaml, which is listed in 6 company stacks and 6 developer stacks.

Advice on OCaml and Rust
Needs advice
on
JavaScriptJavaScriptPythonPython
and
RustRust

So, I've been working with all 3 languages JavaScript, Python and Rust, I know that all of these languages are important in their own domain but, I haven't took any of it to the point where i could say I'm a pro at any of these languages. I learned JS and Python out of my own excitement, I learned rust for some IoT based projects. just confused which one i should invest my time in first... that does have Job and freelance potential in market as well...

I am an undergraduate in computer science. (3rd Year)

See more
Replies (3)
Recommends
on
JavaScriptJavaScript

I would start focusing on Javascript because even working with Rust and Python, you're always going to encounter some Javascript for front-ends at least. It has: - more freelancing opportunities (starting to work short after a virus/crisis, that's gonna help) - can also do back-end if needed (I would personally avoid specializing in this since there's better languages for the back-end part) - hard to avoid. it's everywhere and not going away (well not yet)

Then, later, for back-end programming languages, Rust seems like your best bet. Its pros: - it's satisfying to work with (after the learning curve) - it's got potential to grow big in the next year (also with better paying jobs) - it's super versatile (you can do high-perf system stuff, graphics, ffi, as well as your classic api server) It comes with a few cons though: - it's harder to learn (expect to put in years) - the freelancing options are virtually non-existent (and I would expect them to stay limited, as rust is better for long-term software than prototypes)

See more
Recommends
on
JavaScriptJavaScript

I suggest you to go with JavaScript. From my perspective JavaScript is the language you should invest your time in. The community of javascript and lots of framework helps developer to build what they want to build in no time whether it a desktop, web, mobile based application or even you can use javascript as a backend as well. There are lot of frameworks you can start learning i suggest you to go with (react,vue) library both are easy to learn than angular which is a complete framework.

And if you want to go with python as a secondary tool then i suggest you to learn a python framework (Flask,Django).

See more
Moinul Moin
Recommends
on
JavaScriptJavaScript

go for javascript, brother.

See more
Decisions about OCaml and Rust
Roman Glushko
Machine Learning, Software Engineering and Life · | 3 upvotes · 368.3K views

I chose Golang as a language to write Tango because it's super easy to get started with. I also considered Rust, but learning curve of it is much higher than in Golang. I felt like I would need to spend an endless amount of time to even get the hello world app working in Rust. While easy to learn, Golang still shows good performance, multithreading out of the box and fun to implement.

I also could choose PHP and create a phar-based tool, but I was not sure that it would be a good choice as I want to scale to be able to process Gbs of access log data

See more
Manage your open source components, licenses, and vulnerabilities
Learn More
Pros of OCaml
Pros of Rust
  • 7
    Satisfying to write
  • 6
    Pattern matching
  • 4
    Also has OOP
  • 4
    Very practical
  • 3
    Easy syntax
  • 3
    Extremely powerful type inference
  • 1
    Efficient compiler
  • 145
    Guaranteed memory safety
  • 132
    Fast
  • 88
    Open source
  • 75
    Minimal runtime
  • 72
    Pattern matching
  • 63
    Type inference
  • 57
    Algebraic data types
  • 57
    Concurrent
  • 47
    Efficient C bindings
  • 43
    Practical
  • 37
    Best advances in languages in 20 years
  • 32
    Safe, fast, easy + friendly community
  • 30
    Fix for C/C++
  • 25
    Stablity
  • 24
    Zero-cost abstractions
  • 23
    Closures
  • 20
    Extensive compiler checks
  • 20
    Great community
  • 18
    Async/await
  • 18
    No NULL type
  • 15
    Completely cross platform: Windows, Linux, Android
  • 15
    No Garbage Collection
  • 14
    Great documentations
  • 14
    High-performance
  • 12
    Generics
  • 12
    Super fast
  • 12
    High performance
  • 11
    Safety no runtime crashes
  • 11
    Fearless concurrency
  • 11
    Compiler can generate Webassembly
  • 11
    Macros
  • 11
    Guaranteed thread data race safety
  • 10
    Helpful compiler
  • 9
    RLS provides great IDE support
  • 9
    Prevents data races
  • 9
    Easy Deployment
  • 8
    Real multithreading
  • 8
    Painless dependency management
  • 7
    Good package management
  • 5
    Support on Other Languages
  • 1
    Type System

Sign up to add or upvote prosMake informed product decisions

Cons of OCaml
Cons of Rust
  • 3
    Small community
  • 1
    Royal pain in the neck to compile large programs
  • 28
    Hard to learn
  • 24
    Ownership learning curve
  • 12
    Unfriendly, verbose syntax
  • 4
    High size of builded executable
  • 4
    Many type operations make it difficult to follow
  • 4
    No jobs
  • 4
    Variable shadowing
  • 1
    Use it only for timeoass not in production

Sign up to add or upvote consMake informed product decisions

- No public GitHub repository available -

What is OCaml?

It is an industrial strength programming language supporting functional, imperative and object-oriented styles. It is the technology of choice in companies where a single mistake can cost millions and speed matters,

What is Rust?

Rust is a systems programming language that combines strong compile-time correctness guarantees with fast performance. It improves upon the ideas of other systems languages like C++ by providing guaranteed memory safety (no crashes, no data races) and complete control over the lifecycle of memory.

Need advice about which tool to choose?Ask the StackShare community!

What companies use OCaml?
What companies use Rust?
Manage your open source components, licenses, and vulnerabilities
Learn More

Sign up to get full access to all the companiesMake informed product decisions

What tools integrate with OCaml?
What tools integrate with Rust?

Sign up to get full access to all the tool integrationsMake informed product decisions

Blog Posts

Nov 20 2019 at 3:38AM

OneSignal

PostgreSQLRedisRuby+8
9
4732
Jun 6 2019 at 5:11PM

AppSignal

RedisRubyKafka+9
15
1704
What are some alternatives to OCaml and Rust?
Haskell
It is a general purpose language that can be used in any domain and use case, it is ideally suited for proprietary business logic and data analysis, fast prototyping and enhancing existing software environments with correct code, performance and scalability.
ReasonML
It lets you write simple, fast and quality type safe code while leveraging both the JavaScript & OCaml ecosystems.It is powerful, safe type inference means you rarely have to annotate types, but everything gets checked for you.
Java
Java is a programming language and computing platform first released by Sun Microsystems in 1995. There are lots of applications and websites that will not work unless you have Java installed, and more are created every day. Java is fast, secure, and reliable. From laptops to datacenters, game consoles to scientific supercomputers, cell phones to the Internet, Java is everywhere!
Erlang
Some of Erlang's uses are in telecoms, banking, e-commerce, computer telephony and instant messaging. Erlang's runtime system has built-in support for concurrency, distribution and fault tolerance. OTP is set of Erlang libraries and design principles providing middle-ware to develop these systems.
Python
Python is a general purpose programming language created by Guido Van Rossum. Python is most praised for its elegant syntax and readable code, if you are just beginning your programming career python suits you best.
See all alternatives