i am a beginner (i think so) and want to make a project so that i can impress a recruiter for placements and that should be a big one like you told a compiler..but i have no idea how to work for such big projects..
I thought of making a crawler .... what do you think about that sir?
If you're a beginner, a compiler might be too much.
I have never made a web crawler, so I wouldn't know.
Also, how much time do you have for the project.
Another thing, you posted in "Unix/Linux Programming" a question which is neither related to Linux nor a specific programming problem. You should move it to "Lounge". You may get more replies there too. You can move you thread through "edit topic" button.
A compiler is not much of a problem if you keep the language simple. A compiler for an assembler-like language with basic control structures (if and loops) can be done by a beginner - at least if you're content with compiling to bytecode and writing a simple virtual machine to execute it. Compiling to native binaries that can be run by your OS is a bit more tricky.
Once you get the feel for it, you should be able to add functions and variables to your language too.
A crawler is also interesting, as you'll have to think about how to manage the frontier (the URLs that you have yet to visit) efficiently, which can quickly reach billions of URLs. You'll have to account for storage and sensible selection of which URLs to crawl first.
A proper compiler is very easy to create. That is, if you're well-versed in the language you'll be writing it in, if you have a good understanding of how to do lexing/parsing, if you're familiar with the libraries you'll be using, and if you have a mind that you can wrap around simple tasks (such as transforming a parse tree into a different language). :P
If one chooses an assembler-like language, one can parse the code in a naive way, operating on one line at a time, thus making things rather easy.
Most lines will translate to a single instruction, minus a few keywords such as if/else/while, which can also be translated into a sequence of instructions in a straightforward way.
I wrote such a compiler when I was still relatively new to programming and when I didn't know a single thing about compiler construction, which is why I don't think it's that much of a problem for a beginner.
guys I have done all these things above I know them very well... but I have never done projects big enough....
never even made a single one....in last 4 years am with this language....
i have done no project ever...
the reason i think i have never done any project so far is that .. i never worked on it .. i am a fool .. seriously ..
wait i dont know abt STL... (Standard Template Library)..
The STL is an important part of the language, so if it's really true that you don't know any parts of the STL, you don't know any C++ at all.
It is also imperative that you work on projects while you learn. I'd say it's hard to even get a basic grasp of a language without actually using it, even after years. With that in mind, you should do some reading first.
See Grey Wolf's reply in this thread for a good recommendation of what to read: http://www.cplusplus.com/forum/lounge/44380/