Author Topic: what is the most relevant programming language for ee?  (Read 15819 times)

0 Members and 1 Guest are viewing this topic.

Offline rjp

  • Regular Contributor
  • *
  • Posts: 124
  • Country: au
Re: what is the most relevant programming language for ee?
« Reply #75 on: November 06, 2018, 03:58:00 am »
Its a shame that nobody with serious clout has done a c+ yet - which is the useful subset of c++ that every damn modern language has run with - python,c#,java. dart etc.
 
Bascially c structs with single inheritance that makes building core framework plugins like "Stream" easier without pointer casting.

Namespacing to avoid foo_bah_wah clumsyness in libraries.

then a more modern std library.

What's the point? It's already there in C++, just as C remains a subset of C++. You just don't use the features you don't want to use.

People cloak it in C vs C++ labels, but the real "religious" argument is usually about procedural vs object oriented approaches. Both approaches have value, although the extremists in either camp may choose to argue that. Anyone who has to understand and maintain existing code better be willing to understand both.

the other religious argument in micro programming is prebuilt frameworks and shared code versus  doing everything from scratch in isolation from first principles, this overlaps quite a bit with the c/c++ argument.

 

Offline bsfeechannel

  • Super Contributor
  • ***
  • Posts: 1668
  • Country: 00
Re: what is the most relevant programming language for ee?
« Reply #76 on: November 06, 2018, 04:20:49 am »
As these C programmers are demonstrating, once you learn C, you will have a terrible time learning C++.   However if you learn C++ first you will have no trouble at all reading other people's C code.    C is to C++ what religion is to science.    If you learn science first you will have no trouble understanding religion.  If you learn religion first your thinking will alway tend towards circular reasoning and "I belong to a community that thinks this way and we can't all be wrong" sort of  thinking that you see people using to justify C.

Holy crap, Batman! Bjarne really managed to brainwash an entire generation.

C in large part supplanted Assembly, but that was unintentional. Dennis Ritchie never expected the success the language had.

Bjarne worked, and still works, hard to supplant C, but that didn't happen. The largest cooperative project of the history of humankind, Linux, and unofficially the OS upon which the world spins,  is written in C.

Butthurt, Bjarne makes videos on the internet calling C obsolete, then complains about the animosities between C and C++ developers. Dennis Ritchie never said that of Assembly.

One of the mistakes of C++ was exactly to have chosen that name. It is like God calling his son Satan++ instead of Jesus.

Every time you say C++ you give C free publicity.
 

Offline Crazy_Pete

  • Regular Contributor
  • *
  • Posts: 51
  • Country: us
Re: what is the most relevant programming language for ee?
« Reply #77 on: November 06, 2018, 04:33:51 am »
>Every time you say C++ you give C free publicity.   

Please don't feed the trolls :-)

love
Crazy Pete
Your enemies pray for a shovel but your own tongue will dig your grave... (Traveller Proverb)
 

Offline Crazy_Pete

  • Regular Contributor
  • *
  • Posts: 51
  • Country: us
Re: what is the most relevant programming language for ee?
« Reply #78 on: November 06, 2018, 04:45:40 am »
Hi Hatokay!

Something i will say i regret Hatokay, is not learning functional programming.    You can see by the trolling responses that nobody has come up with an intelligent answer as to why you should learn C instead of C++.

When i was your age ;-)  The head of CSCI was a blearly eyed insomniac schizoid who used to wander the halls half asleep red eyed with a smile on his face.  (He was the ultimate programmer.)   Whereas all the other teachers were praising me for learning C++, he was berating me and telling me that functional languages are the way to go.

If there is anything i regret it is not listening to him.   That fellow who posted about 10 lines of Dylan replacing pages and pages of C++ is right.  Just as Object Oriented Programs tend  to blow Procedural Programs out of the water, Functional Programs (LISP and children) tend to blow OOP out of the water.   Learn C++/Asm for the low level stuff.   Since you are just starting out, i would really bother to immerse yourself in something like Dylan (or other functional language).   After 30 years of programming i can say a well written 1000 line C program collapses into a 100 line well written C++ program.   A 100 line well written C++ program collapses into a 10 line Dylan program.

I am not a Dylan Bigot, etc.   I am telling you i WISH i had taken that guys advice 30 years ago and learnt functional programming as well as OOP.   Exposing your mind to as many different views as possible is essential to your intellectual development later in life.

