btw I wrote some JAVA about 10 years ago, got some stupid issues and I've yet to touch it other than just installing few things JAVA at each Sun and Moon alignments

@lanodan And yet my college thinks that its a good idea to use Java in most of our CS classes. I'm super annoyed that it still doesn't have basic shit like an exponential operator.

@lanodan @xianc78 IMO cs classes are one usecase where Java works (teaching most popular design patterns and paradigms)
@wilmhit @xianc78 CS classes should work with more or less any language but I would tend to say that a middle-level language like C should be learned so you can actually relate your programs to how your machine works rather than some kind of virtual target.
Follow

@lanodan @wilmhit We only have two language specific classes: Java and C++. Most of the other classes do stuff in Java. Our Architecture and Operating System classes do go into MIPS Assembly and C respectively, but they don't go in depth.

The only assembly we learn in the Architecture class is just rewriting simple C programs (mostly just snippets of conditional statements, looping, and arithmetic expressions) into Assembly, not writing actual programs. It was mainly to teach how opcodes work and how the CPU interprets them.

The operating systems class had us writing simple C programs to learn basic Windows API functions. We didn't exactly learn C because you pretty much already know C when you learn C++. It's actually pretty confusing because Microsoft likes to change the names of C data types with their own terminology like "DWORD" referring to an unsigned 32 bit integer.

We did briefly touched SML in our Programming Languages class but that just to teach us about other paradigms. For Computer Algebra, we learned MATLAB. And for databases we obviously used SQL. All other classes use Java. Sometimes, a project will give us the choice between C++ or Java but everyone goes with Java because we barely touched C++.

· · Web · 1 · 0 · 0
@xianc78 @wilmhit
> We didn't exactly learn C because you pretty much already know C when you learn C++

Depends on how you learn C++ I guess but usually I would say it's horribly false, C++ is a very different beast than C.
It's quite like saying that a Lion and a Cat are the same animals.

> DWORD
> unsigned 32 bit integer

I don't know Windows but I would guess this had to do with the native word size of the architecture? (Which I think should be 64bit these days)

@lanodan

I haven’t done any Win32 since before the 64 bit era, but during the 32 bit era DWORD meant 32 bit word, once upon a time in the 16 bit era it did mean double word.

Win32 has types with LP prefixes (long pointer) to give you an idea of the historical baggage it carries with it. (Although frankly I don’t know exactly what their old semantics were when they were relevant)

@xianc78 @wilmhit

@ademan @lanodan @wilmhit
>I haven’t done any Win32 since before the 64 bit era, but during the 32 bit era DWORD meant 32 bit word, once upon a time in the 16 bit era it did mean double word.

Yeah that's what they told us and it's still the case today.

docs.microsoft.com/en-us/windo

@ademan @xianc78 @wilmhit I guess it's legacy reasons for the windows API.
Would be the kind of stuff I could only expect in things like software targeting an IBM-PC BIOS (as "real" mode is 16-bit) like a bootloader.

@lanodan

There was a Win16 API for MS-DOS, which was real mode (caveats? I dunno I wasn’t tinkering back then) I don’t know if some mixed Win32 Win16 code bases caused them to keep all of the types from Win16 but that’s my best guess.

@xianc78 @wilmhit

@lanodan @wilmhit
>Depends on how you learn C++ I guess but usually I would say it's horribly false, C++ is a very different beast than C.
It's quite like saying that a Lion and a Cat are the same animals.

They briefly touched the key differences between C++ and C in our Operating Systems class. Also, in our C++ class we did go over some stuff like how to convert C strings to string objects in C++.

Sign in to participate in the conversation
Game Liberty Mastodon

Mainly gaming/nerd instance for people who value free speech. Everyone is welcome.