what paradigm is assembly language? I can't find anything about this. I assume it doesn't have one?
when is it considered you have learned a programming language? Does the standard library count?
how do you do logic programming in C or C++ without a library?
For example I've been looking into functional C++, functional C, and Object Oriented C, all have given me a lot of insight. Are there any other paradigms possible?
should i have a solid C background before getting into winAPI?
I feel as though I already know C since its a small language, since
I've been doing alot of c++, and i understand the differences
Maybe assembly languages are Imperative Programming languages?
I think most people can say "I know C++" comfortably when they've learned something near to all of what's in the Documentation section of this website, and know their way around the STL. But knowing the language is one thing and being able to program is another, in my opinion.
I don't think C++ is a logic programming language, so you'd need to develop libraries for that.
I know a little about the WinAPI. I feel you should understand C reasonably before starting WinAPI because it is designed for C, but just knowing C++ won't cause you too much extra confusion. When I say 'knowing C', I mean being able to program like you would in C; using C-strings, all manner of pointers, structs, etc..
I found this from a draft by Frank Pfenning titled "Logic Programming":
To understand logic programming, we first examine the difference between computation and deduction. To compute we start from a given expression and, accoding to a fixed set of rules (the program) generate a result. For example, 15 + 26 -> (1 + 2 + 1)1 -> (3 + 1)1 -> 41. To deduce we start from a conjecture and, according to a fixed set of rules (the axioms and inference rules), try to construct a proof of the conjecture. So computation is mechanical and requires no ingenuity, while deduction is a creative process. For example, a^n + b^n != c^n for n > 2, ... 357 years of hard work ...
A first observation is that computation can be seen as a limited from deduction because it establishes theorems. For example, 15 +26 = 41 is both the result of a computation and a theorem of arithmetic. Conversively, deduction can be considered a form of computation if we fix a strategy for proof search, removing the guesswork (and the possibility of employing ingenuity) from deductive process.
The latter idea is the foundation of logic programming. Logic program computation proceeds by proof search according to a fixed strategy. By knowing what this strategy is, we can implement particular algorithms in logic, and execute the algorithms by proof search.
Now, having read this, I quote from wikipedia:
Logic programming is, in its broadest sense, the use of mathematical logic for computer programming. The defining feature of logic programming is that sets of formulas can be regarded as programs and proof search can be given a computational meaning.
So what I understand is that in logic programming, instead of programming the computational operations, you focus on programming a set of rules (I think you can call them axioms and theorems) that the computer will use to deduct the results. However, I've never use logic programming so I may be wrong.