F2 Navigation   |  Options  |  Login  |  Register  |  Status  |  FAQ  |  Upload Pics  |  Work-Safe Bookmark and Share


Back to Index | Reply to Topic

Page: 1 2 3  | Previous  Next | First  Last

  CMU removed OOP from its CS curriculum because it's "unsuitable for a modern CS curriculum."
.
Unregistered

They're emphasising functional programming and parallelism.

http://existentialtype.wordpress.com/2011/03/15/teaching-fp-to-freshmen/

Object-oriented programming is eliminated entirely from the introductory curriculum, because it is both anti-modular and anti-parallel by its very nature, and hence unsuitable for a modern CS curriculum.
.
Unregistered

CMU knows what the fuck they are doing ..
.
Unregistered

Good lord.

It's all about complexity management and certain problems cry for certain solutions. Depending on how you slice and dice cores, a pipeline of objects may make perfect sense.
.
Unregistered

Introductory only?

Anti-modular, anti-parallel?

If so you're doing it wrong.
.
Unregistered

. said:CMU knows what the fuck they are doing ..



Lots of outrage in the comments. Lots of Trevs who are invested in OOP and swallowed all the reuse bullshit.
.
Unregistered

. said:Good lord.

It's all about complexity management and certain problems cry for certain solutions. Depending on how you slice and dice cores, a pipeline of objects may make perfect sense.



Look at Erlang, e.g.
.
Unregistered

. said:Look at Erlang, e.g.



It's garbage for anything other than it was intended.

20 cores? Use erlang!!

:winner:
.
Unregistered

. said:Lots of outrage in the comments. Lots of Trevs who are invested in OOP and swallowed all the reuse bullshit.



Obviously different problems tend towards different solutions.

It isn't like an embedded system with a bunch of processors, often different designs, will end up similar in construction to a complex acting GUI.

Honestly, the primary difference I've seen all these years is not the addition of new languages or practices, but is widespread adoption of prewritten libraries, whether commercial or free.
.
Unregistered

. said:
. said:Good lord.

It's all about complexity management and certain problems cry for certain solutions. Depending on how you slice and dice cores, a pipeline of objects may make perfect sense.



Look at Erlang, e.g.



It better have a goddamned good compiler. Most of the products I've ever worked on did lots and lots of computation with strict realtime constraints.

I'm not saying that a language like Erlang, when used in anger, wouldn't teach me something, but I'd hate to be trading one set of problems for another.
.
Unregistered

. said:Obviously different problems tend towards different solutions.

It isn't like an embedded system with a bunch of processors, often different designs, will end up similar in construction to a complex acting GUI.

Honestly, the primary difference I've seen all these years is not the addition of new languages or practices, but is widespread adoption of prewritten libraries, whether commercial or free.



I don't see why skepticism about OOP implies one-size-fits-all thinking. Even if they were insisting on FP (they have a similar course on imperative programming), FP is hardly implies a monolithic programming style. Moreover, FP is already being used on a range of systems, from data centers to embedded systems.
.
Unregistered

Fucking finally. OOP has always been overhyped shit for simpletons.
.
Unregistered

people who have only worked in academia don't understand why OOP is something people should learn

you don't learn it as a "programming paradigm". you learn it to try and organize code so it isn't a fucking mess.

for example, if you have a bunch of math functions, you don't put them all over your fucking code in different places. You create one place called math or a math library and stick them all in there.

OOP helps you do this. All the other OOP shit is basically a total waste.

C++ is total garbage.

C# and Java are much better than C not because they are OOP but because they do garbage collection and get rid of pointers. This keeps your program from crashing and keep it from leaking memory, two of the biggest problems in C. Those are their two real big advantages over C.

Functional programming makes parallelism much easier but at the expense of the programming not know what the fuck the actual processor and network traffic are. You can write a 10 line program in any functional language that blows out your network traffic, memory and CPU all at once because as a programmer, you don't see all that shit happens when you make those few calls.

C is showing you what the CPU does. C# and Java also do to a lesser extent but they are much, much closer than any functional language.

just use map/reduce with C# or Java and forget erlang and all that fucking garbage.
.
Unregistered

:lol: Some of the comments are hilarious:

. said:Your own website uses WordPress, which is largely written in object-oriented PHP (yes, it actually uses the OO features of PHP). If functional languages are so great, why is your own website not written in one?

This is just totally ridiculous. Have you ever even read Code Complete?



:facepalm:
.
Unregistered

. said:people who have only worked in academia don't understand why OOP is something people should learn

you don't learn it as a "programming paradigm". you learn it to try and organize code so it isn't a fucking mess.

for example, if you have a bunch of math functions, you don't put them all over your fucking code in different places. You create one place called math or a math library and stick them all in there.

OOP helps you do this. All the other OOP shit is basically a total waste.

