Discuss Second programming language in the Beginner Programming forum on Dev Shed. Second programming language Beginner Programming forum discussing problems and solutions for just about any issue. Experienced programmers offer their help to those just starting out.
Posts: 2
Time spent in forums: 5 h 37 m 20 sec
Reputation Power: 0
Second programming language
I've been working on C++ for the past few months, and I'd like to get a start on another language when I have some downtime. What would be a good second language to follow/complement C++?
"They that can give up essential liberty to obtain a little temporary safety deserve neither liberty nor safety." -Benjamin Franklin
"The greatest tragedy of this changing society is that people who never knew what it was like before will simply assume that this is the way things are supposed to be." -2600 Magazine, Fall 2002
Posts: 62
Time spent in forums: 1 Day 52 m 17 sec
Reputation Power: 2
I like assembly, and if you like messing about with logic gates you should give it a try.
Here is a MIPs processor simulator - the MIPs processor was used in the Sony PSP and is quite a nice processor as it's kind of like a cross-bred 68000 and 6502 chip.
Java is fine too, but try them all. The more you try, the better :-)
Posts: 62
Time spent in forums: 1 Day 52 m 17 sec
Reputation Power: 2
Quote:
Originally Posted by E-Oreo
Sql
From what I understand, Sql isn't a programming language, it is a query language, like HTML is a mark-up language.
Sql is also quite difficult especially at the theoretical stage as you may learn relational algebra, whereas C derived languages are much easier at this level.
Posts: 2
Time spent in forums: 5 h 37 m 20 sec
Reputation Power: 0
I've actually played around with assembly in an introductory Computer Science course. We used the Pep/8 simulator. Once I got the hang of it, it was a strange sort of fun. I might check that out. Thanks.
Posts: 3,874
Time spent in forums: 1 Month 2 Weeks 1 Day 17 h 30 m 25 sec
Reputation Power: 2569
Quote:
Originally Posted by Shaun_B
From what I understand, Sql isn't a programming language, it is a query language, like HTML is a mark-up language.
Sql is also quite difficult especially at the theoretical stage as you may learn relational algebra, whereas C derived languages are much easier at this level.
Regards,
Shaun.
I would say that a database language would go hand-in-hand with a programming language as a basis for a new developer.
Posts: 62
Time spent in forums: 1 Day 52 m 17 sec
Reputation Power: 2
Quote:
Originally Posted by Winters
I would say that a database language would go hand-in-hand with a programming language as a basis for a new developer.
That's correct, so I'd suggest learning PHP as you'll learn SQL as well... however, SQL by itself isn't programming, it's relational algebra in computer form.
Posts: 9,811
Time spent in forums: 2 Months 3 Weeks 19 h 13 m 52 sec
Reputation Power: 6112
You don't have to learn PL/SQL (the programming language) but SQL is still a language and still something you need to know. While it's not technically a "programming language" on the big imaginary venn diagram, it's a great suggestion, and complex enough that you can't just assume you'll be able to figure it out.
Posts: 7,947
Time spent in forums: 2 Months 10 h 37 m 24 sec
Reputation Power: 7053
SQL isn't easy, but it is useful. Also it isn't really that much more difficult than assembly, it's just a step in the opposite direction.
Most database-specific implementations of SQL are turing complete, which is usually the most basic requirement for something to be considered a full programming language. Not that you would want to use it for most algorithms though.
However, a vast majority of non-trivial programs need to use a database of some type, and SQL databases are extremely popular, not only for web applications, but also for desktop and embedded applications. I can't imagine anything that would complement a normal programming language better even if you don't consider SQL to be a full language itself (it's certainly not a normal language).
PHP has strong roots in C though, so you would probably find yourself right at home with it. However, you would not normally find yourself building a PHP+C application, while you could easily find yourself building a C+SQLite application or a PHP+MySQL application.
If your goal is web development, then look at PHP or another scripting language first; they tend to have easier to use SQL adapters than C.
Last edited by E-Oreo : October 28th, 2012 at 07:04 PM.
Posts: 62
Time spent in forums: 1 Day 52 m 17 sec
Reputation Power: 2
Quote:
Originally Posted by E-Oreo
SQL isn't easy, but it is useful. Also it isn't really that much more difficult than assembly, it's just a step in the opposite direction.
I'd say SQL is, at least at first, extremely difficult. As a programmer, I couldn't get my head around normalisation - if I had a problem with repeating data, I'd want to compress that data. Normalisation didn't 'click' with me until I wrote a 2D space-shooter type game, how would I allow certain ships to be at the same X/Y location and determine the type of ship and the order in which it's drawn etc...? Then all of a sudden, 3rd form normalisation magically made sense.
Quote:
Most database-specific implementations of SQL are turing complete, which is usually the most basic requirement for something to be considered a full programming language. Not that you would want to use it for most algorithms though.
I seem to remember something which says that if a computer can play you at chess, it passes the Turing test. So, the MOS KIM-1 (1976) and Sinclair ZX81 (1981) pass this test because a simple Chess program was implemented on both in just 1K of RAM.
Regards,
Shaun.
Last edited by Shaun_B : October 29th, 2012 at 07:52 AM.
Posts: 1,759
Time spent in forums: 1 Month 2 Weeks 2 Days 3 h 38 m 3 sec
Reputation Power: 1568
Playing chess as passing the Turing Test? That doesn't sound right. The whole point of the Turing Test is that the AI's statements and responses are indistinguishable from a human might reasonably make. Chess is far too focused and limited a venue for that.
However, it is somewhat irrelevant, as 'Turing-complete' does not refer to the Turing Test, which is a hypothetical means for determining whether an artificial intelligence program is in fact sentient. 'Turing-complete' refers to the ability to compute the same range of computations as a Universal Turing Machine, a simple (and decidedly non-sentient) abstract machine capable of performing any computable result. 'Turing-complete' is usually considered the minimal requirement for a practical programming language, as it shows that it is capable of performing any computable result. A lot of things are Turing-complete - including Game of Life, Minecraft, the programming languages BrainF**k and Unlambda, and even the card game Magic: The Gathering are capable of simulating a UTM, but would not be considered very expressive as far as programming goes.
FOR SALE: One ShapeSystem 2300 CMD, extensively modified for human use. Includes s/w for anthro, transgender, sex-appeal enhance, & Gillian Anderson and Jason D. Poit clone forms. Some wear. $4500 obo. tverres@et.ins.gov