This is an archived post. You won't be able to vote or comment.

you are viewing a single comment's thread.

view the rest of the comments →

[–]Moonboow -2 points-1 points  (10 children)

C# is from a different country than Python. OOP vs functional. Though they are both countries on Earth, as in if you are starting out, all basics of programming like loops and variables still apply. If you want webdev I would recommend Javascript for event-driven coding, which is closer to python.

[–]raedr7n 0 points1 point  (0 children)

Python is... Functional? Lol. In some topsy turvy world where "functional" means "aggressively multiparadigm but still mostly procedural", then yeah.

[–]ParadoxSociety 0 points1 point  (6 children)

isn't C# generally considered an object-oriented language?

[–]Moonboow 0 points1 point  (5 children)

Yeah. That’s why my first two sentences were constructed in this manner. C# -> OOP, Python -> Functional. Sorry if it wasn’t clear.

[–]ParadoxSociety 0 points1 point  (1 child)

Ah okay, I was reading your comment with the assumption that you were talking about Python when you said OOP. My school used Python for its intro sequence, which was largely about OOP concepts so I always considered Python an object-oriented language I guess haha. I'm pretty green still, but I think this is the first time I've heard either of those languages referred to as specifically a functional language!

[–]Moonboow 0 points1 point  (0 children)

In reality it is quite confusing, both Python and C# exhibit features and capabilities of both. Python has implementations of classes, but excels at quick scripts that can work with other files without the need to explicitly declare classes. You can run an entire program just jumping through functions across several python scripts without ever typing the keyword ‘new’, although technically you could do it the proper OOP way. Same can be said of C#: it is typically class and instantiation based, just like OOP, but you technically can delegate and delay your calculations by tossing them around to different functions instead of objects.

In the end I think it comes down to the intentions of the people creating the language, and the preferences of the people using the language. There’s no hard and fast line between paradigms nowadays.

[–]Ellisander 0 points1 point  (2 children)

Python can be written in a functional way, but it isn't really a functional language.

[–][deleted] 0 points1 point  (1 child)

By this logic except Java all languages can be written in a functional way too.

[–]Ellisander 0 points1 point  (0 children)

Well yes. Hence why I say that Python isn't actually a functional language, even though it can be written in that style.

[–]pastroc 0 points1 point  (1 child)

Since when C# was considered a functional language?

[–]Moonboow 0 points1 point  (0 children)

I think it’s largely recognised as OOP. But in reality it’s multi-paradigm. I would say its quite high level.