Add some notes for 2021
This commit is contained in:
parent
22b0b0530e
commit
6fa2536880
73
2021/notes.md
Normal file
73
2021/notes.md
Normal file
@ -0,0 +1,73 @@
|
||||
## Thoughts about each language
|
||||
|
||||
### Ruby
|
||||
|
||||
Already was familiar with it, so nothing notable here.
|
||||
|
||||
### Ada
|
||||
|
||||
Actually quite usable.
|
||||
The syntax is a bit too verbose for my taste.
|
||||
The only little annoyance I ran into was the way integers
|
||||
are rendered when converted to strings.
|
||||
|
||||
### Perl
|
||||
|
||||
No. Just No.
|
||||
The mandatory variable prefixing is annoying.
|
||||
Lists are just a broken feature, and passing them to a
|
||||
function will not lead to the expected result.
|
||||
I heard that hashes are equally as broken, but I had no
|
||||
use for them here.
|
||||
This language just makes me appreciate Ruby more.
|
||||
|
||||
### Go
|
||||
|
||||
Module handling is a bit weird but works after some ceremony.
|
||||
Didn't really like the way errors are handled.
|
||||
The fact that elements are copied when iterating
|
||||
made it a bit cumbersome to use.
|
||||
|
||||
### Nim
|
||||
|
||||
Might become my second favorite compiled language after Rust.
|
||||
Reminded me a bit of Python with the significant whitespace.
|
||||
It can infer types in let bindings, which helps make code less noisy.
|
||||
Mutable variables being different from immutables is nice, love to see that.
|
||||
Another plus is that identifiers and types are
|
||||
in the correct order (`ident: Type` > `Type ident`).
|
||||
|
||||
### Inko
|
||||
|
||||
Was just a language that I found some time ago,
|
||||
and wanted to try it with something.
|
||||
Documentation is quite lacking, and compiler errors are not
|
||||
that helpful.
|
||||
The way that control flow is handled is a bit unconventional.
|
||||
Feels like a weird mix between Rust and Ruby, but not quite.
|
||||
|
||||
### Swift
|
||||
|
||||
Couldn't figure out how creating modules works.
|
||||
Was quite straightforward for the most part once I figured out
|
||||
that the `Foundation` package is pretty much essential.
|
||||
|
||||
### C#
|
||||
|
||||
Requires everything to be wrapped in classes like Java, not great.
|
||||
Very verbose due to lack of inferred types in many places.
|
||||
Linq queries are kinda nice.
|
||||
|
||||
### C
|
||||
|
||||
Well, it's C, a barebones language where you pretty much have to
|
||||
implement everything you need by yourself.
|
||||
I don't know why but `atoi` threw me for a loop at first,
|
||||
because it parsed parts of the input incorrectly for some reason.
|
||||
|
||||
### OCaml
|
||||
|
||||
Quite pleasant experience.
|
||||
Everything that I needed was quickly found in documentation.
|
||||
The syntax is quite similar to Haskell, so not many
|
||||
issues there.
|
Loading…
Reference in New Issue
Block a user