Best Wishes,

Crazy Pete
Your enemies pray for a shovel but your own tongue will dig your grave... (Traveller Proverb)
 

Offline Crazy_Pete

  • Regular Contributor
  • *
  • Posts: 51
  • Country: us
Re: what is the most relevant programming language for ee?
« Reply #79 on: November 06, 2018, 05:02:57 am »
>well the thing is that all those features that you shouldnt use, do get used, and c++ can be a nightmare when multiple inheritance and templates are used to their fullest insanity.

I didn't say I shouldn't use them, i said you shouldn't use them if you don't like them.  The fact that you find it distasteful to maintain code that you never learnt to write in the first place is not an argument for not learning in the first place.

THIS is exactly why you should learn C++ and not learn C.  If you learn C you will find it impossible to learn C++ and waste time complaining about those who can.  If you learn C++ first you will not only have a more agile and open mind, but you will also be a better C programmer.

And again, if yer just starting out, fer chrissakes PLEASE PLEASE learn from MY mistakes and learn Dylan!!!!!

Love
Crazy Pete
« Last Edit: November 06, 2018, 05:09:53 am by Crazy_Pete »
Your enemies pray for a shovel but your own tongue will dig your grave... (Traveller Proverb)
 

Offline GregDunn

  • Frequent Contributor
  • **
  • Posts: 725
  • Country: us
Re: what is the most relevant programming language for ee?
« Reply #80 on: November 06, 2018, 05:21:39 am »
I didn't say I shouldn't use them, i said you shouldn't use them if you don't like them.  The fact that you find it distasteful to maintain code that you never learnt to write in the first place is not an argument for not learning in the first place.

This is why, when we were essentially forced to use Java for our software, I wrote it as though it was C.  I spent 16 years working with Java, and every time I declined to use the bloated, spaghetti-like coding style encouraged by Java mavens, I ended up with a simpler, easier to read program that tended to work first time.  The main thing wrong with OOP is that the proponents want to write it as though everything has to be an object - and that's not the case.  In many (most) cases, this just obfuscates the program and makes it harder to add to or update it.  Not to mention dragging in megabytes of libraries whether you need them or not.

Slapdash, lazy coding in C++ and Java is a big reason why code tended to get bigger and slower with every generation following C.  In the 1980s we wrote a skeleton operating system and three shared memory multiprocessing applications for a radar controller in less than a megabyte of code - running on a 5 MHz 8086.  Pretty much every "standalone" Java application I worked with 10 years later was bigger than that, despite it all being boiled down to interpreted byte code instead of compiled machine code.  And needed a GHz-class CPU to execute it at a reasonable speed.
 

Offline Crazy_Pete

  • Regular Contributor
  • *
  • Posts: 51
  • Country: us
Re: what is the most relevant programming language for ee?
« Reply #81 on: November 06, 2018, 05:29:04 am »
Just an aside, Java (despite the ignorance of those who wrote it) is not an OO language.    The level of encapsulation in Java is the Package, not the class.   Java was written by a guy who didn't understand the difference the in the first place and that has led to some weird java code.

That doesn't mean Java is a "bad" language or that you shouldn't use it.    In fact just as MOST programming is best done procedurally, a whole lot of code on top of that is best written using a package oriented language.     OOP really shines in highly complex programs or in very small programs that must be done with a minimum of footprint (like in MCUs.)

Xi Xi

Crazy Pete
Your enemies pray for a shovel but your own tongue will dig your grave... (Traveller Proverb)
 

Offline FrankBuss

  • Supporter
  • ****
  • Posts: 2375
  • Country: de
    • Frank Buss
Re: what is the most relevant programming language for ee?
« Reply #82 on: November 06, 2018, 05:44:59 am »
Just an aside, Java (despite the ignorance of those who wrote it) is not an OO language.    The level of encapsulation in Java is the Package, not the class.   Java was written by a guy who didn't understand the difference the in the first place and that has led to some weird java code.

Java has classes, which can be derived, have methods and member variables, polymorphism etc., and Java classes encapsulates members and methods if declared private (unless you access them with reflection, but this would be similar in C++ with direct memory access). Why do you say it is not object oriented?
So Long, and Thanks for All the Fish
Electronics, hiking, retro-computing, electronic music etc.: https://www.youtube.com/c/FrankBussProgrammer
 

