Hello and welcome to our community! Is this your first visit?
Register
Enjoy an ad free experience by logging in. Not a member yet? Register.
Page 1 of 2 12 LastLast
Results 1 to 15 of 22
  1. #1
    Regular Coder
    Join Date
    Jun 2003
    Location
    California
    Posts
    231
    Thanks
    0
    Thanked 0 Times in 0 Posts

    Question Assembly..the key to all languages

    ...or so i was told..

    I'll be in college in june and I wanted something real basic at first like assembly and work my way up to more complex languages like c or c++ when i become more experianced. I was told and please tell me if i am wrong, but assembly is the "key" to any language..if someone can learn assembly then they can learn any language...again, tell me if i'm mistaken. I am learning how to count in binary and hex, but is there anything else that you would recommend as far as skills or anything?..thanks

  • #2
    Master Coder
    Join Date
    Feb 2003
    Location
    UmeŚ, Sweden
    Posts
    5,575
    Thanks
    0
    Thanked 83 Times in 74 Posts
    I think you're beginning in the wrong end. It would be better if you began with higher level programming, I think, and then worked yourself down. The binary and hex thinking will become more and more important as you get closer and closer to the machine, but the actual thinking is easier in the more advanced languages. Now I should mention that I think C/C++ to be pretty low level, and that you should probably begin with a somewhat higher level language, such as Python, Ruby, Scheme, JavaScript, ML, Haskell. Don't start with Java though - it's high level, but it's conceptually C/C++ dropping the more low-level parts, and not adding much on it's own.

    In assembly, you must think of what the processor should do. You must yourself convert an idea from a conceptual plan, an algorithm or a set of algorithms, into something that the processor can handle, and you must yourself make sure that eavrything works as intended once there, and that the way back into a concretisised program that the user can interface with works. The higher level languages take care of some of that for you. The really high level languages takes care of almost everything of that for you, and you can concern yourself more with the actual task you want handled.

    As I said, I think working your way top down instead of bottom up is a better choice for learning.
    Last edited by liorean; 01-16-2004 at 09:14 PM.
    liorean <[lio@wg]>
    Articles: RegEx evolt wsabstract , Named Arguments
    Useful Threads: JavaScript Docs & Refs, FAQ - HTML & CSS Docs, FAQ - XML Doc & Refs
    Moz: JavaScript DOM Interfaces MSDN: JScript DHTML KDE: KJS KHTML Opera: Standards

  • #3
    Senior Coder Mhtml's Avatar
    Join Date
    Jun 2002
    Location
    Sydney, Australia
    Posts
    3,531
    Thanks
    0
    Thanked 1 Time in 1 Post
    Yeah liorean is right (of couse he's right, he's always right) ... Myself I would suggest BASIC to start, Python is ok but it's a lot more complex (or at least can be) whereas you will be limited easily by BASIC, boundaries are good when beginning because they make you think of how you can do something and this develops good algorithm skills.
    Omnis mico antequam dominus Spookster!

  • #4
    jkd
    jkd is offline
    Senior Coder jkd's Avatar
    Join Date
    May 2002
    Location
    metro DC
    Posts
    3,163
    Thanks
    1
    Thanked 18 Times in 18 Posts
    BASIC? No, BASIC is harmful. Scheme or Python I think make good first languagesl

  • #5
    New Coder
    Join Date
    Jul 2003
    Location
    Angier, NC
    Posts
    30
    Thanks
    0
    Thanked 0 Times in 0 Posts

    Internet Explorer

    Personaly, I learned in Javascript first. It has a lot of benefiets, such as the fact that you dont have to re-compile every time you change the program, and you can work in an enviornment that a "newbie" may be more comfortable with, as opposed to a tool like EMACS for C++. Also, Javascript comes stock with virtually every internet browser, so there is no confusion about installation, or configuration. In fact, there is no setup required at all, making it easy for a newbie programmer to get started. Lastly, it has many of the features that you will find in ANY programming or scripting language, such as IF/ELSE statements, FOR loops, and the like. If you want a GREAT tut on Javascript, I would DEFFINIATLY recommend that you check out www.webmonkey.com.
    Last edited by soccerdvy; 01-20-2004 at 02:32 AM.
    No matter what happens, someone will find a way to take it too seriously -- Joe Davy

    www.axiscreations.com

  • #6
    Regular Coder
    Join Date
    Jun 2003
    Location
    California
    Posts
    231
    Thanks
    0
    Thanked 0 Times in 0 Posts

    Question

    I always thought of C/cpp as a high level languages..at least thats what all the books say. I have learned a bit of python and I personally think its better than javascript because in order to input data, you have to have to make html forms and then link'em..and for some reason i always have a problem with that..but i do know that JS and c/cpp have a very similar syntax..so i guess if i can learn c/cpp..then javascript is should not be that hard for me.

    i have another question..is a high level language determined by how hard or easy the syntax is?..because i found python to be alot more simpler to learn than javascript in many ways..so in my possible incorrect theroy..python would be a low level language...But i trust that you guys are right, you know more than me

  • #7
    Master Coder
    Join Date
    Feb 2003
    Location
    UmeŚ, Sweden
    Posts
    5,575
    Thanks
    0
    Thanked 83 Times in 74 Posts
    Traditionally, "high level language" ment an abstract language (ie. a language that does not directly convert into machine code), while 'low level language' meant a language that converted directly into machine code. A low level language can always be reconstructed from the machine code it generates at compilation.

    Nowadays, the scale is going up. Basic, C, COBAL, FORTRAN, Pascal might have been high level, but today there are many languages that are far higher level. C++ adds a bit to C, being object oriented among other things. Objective C adds another kind of object orientation and some level of automatic garbage collection. Java is not only object oriented but also object based and has full automatic garbage collection. Ruby and Python takes the step even longer, and adds some object oriented features from among others SmallTalk, and CLOS. They also both take features from functional and logical programming languages, such as proc blocks and closures. Ruby adds an object based model that is quite a lot more profound than that found in almost oll other languages. The functional languages such as LISP were already pretty high level when C/C++ took over the scene, and are today about the highest level languages you can find. Then there's a few other paradigms that you could talk about, but I've covered the largest groups of languages.

    JavaScript comes in there right among the functional/object based/object oriented languages. It's got a syntax that closely resembles C/C++, but belongs more with the functional than the imperative paradigm. Same goes for Python. Ruby is a bit more imperative, others are a bit more functional. They aren't the best performance languages around, but they are abstracted to be more powerful than the lower level languages. They are pretty easy to learn, but have more or less hard-to-grasp syntax for the more powerful features. Don't be fooled to think that JavaScript would be a less useful language than the others in this group - JavaScript, especially the upcoming JavaScript2 version of the language, is very much a full feathered programming language, and has been optimised a lot more than for example Ruby has been. The problem with JavaScript is that the spec only covers the basic language and the syntax - there are no standard libraries for it. However, if you are in a good host environment, you have that fixed for you.
    liorean <[lio@wg]>
    Articles: RegEx evolt wsabstract , Named Arguments
    Useful Threads: JavaScript Docs & Refs, FAQ - HTML & CSS Docs, FAQ - XML Doc & Refs
    Moz: JavaScript DOM Interfaces MSDN: JScript DHTML KDE: KJS KHTML Opera: Standards

  • #8
    Regular Coder
    Join Date
    Jun 2003
    Location
    California
    Posts
    231
    Thanks
    0
    Thanked 0 Times in 0 Posts

    Question

    Thanks liorean

    I that cleared up alot of confusion especially about javascript.

    about python, what do i do if i want to give a python program to someone who does not have a compiler/interpreter or python installed on their system?..will it still work or do they have to install python first?

  • #9
    Senior Coder Mhtml's Avatar
    Join Date
    Jun 2002
    Location
    Sydney, Australia
    Posts
    3,531
    Thanks
    0
    Thanked 1 Time in 1 Post
    Originally posted by jkd
    BASIC? No, BASIC is harmful. Scheme or Python I think make good first languagesl
    Well it depends, I started on BASIC ... of course long ago but I think it gives a very clear view of how sequential programming works. It's near english syntax is good for those who have no idea at all.

    Never used scheme, but python would be a good start.. Better than BASIC for sure, but only if you have some understanding IMO. Because of the syntax being indents rather than really defined delimiters for statements and structures.
    Omnis mico antequam dominus Spookster!

  • #10
    Master Coder
    Join Date
    Feb 2003
    Location
    UmeŚ, Sweden
    Posts
    5,575
    Thanks
    0
    Thanked 83 Times in 74 Posts
    Mhtml: Scheme is a LISP and has the syntactical intuitivity of a general LISP language - it can be hard to read and understand for a beginner. On the other hand it is a language with very few rules, and zero exceptions to those rules. It's hard to read especially since it uses prefix instead of infix notation - the same thing that makes operator priority orders unneccesary in Scheme, and thus removes one of the rules that you have to take into account in other languages. Let me give you an example:

    JavaScrip&#0116;:
    Code:
    var
        n = (2 + 5 + 7 + 5) * 3 / (11 - 7) * 2;
    Scheme:
    Code:
    (define n
      (*
       (/
        (*
         (+ 3 5 7 5)
         3)
        (- 11 7))
       2)
    )
    BASIC has been superseeded by better languages. Why not try ABC if you want a close-to-natural language instead?

    Velious: If there is a Python compiler, you can run it without installing anything. If there is not, you have to have the interpreter installed. I don't really know since I've not had that good a look at Python.
    Last edited by liorean; 01-24-2004 at 12:22 PM.
    liorean <[lio@wg]>
    Articles: RegEx evolt wsabstract , Named Arguments
    Useful Threads: JavaScript Docs & Refs, FAQ - HTML & CSS Docs, FAQ - XML Doc & Refs
    Moz: JavaScript DOM Interfaces MSDN: JScript DHTML KDE: KJS KHTML Opera: Standards

  • #11
    New Coder
    Join Date
    Jan 2004
    Location
    Illinois
    Posts
    72
    Thanks
    2
    Thanked 0 Times in 0 Posts
    Originally posted by liorean
    I think you're beginning in the wrong end. It would be better if you began with higher level programming, I think, and then worked yourself down. The binary and hex thinking will become more and more important as you get closer and closer to the machine, but the actual thinking is easier in the more advanced languages. Now I should mention that I think C/C++ to be pretty low level, and that you should probably begin with a somewhat higher level language, such as Python, Ruby, Scheme, JavaScript, ML, Haskell. Don't start with Java though - it's high level, but it's conceptually C/C++ dropping the more low-level parts, and not adding much on it's own.

    In assembly, you must think of what the processor should do. You must yourself convert an idea from a conceptual plan, an algorithm or a set of algorithms, into something that the processor can handle, and you must yourself make sure that eavrything works as intended once there, and that the way back into a concretisised program that the user can interface with works. The higher level languages take care of some of that for you. The really high level languages takes care of almost everything of that for you, and you can concern yourself more with the actual task you want handled.

    As I said, I think working your way top down instead of bottom up is a better choice for learning.

    So your saying that any coder should start with advanced languages like Python? And if I'm not mistaken you said that JavaScript is harder than C++?!??!?!

    I'm new to the coding field and I wanted to know what is the bets language to start...I know HTML and I was going to learn Visualb Basic 6 and JavaScript but found them hard.... I started reading the Teachyour self C++ in 21 days and i find it kind of easy (1 day into ). Any suggestions?

  • #12
    Master Coder
    Join Date
    Feb 2003
    Location
    UmeŚ, Sweden
    Posts
    5,575
    Thanks
    0
    Thanked 83 Times in 74 Posts
    Originally posted by Unknown
    So your saying that any coder should start with advanced languages like Python? And if I'm not mistaken you said that JavaScript is harder than C++?!??!?!
    Not harder. More advanced, more abstracted, but I would say it is rather much easier than C/C++. C/C++ can do more than JavaScript can, but on the other hand you need to not only tell the computer to do something, but you also need to tell it how to do it. In more advanced languages you have language constructs that let you concentrate on what to do, not how to do it. But then you have another layer here - libraries. In C/C++, you have loads of libraries, and in Java you have to bewading knee deep in them to do anything at all. But JavaScript has no libraries. The host environment provides it with what features you get, and that's it. EcmaScript4/JavaScript2 will add the capability to build libraries, and then you will find that JavaScript is a language that can do most things that Java can. (It will still be interpreted instead of bytecode or machine code compiled, though.) And yes, JavaScript is far easier to learn than C/C++, because the time you need to learn how to use the different C/C++ libraries will go directly into learning the core language and the browser's host environment with JavaScript. JavaScript is a SMALL language, with a clean and pretty consistent syntax. It's not especially hard to grasp.
    I'm new to the coding field and I wanted to know what is the bets language to start...I know HTML and I was going to learn Visualb Basic 6 and JavaScript but found them hard.... I started reading the Teachyour self C++ in 21 days and i find it kind of easy (1 day into ). Any suggestions?
    Hmm, I think you would find a book with the same complexity covering JavaScript to be even easier. But C/C++ is a better language to learn if you really want to go programming. However, I would recommend you Ruby or Python. They are both fairly easy to learn, they have far greater capabilities then JavaScript because of the default libraries, and they have about as clean syntax.
    Last edited by liorean; 01-24-2004 at 08:55 PM.
    liorean <[lio@wg]>
    Articles: RegEx evolt wsabstract , Named Arguments
    Useful Threads: JavaScript Docs & Refs, FAQ - HTML & CSS Docs, FAQ - XML Doc & Refs
    Moz: JavaScript DOM Interfaces MSDN: JScript DHTML KDE: KJS KHTML Opera: Standards

  • #13
    New Coder
    Join Date
    Jan 2004
    Location
    Illinois
    Posts
    72
    Thanks
    2
    Thanked 0 Times in 0 Posts
    Thanks

    Concerning Ruby and Python... Are they like C++ or are they internt languages?

    Do you need a complier to make things out of them if they are like C++ and are the supported by all browsers or platforms?

  • #14
    Master Coder
    Join Date
    Feb 2003
    Location
    UmeŚ, Sweden
    Posts
    5,575
    Thanks
    0
    Thanked 83 Times in 74 Posts
    Python and Ruby are both interpreted languages, and they are only supported on systems - of any platform - with the interpreter installed. C/C++ is compiled, and is because of that instead supported on all systems, but only for the same platform as they were compiled for. Java is bytecode compiled, and only supported on systems with the Java Runtime Environment installed. VBScript is supported by iew only. JavaScript is supported by pretty much every browser. These two are the only languages you can expect a browser to support, even though PERL, Ruby, Python and others may be added to at least iew. (There's a project for adding Ruby to moz, but I don't know how far they have come yet, or whether that is as an application or document language.)
    liorean <[lio@wg]>
    Articles: RegEx evolt wsabstract , Named Arguments
    Useful Threads: JavaScript Docs & Refs, FAQ - HTML & CSS Docs, FAQ - XML Doc & Refs
    Moz: JavaScript DOM Interfaces MSDN: JScript DHTML KDE: KJS KHTML Opera: Standards

  • #15
    jkd
    jkd is offline
    Senior Coder jkd's Avatar
    Join Date
    May 2002
    Location
    metro DC
    Posts
    3,163
    Thanks
    1
    Thanked 18 Times in 18 Posts
    Ruby and Python can be used in Mozilla for creating XPCOM objects, bridged in via the RbXPCOM and PyXPCOM projects respectively. But you cannot use them as local scripting languages on a webpage.

    In Win/IE however, through the Windows Scripting Host, you can use either in place of Javascript, interestingly enough. At least Python... I'd assume Ruby too.


  •  
    Page 1 of 2 12 LastLast

    Posting Permissions

    • You may not post new threads
    • You may not post replies
    • You may not post attachments
    • You may not edit your posts
    •