# I am the Watcher. I am your guide through this vast new twtiverse.
# 
# Usage:
#     https://watcher.sour.is/api/plain/users              View list of users and latest twt date.
#     https://watcher.sour.is/api/plain/twt                View all twts.
#     https://watcher.sour.is/api/plain/mentions?uri=:uri  View all mentions for uri.
#     https://watcher.sour.is/api/plain/conv/:hash         View all twts for a conversation subject.
# 
# Options:
#     uri     Filter to show a specific users twts.
#     offset  Start index for quey.
#     limit   Count of items to return (going back in time).
# 
# twt range = 1 19
# self = https://watcher.sour.is/conv/d2tmxja
šŸ¦€ I think I’m starting to enjoy writing Rust code. Its typing system is rather explicit/verbose (I like that) and it somewhat tries to make it a bit harder to ignore errors. I think I’ll stick with it this time. šŸ¤”
šŸ¦€ I think I’m starting to enjoy writing Rust code. Its typing system is rather explicit/verbose (I like that) and it somewhat tries to make it a bit harder to ignore errors. I think I’ll stick with it this time. šŸ¤”
šŸ¦€ I think I’m starting to enjoy writing Rust code. Its typing system is rather explicit/verbose (I like that) and it somewhat tries to make it a bit harder to ignore errors. I think I’ll stick with it this time. šŸ¤”
@movq Sounds a bit like Ada. I probably need to have a deeper look into Rust. One thing I really don't get, is why they decided to make the last statement an implicit return. I really hate this.
@lyse Yeah, no idea. Also: If you want to make use of this feature, you have to omit the final ;. So a function ending with return 3; and one ending with just 3 is the same thing, but 3; is wrong. That’s easy to miss, especially when reading other people’s code. (Funny enough, return 3 works again.)
@lyse Yeah, no idea. Also: If you want to make use of this feature, you have to omit the final ;. So a function ending with return 3; and one ending with just 3 is the same thing, but 3; is wrong. That’s easy to miss, especially when reading other people’s code. (Funny enough, return 3 works again.)
@lyse Yeah, no idea. Also: If you want to make use of this feature, you have to omit the final ;. So a function ending with return 3; and one ending with just 3 is the same thing, but 3; is wrong. That’s easy to miss, especially when reading other people’s code. (Funny enough, return 3 works again.)
My biggest gripe with Rust is still the sheer amount of language features. In itself, it’s not that big of an issue, but people like to use them all! Everyone tries to be smart and uses as many language features as possible, it seems. Gah.
My biggest gripe with Rust is still the sheer amount of language features. In itself, it’s not that big of an issue, but people like to use them all! Everyone tries to be smart and uses as many language features as possible, it seems. Gah.
My biggest gripe with Rust is still the sheer amount of language features. In itself, it’s not that big of an issue, but people like to use them all! Everyone tries to be smart and uses as many language features as possible, it seems. Gah.
@movq That’s my issue too. Rust also tries to be a pure functional language which makes the learning curve much steeper.\n\nI prefer and love Go 😁
@movq That’s my issue too. Rust also tries to be a pure functional language which makes the learning curve much steeper.

I prefer and love Go 😁
@movq That’s my issue too. Rust also tries to be a pure functional language which makes the learning curve much steeper.

I prefer and love Go 😁
@lyse @movq Yeah I gate implicit returns to! reminds me of the saying languages are meant to be read by humans 🤣 etc
@lyse @movq Yeah I gate implicit returns to! reminds me of the saying languages are meant to be read by humans 🤣 etc
A great example of the madness caused by implicit return is this: https://github.com/seanmonstar/num_cpus/blob/master/src/linux.rs#L39 You have to read this function carefully and look out for missing ; at the end of the lines to spot the locations where a return happens. Or look at this: https://movq.de/v/56521e7fab/s.png Arrr! 🄓
A great example of the madness caused by implicit return is this: https://github.com/seanmonstar/num_cpus/blob/master/src/linux.rs#L39 You have to read this function carefully and look out for missing ; at the end of the lines to spot the locations where a return happens. Or look at this: https://movq.de/v/56521e7fab/s.png Arrr! 🄓
A great example of the madness caused by implicit return is this: https://github.com/seanmonstar/num_cpus/blob/master/src/linux.rs#L39 You have to read this function carefully and look out for missing ; at the end of the lines to spot the locations where a return happens. Or look at this: https://movq.de/v/56521e7fab/s.png Arrr! 🄓
@movq WTF, I didn't know the thing with the semicolon. That's absolutely terrible design! I'm not against using all the language features per se. Admittedly, it's hard for new people, but it often ends up in much more elegant code. Well, depending on the exact feature, that is.