Offline Crazy_Pete

  • Regular Contributor
  • *
  • Posts: 51
  • Country: us
Re: what is the most relevant programming language for ee?
« Reply #83 on: November 06, 2018, 06:11:32 am »

>Why do you say it is not object oriented?

Perhaps because i am an idiot? :-)   Honestly the last time i looked at Java was in a previous century.     Java may have changed its standard to be an Object Oriented Language after all.

The last time i looked at java, the level of encapsulation was at the package, not the class.   That is a protected Java member can be seen by OTHER members of it's Package, not just by members of it's Class or it's Descendant Classes.

In the semantics of Computer Science (with your permission of course, since this is a semantic argument anyway) that makes Java a package oriented language not an object oriented language.    Although that is a semantic difference, it makes Java fill a real large niche.    There are plenty of problems that are not complex enough to justify an object oriented language but too complex to use a procedural language.    The popular term for languages like Java back in the previous century was "Object Based."  Object Based languages (like Java) remain hugely popular simply because they are the best solution for a very large problem space.   The sad thing is most people aren't educated enough to know the difference between Procedural - Object Based - Object Oriented - Functional Programming and don't know which tool to use.

I am going to get flamed for this so i won't mention any specific libs but if you look at some of the more popular Java GUI frameworks, you will see this "Package Oriented" programming being used in a very powerful way.    (In GUI programming it is easier to simply give related window frames access to each other's internals rather than writing messenger / collaborator classes to transfer that information the way you would in an OO language.)

Thanks All
Crazy Pete
Your enemies pray for a shovel but your own tongue will dig your grave... (Traveller Proverb)
 

Offline Nusa

  • Super Contributor
  • ***
  • Posts: 2418
  • Country: us
Re: what is the most relevant programming language for ee?
« Reply #84 on: November 06, 2018, 06:40:00 am »
THIS is exactly why you should learn C++ and not learn C.  If you learn C you will find it impossible to learn C++ and waste time complaining about those who can.  If you learn C++ first you will not only have a more agile and open mind, but you will also be a better C programmer.

You're entitled to your opinion, but I don't agree that there's only one best path to follow. Best for you, perhaps, but not best for everyone.

My own path shows my age. I was actively using assembly, Fortran, Pascal and some others before C existed, I learned C before C++ existed, and yet I had no trouble grasping the fundamentals of C++. Perhaps it's because the last 30 years of bloat hadn't been added yet, and I could deal with that as it happened rather than being overwhelmed with it all at once.

As for editors, learn at least the basics of "vi". Simply because the editor is going to exist on nearly any non-windows system you walk up to, which means you can function on that system.
« Last Edit: November 06, 2018, 06:43:01 am by Nusa »
 
The following users thanked this post: Howardlong

Offline hendorog

  • Super Contributor
  • ***
  • Posts: 1635
  • Country: nz
Re: what is the most relevant programming language for ee?
« Reply #85 on: November 06, 2018, 06:44:00 am »
I didn't say I shouldn't use them, i said you shouldn't use them if you don't like them.  The fact that you find it distasteful to maintain code that you never learnt to write in the first place is not an argument for not learning in the first place.

This is why, when we were essentially forced to use Java for our software, I wrote it as though it was C.  I spent 16 years working with Java, and every time I declined to use the bloated, spaghetti-like coding style encouraged by Java mavens, I ended up with a simpler, easier to read program that tended to work first time.  The main thing wrong with OOP is that the proponents want to write it as though everything has to be an object - and that's not the case.  In many (most) cases, this just obfuscates the program and makes it harder to add to or update it.  Not to mention dragging in megabytes of libraries whether you need them or not.

Slapdash, lazy coding in C++ and Java is a big reason why code tended to get bigger and slower with every generation following C.  In the 1980s we wrote a skeleton operating system and three shared memory multiprocessing applications for a radar controller in less than a megabyte of code - running on a 5 MHz 8086.  Pretty much every "standalone" Java application I worked with 10 years later was bigger than that, despite it all being boiled down to interpreted byte code instead of compiled machine code.  And needed a GHz-class CPU to execute it at a reasonable speed.

I recall working on a C program written by a old and clever fellow who of course knew C was the dogs bollocks and of course I was a complete idiot as I wanted to use more modern stuff. This guy wrote the program and a few of us were given the heady task of typing it in for him.

