
CommunityNews
It's not what programming languages do, it's what they shepherd you to
It’s not what programming languages do, it’s what they shepherd you to.
How many of you have listened, read or taken part in a discussion about programming languages that goes like the following: Person A: "Pro…
Read in full here:
This thread was posted by one of our members via one of our news source trackers.
Most Liked

OvermindDL1
Yes! This! This this this this this!
And this is why languages like Haskell and Rust are good languages, especially to learn from, because they “shepherd” the programmer to doing things correctly.

OvermindDL1
For learning, hmm… Haskell is great for a lot of the concepts it gives you, but Rust has a lot of them as well (though not all), however the Rust ability to actually teach you good ownership models is one of the most valuable things that you could learn in any language, that combined with its great error message probably means I’d pick Rust as the best to learn of all of those.
As for what I actually “like” best, well “that depends” on what I’m doing, lol. OCaml I most like as, say, a python replacement, I’d never pick python over ocaml unless I need a specific library, OCaml is fantastic for whipping stuff up. Rust for most else. Haskell is more of a fun thing but doesn’t really gain much in terms of productivity over OCaml or Rust.

iPaul
When I was younger I would have definitely preferred a language that lets you do what you want (like C, C++ or Python) instead of one that shepherd you on what you can do. Now I would say that a stricter language like Rust or definitely better especially for team work and large code bases in general.
Popular General Dev topics










Other popular topics









Latest in In The News
Latest (all)
Categories:
Popular Portals
- /elixir
- /rust
- /wasm
- /ruby
- /erlang
- /phoenix
- /keyboards
- /js
- /rails
- /python
- /security
- /go
- /swift
- /vim
- /clojure
- /java
- /haskell
- /emacs
- /svelte
- /onivim
- /typescript
- /crystal
- /c-plus-plus
- /tailwind
- /kotlin
- /gleam
- /react
- /flutter
- /elm
- /ocaml
- /vscode
- /opensuse
- /ash
- /centos
- /php
- /deepseek
- /scala
- /zig
- /html
- /debian
- /nixos
- /lisp
- /agda
- /react-native
- /textmate
- /sublime-text
- /kubuntu
- /arch-linux
- /revery
- /ubuntu
- /manjaro
- /spring
- /django
- /diversity
- /nodejs
- /lua
- /slackware
- /julia
- /c
- /neovim