![]() |
Re: OT: One-color Lava Lamp
C++ is easy? It's a whole lot harder than Visual Basic.
|
Re: OT: One-color Lava Lamp
Compared to languages like COBOL, FORTRAN, LISP, etc., C++ is quite easy to work with. A huge number of modern languages (Java, Python, C#, PHP, Delphi, etc.) are based off of C++, so you get the advantage of getting a head start on them as well...
|
Re: OT: One-color Lava Lamp
C++ in concept is very simple. You set varibles, then do various operations on them with functions. In practice, however, it can get complex. The hardest part I believe is remembering the functions, as well as 'thinking' in C++. There are many functions to interact with the user, and those can be difficult to work with at times. Also, programming forces you to think in other directions than you're used to. It took a bit of work to get that program to cycle the colors. I had a varible that told the program what colors it needs to decrease or increase.
|
Re: OT: One-color Lava Lamp
I just started a C++ class. Had my first class Monday. Yay me. http://forum.shrapnelgames.com/images/smilies/happy.gif
|
Re: OT: One-color Lava Lamp
I learn C++ by myself. No class for me http://forum.shrapnelgames.com/images/smilies/laugh.gif
|
Re: OT: One-color Lava Lamp
Quote:
In general, there isn't really much of a difference between programming languages. Sure, some have some syntax that make it a little more difficult (think assembly, etc). Some come with built-in libraries to handle the more complicated stuff (think Visual BASIC, etc.). But in the end, just about every language is Turing-equivalent, which means anything you can do on a Turing Machine, you can do with the language. Just don't try to program a Turing Machine, that's a nightmare (think assembly is to Turing as VB is to assembly). In the end, the choice usually comes down to the factors of how much time you have, what platform the program is on, and the "expected lifespan" of the code. |
Re: OT: One-color Lava Lamp
What's a Turing Machine?
I've heard of the Turing Test, but never a Turing Machine. |
Re: OT: One-color Lava Lamp
Turing Machine is a theoretical computer. As far as I know, an actual Turing Machine does not exist, only machines that are equivalent to it (in the mathematical sense). I guess it would be possible to build one, but it would be highly inefficient. It's called a Turing Machine after Alan Turing, who thought it up while doing cryptography work for Britain in WWII.
The following should be sprinkled liberally with "IIRC"... it's been a while since I've looked at the specifics of Turing machines: Basically, you have a set of "states", denoted by Q, and an "alphabet", denoted by a capital gamma. The alphabet has at least two "symbols", of which one is the "empty symbol", usually "0". The states are initialized to one of the symbols in the alphabet. A state "s" existing in Q is called the "start state", and a set of states F exists in Q denoting "final states". Finally, there is a function denoted by lowercase delta that maps actions to be taken with this Turing Machine. You start in s (the start state), and keep going until you get "stuck" in a state; if this state is a "final state", that's your answer, otherwise the answer is undefined. So, for example, you start in s, which holds the symbol "a". Delta maps s and "a" to 'change current state symbol to "b", move to state s3'. And you would keep going until you reach a point where you loop in a single state forever, or reach some condition, etc. It all depends on the specific definition you use. The point of the whole thing is that anything your computer can do, or any computer, a Turing Machine can do. A corollary is that what any one computer can do (compute), any other computer can as well. So, the first electronic computer, ENIAC, could have done exactly the same calculations as the world's fastest supercomputer now. The only difference is it would be a bit harder to tell ENIAC to do the same thing as the supercomputer, and ENIAC would be a lot slower. But the idea is, it is theoretically possible for that to happen. So, Turing-equivalence basically means that you can translate any program into pure mathematics, and vice versa, and thus any way of programming can accomplish exactly the same thing as any other way of programming. However, hardly anyone is insane enough to do the translation that way. It's like doing mathematics entirely within the space of Russel's conversion of arithmetic to logic, where proving that 2 + 2 = 4 takes 21969 steps, including all the subtheorems, etc. used to get there. |
Re: OT: One-color Lava Lamp
Don't know what Russel's conversion is, but I get your point.
I can prove that 2 + 2 = 4 with 4 peas. 2 peas here. 2 peas here. Put them together and get 4 peas. A pre-schooler can understand that, if their parents have been teaching them. However, as I understand your point, to unravel all the impulses from start to finish would take a long time. (Read somewhere that it takes millions of calculations just to move your little finger - Don't know how true that is). |
Re: OT: One-color Lava Lamp
C++ is easy, believe me... wait till you try doing assembly (or even just the raw machine bytes...), or COBOL.
C++ is easy, because you can do easy C stuff. After some basic procedural stuff, moving on to simple objects is easy enough. Pointers are easy enough, but for some reason people get them wrong... Anyhow, starting C++ is easy. Understanding the high level ideas is harder. |
All times are GMT -4. The time now is 06:24 PM. |
Powered by vBulletin® Version 3.8.1
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Copyright ©1999 - 2025, Shrapnel Games, Inc. - All Rights Reserved.