This was a busy Friday night at a decent sized international airport and I had dropped in to drop something off or some very minor thing or other.
Anyway I just happened to notice on the UI of the baggage handling controller (this guy wrote) connecting and disconnecting repeatedly to the PLC.

This was bad as this program had to respond to the PLC with a destination lateral for the bag to be diverted to, and it had to do it pretty quickly.
If the bag didn't get a destination then it went to a manual encode station, and since this was Friday night it was busy and that guy would get swamped pretty quickly.

Being young, dumb and ignorant to the ways of the clipboard wielding twats of the world I thought I'd try and fix it.

As it happened I had snuck a copy of Boundschecker on the machine and had a brainwave to set a memory breakpoint on the PLC connection byte in the data structure. Shutdown the system - it was already screwed - restarted it under Boundschecker and setup the breakpoint.

Sure enough there was a memory overwrite from the prior byte and it was flipping the PLC connection byte on and off. Quickly I found the culprit in the code, fixed it and restarted. PLC connection was holding solid now and life was good. Apart from the sudden storming for the control room by 3 or 4 pissed off baggage handlers asking what the fuck I was doing and demanding to know why I was diverting all of the bags to manual encode.

I muttered something about bad data and its working now, and beat a hasty retreat.

So yeah, in summary, C might rock your world, but you may change your mind after being reamed by a few large baggage handlers on a Friday night.



 

Offline Crazy_Pete

  • Regular Contributor
  • *
  • Posts: 51
  • Country: us
Re: what is the most relevant programming language for ee?
« Reply #86 on: November 06, 2018, 07:08:58 am »
You are entitled to your opinion too.   Of course EVERY C programmer i have ever met never was able to make the jump to C++, they simply didn't know how to use  the language.   And everyone of them said the same thing.  "Well i am proof that your path is not for everyone because i started out in C and i obviously have no trouble with C++."  People who are born blind don't really know what it means to  "see".  :-)

Honestly though i think you are on the right track.  For starts the "Everything is an Object" is ridiculous and is why C++ is so powerful, everything is NOT an object.

Xi Xi

Crazy Pete
Your enemies pray for a shovel but your own tongue will dig your grave... (Traveller Proverb)
 

Offline FrankBuss

  • Supporter
  • ****
  • Posts: 2375
  • Country: de
    • Frank Buss
Re: what is the most relevant programming language for ee?
« Reply #87 on: November 06, 2018, 07:42:20 am »

>Why do you say it is not object oriented?

Perhaps because i am an idiot? :-)   Honestly the last time i looked at Java was in a previous century.     Java may have changed its standard to be an Object Oriented Language after all.

The last time i looked at java, the level of encapsulation was at the package, not the class. That is a protected Java member can be seen by OTHER members of it's Package, not just by members of it's Class or it's Descendant Classes.

This hasn't change since the first 1.0 Java Language Specification. There was always classes with private members. I know this, because I wrote a Java book 20 years ago :) You are right, "protected" means other classes in the same package can see it as well:

https://docs.oracle.com/javase/tutorial/java/javaOO/accesscontrol.html

Note that if you don't write any modifier, it can be seen by other classes in the same package, but not by derived classes. I'm not sure if this is very useful.
So Long, and Thanks for All the Fish
Electronics, hiking, retro-computing, electronic music etc.: https://www.youtube.com/c/FrankBussProgrammer
 

Offline bd139

  • Super Contributor
  • ***
  • Posts: 23099
  • Country: gb
Re: what is the most relevant programming language for ee?
« Reply #88 on: November 06, 2018, 08:23:46 am »
I’ve seen some crazy shit in my time but this thread has gone full slashdot.

Java not OO, C# because Microsoft couldn’t write a C++ compiler?

 :palm:

Corrections:

1. Java is and always was OO.
2. Microsoft provide a pretty good C++ compiler. When they kicked off .net it was pretty good too.
3. C# exists because there needed to be a higher level OO language for non systems programming.

On the last point, java/c# tend to hold a lot of the non systems programming type industries together and they are the only language platforms that you can scale to the size of problem domain due to the introspection support by IDEs and analysis tools.

Also java was written in C  :-DD
« Last Edit: November 06, 2018, 08:30:52 am by bd139 »
 

Offline Crazy_Pete

  • Regular Contributor
  • *
  • Posts: 51
  • Country: us
Re: what is the most relevant programming language for ee?
« Reply #89 on: November 06, 2018, 08:55:22 am »
Er you may find it "Silly" but nothing you say refutes these points in any way.   No Java is not an OO language for the reasons i stated.  It is an object BASED language.   That is actually a strength of the language when used properly.   C++ is an object ORIENTED language and that is a strength of the language when used properly.   Yes Java was written in C, yes Microsoft gave up on C++ and came out with C# because their C++ compiler was such a POS.   These are all facts.   Have you anything other than an emotional response to refute it?  OK you think it is silly, so do i.

Today, 30 years after the fact, Microsoft may write a "pretty good" C++ compiler, i'll never know nor care.   They obviously wrote C# because back in 2001 they couldn't even come close to a C++ compiler.    As a member of the ISO C++ standards committee said 18 years ago to a microsoft rep:   "What you are calling a C++  compiler simply doesn't compile C++".    Then they came out with C#.    Failing technically and then saying "Oh wait, we MEANT to do that, here it's a new standard" has been Microsoft's MO since day one.

Good lord i cannot believe i am getting dragged down into all this simply because i offered to help my Mothers son.  (Hatokay)  Sheesh :-)


Xi Xi
Crazy Pete
« Last Edit: November 06, 2018, 09:06:47 am by Crazy_Pete »
Your enemies pray for a shovel but your own tongue will dig your grave... (Traveller Proverb)
 

Offline Crazy_Pete

  • Regular Contributor
  • *
  • Posts: 51
  • Country: us
Re: what is the most relevant programming language for ee?
« Reply #90 on: November 06, 2018, 09:05:23 am »
Correction:

Your claiming it is so doesn't make it so.   You claiming that your "pronouncements" are fact contrary to all available evidence makes you religious.   In fact someone who "wrote a book on Java" 20 years ago just chimed in that i am correct about Java accessors.   (I actually wasn't sure anymore.)

Learn the difference between an object oriented language and an object based language and get back to us.   I am not even criticising Java, just pointing out the difference between a philips and a slotted screwdriver.   People chiming in with religious nonsense and ad-hominems doesn't change the fact.   (Butt-Hurt Bjarne, really?)

Who was the British female author who defined religion as "The tendency to adhere to beliefs contrary to fact for purely sentimental reasons"  ???  I am ashamed i forgot her name.   (She was a Sci Fi author, oddly enough.   As an aside the Sci Fi  genera was created by a woman [Mary Shelly = Frankenstein] and yet is a male dominated field.   How ironic. :-) )


Xi Xi

Crazy Pete
« Last Edit: November 06, 2018, 09:21:04 am by Crazy_Pete »
Your enemies pray for a shovel but your own tongue will dig your grave... (Traveller Proverb)
 

Offline tggzzz

  • Super Contributor
  • ***
  • Posts: 21225
  • Country: gb
  • Numbers, not adjectives
    • Having fun doing more, with less
Re: what is the most relevant programming language for ee?
« Reply #91 on: November 06, 2018, 09:08:44 am »
I’ve seen some crazy shit in my time but this thread has gone full slashdot.

... to the extent it is difficult to distinguish from trolling. At least the OP (if they are still reading) will start to learn that some people's opinions are best ignored.

Quote
3. C# exists because there needed to be a higher level OO language for non systems programming.

C# came into existence principally because MS was losing mindshare to Java. In attempting to move into the OS arena, they had to introduce the "unsafe" keyword. In avoiding HotSpot patents they opted for ahead-of-time (partial) optimisation which has to be done on every machine as part of the installation process - with obvious consequences.

Why do I say that with some confidence? Because I remember being at a talk (in HPLabs) by Anders Hjelsberg shortly before C# was unleashed on the world. Everybody at the meeting was underwhelmed with Hjelsberg's responses, and I don't think anybody bothered to evaluate C# seriously. (And yes, they could easily have chosen to do so).
« Last Edit: November 06, 2018, 09:23:57 am by tggzzz »
There are lies, damned lies, statistics - and ADC/DAC specs.
Glider pilot's aphorism: "there is no substitute for span". Retort: "There is a substitute: skill+imagination. But you can buy span".
Having fun doing more, with less
 
The following users thanked this post: Howardlong

Offline tggzzz

  • Super Contributor
  • ***
  • Posts: 21225
  • Country: gb
  • Numbers, not adjectives
    • Having fun doing more, with less
Re: what is the most relevant programming language for ee?
« Reply #92 on: November 06, 2018, 09:21:16 am »
No Java is not an OO language for the reasons i stated.  It is an object BASED language.

OK; you are clearly the master of words in the sense  “When I use a word,” Humpty Dumpty said, in rather a scornful tone, “it means just what I choose it to mean—neither more nor less.” ... “The question is,” said Humpty Dumpty, “which is to be master—that's all.” ATTRIBUTION: LEWIS CARROLL (Charles L. Dodgson), Through the Looking-Glass, chapter 6, p. 205 (1934).

If you wish to communicate with others, it helps if the words have a common shared meaning. Currently your definitions are different to the common meaning.

Quote
They obviously wrote C# because back in 2001 they couldn't even come close to a C++ compiler.

That's completely wrong, for the reason I mentioned in my previous message.
There are lies, damned lies, statistics - and ADC/DAC specs.
Glider pilot's aphorism: "there is no substitute for span". Retort: "There is a substitute: skill+imagination. But you can buy span".
Having fun doing more, with less
 

Offline GeorgeOfTheJungle

  • Super Contributor
  • ***
  • !
  • Posts: 2699
  • Country: tr
Re: what is the most relevant programming language for ee?
« Reply #93 on: November 06, 2018, 09:34:45 am »
For embedded it's C, more C, with a bit of assembly occasionally.

My favourite, default general purpose language and programming environment is only a keystroke away: command-alt-i , comes with a great debugger too! Do not under estimate the power of the Java-Scripts :-)
The further a society drifts from truth, the more it will hate those who speak it.
 

Offline Crazy_Pete

  • Regular Contributor
  • *
  • Posts: 51
  • Country: us
Re: what is the most relevant programming language for ee?
« Reply #94 on: November 06, 2018, 10:05:07 am »
>“When I use a word,” Humpty Dumpty said, in"

Hahahah!!!!!  Actually my last name is "Garner".   Do you know any adult male Garners that outrank me?   Then, per the treaty of Rouen,  i do GET to decide what the English language means!

As an historical aside, weirdly enough:   The Modern English Language is based on Norman and when the Normans defeated Charlemagne at Rouen, one of the conditions was that we had the last word on how our language is spoken.   (I usually only bring that up when an English Major tries to correct my spoken English.  But that actually is the historical reason why English is a DESCRIPTIVE language and French is a PRESCRIPTIVE language.)    In fact the Humpty Dumpty thing is your only saving grace.    In common usage MOST PEOPLE when asked would say "Well Yeah, Java is an OBJECT ORIENTED language."   Although technically and semantically untrue, you could argue that because English is a DESCRIPTIVE language it is proper to call Java an Object Oriented Language.

See that proves i am a Norman.    You are losing the argument so badly because you don't even know how to use your own weapons.  (Personal Attacks and Nursery Rhymes) and i step back and say "Hark!   Thou hast dropped thy sword good sir!  Here, let me fetch it for thee and teach thee to swing it.  There back in thine hands now, we shall resume?"  :-)

This is getting really funny even if way off topic.

In fact, i can quote myself:

"In the semantics of Computer Science (with your permission of course, since this is a semantic argument anyway) Java is a PACKAGE ORIENTED LANGUAGE"

So i come out and say that it is an irrelevant and semantic argument.   The only reason it is on topic is because the STRENGTHS of Object Based Languages make them a good choice for a HUGE problem domain.  (Which was the OP's original question.)

So i make an aside and admit it is semantics, but point out that semantics aside, Object Based Languages are valuable.   And lacking any facts you have to turn to Nursery Rhymes?    At least i can turn to Historical Fact and admit that i am being totally tongue in cheek in doing so.   (Well at least I think its funny!)  I said in actuality Java is a PACKAGE based language.   In common usage   English, Java is one of a large series of OBJECT BASED languages.  For certain tasks Object Based Languages are preferable.   In pedantically correct English, Java is a Package Oriented Language.  That is not a criticism, just a fact.   There are certain tasks when that is even preferable.   Java also seems to be a great teaching language.   It just isn't an object oriented language because it supports encapsulation and inheritance at the PACKAGE level.    Looking on the bright side, in the OLDEN DAYS, religious people used to burn us at the stake for being right.   :-)

Xi Xi
Crazy Pete


« Last Edit: November 06, 2018, 10:23:28 am by Crazy_Pete »
Your enemies pray for a shovel but your own tongue will dig your grave... (Traveller Proverb)
 

Offline bd139

  • Super Contributor
  • ***
  • Posts: 23099
  • Country: gb
Re: what is the most relevant programming language for ee?
« Reply #95 on: November 06, 2018, 10:36:33 am »
Java is an object-oriented language.

The defining characteristics of an object-oriented language are polymorphism, inheritance and encapsulation all of which Java support and allow you to strictly enforce. There are many mechanisms in which you can build this which is probably where your understanding breaks down here. The point being that whether they are classes, prototypes or actors, it's still object-oriented by definition.

Package orientation is an organisational concept rather than a language structure. This is a meta-system outside of the language implementation.

I think you have your arse and your mouth confused.
 

Offline tggzzz

  • Super Contributor
  • ***
  • Posts: 21225
  • Country: gb
  • Numbers, not adjectives
    • Having fun doing more, with less
Re: what is the most relevant programming language for ee?
« Reply #96 on: November 06, 2018, 10:45:22 am »
Xi Xi
Crazy Pete

I've not bothered to quote your rant, since it is too bizarre and rambling to merit a response.
There are lies, damned lies, statistics - and ADC/DAC specs.
Glider pilot's aphorism: "there is no substitute for span". Retort: "There is a substitute: skill+imagination. But you can buy span".
Having fun doing more, with less
 

Offline tggzzz

  • Super Contributor
  • ***
  • Posts: 21225
  • Country: gb
  • Numbers, not adjectives
    • Having fun doing more, with less
Re: what is the most relevant programming language for ee?
« Reply #97 on: November 06, 2018, 10:49:44 am »
I think you have your arse and your mouth confused.

Oh, that's a little impolite. OTOH since I'm pretty deaf, if I could see him I would ask him to stand up.
There are lies, damned lies, statistics - and ADC/DAC specs.
Glider pilot's aphorism: "there is no substitute for span". Retort: "There is a substitute: skill+imagination. But you can buy span".
Having fun doing more, with less
 

Offline bd139

  • Super Contributor
  • ***
  • Posts: 23099
  • Country: gb
Re: what is the most relevant programming language for ee?
« Reply #98 on: November 06, 2018, 10:51:59 am »
I'm sure you could hear him with all that caps lock :)

Quote
3. C# exists because there needed to be a higher level OO language for non systems programming.

C# came into existence principally because MS was losing mindshare to Java. In attempting to move into the OS arena, they had to introduce the "unsafe" keyword. In avoiding HotSpot patents they opted for ahead-of-time (partial) optimisation which has to be done on every machine as part of the installation process - with obvious consequences.

Why do I say that with some confidence? Because I remember being at a talk (in HPLabs) by Anders Hjelsberg shortly before C# was unleashed on the world. Everybody at the meeting was underwhelmed with Hjelsberg's responses, and I don't think anybody bothered to evaluate C# seriously. (And yes, they could easily have chosen to do so).

That's a fair assertion. The main problem was that they were losing Visual Basic market share to something else at the time. Pre-.Net Visual Basic sucked badly (post-.Net slightly less but still sucks). It wasn't a modern language really. Thus they needed something competitive. What with the whole J++ disaster they were looking pretty bad then. The original .Net 1.0 and 1.1 releases were pretty poor (better than Visual Basic) but the moment they stepped on the generics, without the whole boxing problem inside the JVM, with .Net 2.0 things were looking up.

If they had done then what they are doing now with .Net Core, I reckon Java would be dust.



Back on topic, the main point is pick the path of least resistance and go with the flow when dealing with any task or platform.
 

Online brucehoult

  • Super Contributor
  • ***
  • Posts: 4767
  • Country: nz
Re: what is the most relevant programming language for ee?
« Reply #99 on: November 06, 2018, 10:52:04 am »
Just an aside, Java (despite the ignorance of those who wrote it) is not an OO language.    The level of encapsulation in Java is the Package, not the class.   Java was written by a guy who didn't understand the difference the in the first place and that has led to some weird java code.

Accusing James Gosling of being just some guy ignorant of what OO is is ... just ... incredibly uninformed. Words fail me.

I'll just say this: object-orientation and encapsulation are ABSOLUTELY ORTHOGONAL CONCEPTS.
 


Share me

Digg  Facebook  SlashDot  Delicious  Technorati  Twitter  Google  Yahoo
Smf