C++, C++/CLI and ObjC these days. Java at school mostly.
C++, C++/CLI and ObjC these days. Java at school mostly.
M.Eng Computer Engineering CandidateB.Sc Computer Science
Robotics and graphics enthusiast.
(As I think many of you would know by now...) About 90% of my code these days is written in Haskell. I also use a bit of C too since it's tremendously helpful sometimes.
I use lots of languages on the side, though - recently I've been investigating clojure (http://clojure.org), which is a lisp that is very nicely integrated with the JVM - you get access to the abundance of java code out there, but you can write in a nice, fairly clean lisp that embodies functional and concurrent programming (and the benevolent dictator of this project seems very dedicated to making it work and be pragmatic.) If you have to work with the JVM and want to try something, it's pretty enjoyable. :]
operating systems: mac os 10.6, debian 5.0, windows 7
editor: back to emacs because it's more awesomer!!
version control: git
website: http://0xff.ath.cx/~as/
It would make sense if you are programming in whitespace
Not everything that can be counted counts, and not everything that counts can be counted
- Albert Einstein.
No programming language is perfect. There is not even a single best language; there are only languages well suited or perhaps poorly suited for particular purposes.
- Herbert Mayer
I know C/C++, several flavors of BASIC, and assembly for a couple dozen microprocessors and microcontrollers (80x86, 6800 series, 6500 series, 8501, even some really old ones like the 4004. Ive also designed and built my own processors out of decrete logic. I know industry has this impetus to drive programmers to learn higher and higher level languages, but honestly, I think that is the wrong direction, regardless of all the perfectly logical arguments for it. Some things are just wrong no matter how much you can justify them.
> several flavors of BASIC
You must mean "sub-flavors", because there's only one true flavor of BASIC and that's "poo flavored".
> I think that is the wrong direction, regardless of all the perfectly logical arguments for it.
So do I... well it depends on the task. But I do see a big window that could be opening up when the oldies retire and there aren't enough "low-level" programmers to maintain code or work with mainframes and alike. But that's my secret so I can get all the money and chicks in a few years.
>> I know industry has this impetus to drive programmers to learn higher and higher level languages, but honestly, I think that is the wrong direction, regardless of all the perfectly logical arguments for it. Some things are just wrong no matter how much you can justify them.
Well, assembly language certainly has it's place (optimizations, utilizing processor-specific extensions, etc), but it just isn't practical for developing large programs, IMO.
Code:#include <cmath> #include <complex> bool euler_flip(bool value) { return std::pow ( std::complex<float>(std::exp(1.0)), std::complex<float>(0, 1) * std::complex<float>(std::atan(1.0) *(1 << (value + 2))) ).real() < 0; }
I think it is important to understand what you are looking at in assembly. Believe it or not there are some issues that I've had to address professionally that required me to pour through some assembly and find out what was going on even though assembly is not a requirement.
I would never develop in assembly but it sure helps with debugging or when the compiler generates some crazy code to do something extremely simple. I know compilers are great and awesome and these days they are near 'perfect' but if you actually look at some of what they spit out in the end you might be surprised by what you find.
Granted, but I'm not suggesting everyone use nothing but assembly, only that C/C++ is as high level as we really need. You realyl cant abstract the thought process any more than that. But it seems they want to create a language than non-programmers (realyl people who cant pogram) can use to program which is a bit of a daft notion. For one, the ability to program in any language substantially makes you a programmer of some sort. Secondly, you will never come up with any programming language that doesnt require the capacity for abstract thought, so programming will never be a job that 'the masses' can do. While it doesnt necessarily take abstract thought to learn a language, it is required to effectively apply that knowledge.
Last edited by abachler; 12-24-2008 at 11:58 AM.