C++ is total garbage.

C# and Java are much better than C not because they are OOP but because they do garbage collection and get rid of pointers. This keeps your program from crashing and keep it from leaking memory, two of the biggest problems in C. Those are their two real big advantages over C.

Functional programming makes parallelism much easier but at the expense of the programming not know what the fuck the actual processor and network traffic are. You can write a 10 line program in any functional language that blows out your network traffic, memory and CPU all at once because as a programmer, you don't see all that shit happens when you make those few calls.

C is showing you what the CPU does. C# and Java also do to a lesser extent but they are much, much closer than any functional language.

just use map/reduce with C# or Java and forget erlang and all that fucking garbage.


Modular organization of code != OOP.

In fact, they are at cross purposes.
.
Unregistered

. said: :lol: Some of the comments are hilarious:

. said:Your own website uses WordPress, which is largely written in object-oriented PHP (yes, it actually uses the OO features of PHP). If functional languages are so great, why is your own website not written in one?

This is just totally ridiculous. Have you ever even read Code Complete?



:facepalm:



:lol:

I can imagine that guy standing up in CS class and yelling...

This is garbage. Have you even read Code Complete?
\
:trev:
Asok
+++++

13975 posts

. said:CMU knows what the fuck they are doing ..

No, they don't. Ivory tower retards.
.
Unregistered

MIT has recently done the same thing. OOP is just another dead fad - yesterday's news.
.
Unregistered

Do they still offer holohoax studies?
.
Unregistered

The WordPress codebase is an utter shitmess. Its popularity is mostly an accident of history.
.
Unregistered

. said:people who have only worked in academia don't understand why OOP is something people should learn

you don't learn it as a "programming paradigm". you learn it to try and organize code so it isn't a fucking mess.

for example, if you have a bunch of math functions, you don't put them all over your fucking code in different places. You create one place called math or a math library and stick them all in there.

OOP helps you do this. All the other OOP shit is basically a total waste.

C++ is total garbage.

C# and Java are much better than C not because they are OOP but because they do garbage collection and get rid of pointers. This keeps your program from crashing and keep it from leaking memory, two of the biggest problems in C. Those are their two real big advantages over C.

Functional programming makes parallelism much easier but at the expense of the programming not know what the fuck the actual processor and network traffic are. You can write a 10 line program in any functional language that blows out your network traffic, memory and CPU all at once because as a programmer, you don't see all that shit happens when you make those few calls.

C is showing you what the CPU does. C# and Java also do to a lesser extent but they are much, much closer than any functional language.

just use map/reduce with C# or Java and forget erlang and all that fucking garbage.



FP languages have libraries (wtf?). The type system is the correct way to do modularity. FP languages free you up from memory management, pointers, etc. You can optimise FP languages to the hardware just like an imperative language; the knowledge needed is just somewhat different.
.
Unregistered

. said:Fucking finally. OOP has always been overhyped shit for simpletons.



Yea. It was supposed to simplify programming but instead it made it more complicated. Every object is different with it's own learning curve.
.
Unregistered

Asok said:No, they don't. Ivory tower retards.



Exactly. There is academia, and then there is the real world with real needs.
.
Unregistered

. said:Yea. It was supposed to simplify programming but instead it made it more complicated. Every object is different with it's own learning curve.



I disagree, polymorphism and so forth is very convenient. C# is probably the best language in existence today.
.
Unregistered

. said:people who have only worked in academia don't understand why OOP is something people should learn

you don't learn it as a "programming paradigm". you learn it to try and organize code so it isn't a fucking mess.

for example, if you have a bunch of math functions, you don't put them all over your fucking code in different places. You create one place called math or a math library and stick them all in there.

OOP helps you do this. All the other OOP shit is basically a total waste.

C++ is total garbage.

C# and Java are much better than C not because they are OOP but because they do garbage collection and get rid of pointers. This keeps your program from crashing and keep it from leaking memory, two of the biggest problems in C. Those are their two real big advantages over C.

Functional programming makes parallelism much easier but at the expense of the programming not know what the fuck the actual processor and network traffic are. You can write a 10 line program in any functional language that blows out your network traffic, memory and CPU all at once because as a programmer, you don't see all that shit happens when you make those few calls.

C is showing you what the CPU does. C# and Java also do to a lesser extent but they are much, much closer than any functional language.

just use map/reduce with C# or Java and forget erlang and all that fucking garbage.



Geewhiz, sam, I sure hope this airplane doesn't crash when my autopilot is "garbage collecting" at 200ft agl...
shockeye
Robotron Rescue Llama

1452 posts

Great move, can't wait to see java killed even as a teaching language.

Page: 1 2 3  | Previous  Next | First  Last

Back to Index | Reply to Topic

 
Quick Reply
Moniker:
Message: