Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • World
  • Users
  • Groups
Skins
  • Light
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse
Code Project
  1. Home
  2. The Lounge
  3. Assembly versus Programming

Assembly versus Programming

Scheduled Pinned Locked Moved The Lounge
csharpasp-netdesignhelplearning
51 Posts 30 Posters 4 Views 1 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • P Pete OHanlon

    Please, elaborate on your ill-formed arguments. Is your central tenet that having a framework means you can't program? From what I can gather, you seem to be arguing that only languages that provide you with no support mechanism is the only form of programming. So, I guess you program purely in assembly language, ironic considering your post title.

    Forgive your enemies - it messes with their heads

    My blog | My articles | MoXAML PowerToys | Mole 2010 - debugging made easier - my favourite utility

    J Offline
    J Offline
    jschell
    wrote on last edited by
    #12

    Pretty sure the last couple of times that I used an assembler it was fully capable of linking in many libraries. And that was more than 10 years ago.

    1 Reply Last reply
    0
    • Richard Andrew x64R Richard Andrew x64

      In my day, we had to program uphill, both ways!

      The difficult we do right away... ...the impossible takes slightly longer.

      S Offline
      S Offline
      smcnulty2000
      wrote on last edited by
      #13

      And we didn't have zeros, we had to make do with the letter "O".

      _____________________________ Give a man a mug, he drinks for a day. Teach a man to mug...

      L O 2 Replies Last reply
      0
      • G gggustafson

        I know that many of today's programmers would disagree, but I don't think assembling web pages is "programming." I think that the term should be "software assembler" not "programmer." It's akin to automotive plant assembly versus automotive engineering. Of course, maybe the current phrase ".NET developer" encapsulates my view. Although I have not joined the growing anti-Microsoft throng, I can certainly see where they are coming from. The extraordinarily bloated frameworks and languages (especially C#) that are immature and inconsistent with language design principles, makes Microsoft an easy target. But so too is academia. If a child is taught a language (e.g., English, French, German, etc.) in a vulgar manner, the child will use that language as taught. Only with extra effort, will the child be cultivated to a more gentile and socially acceptable language. So too with programming language instruction. When I taught the computer science core curricula at a west coast university, I made sure that reasonable coding guidelines were included. Thus, one problem with today's programmers is failure to understand that programming is a discipline. Another is the failure to recognize that programming is applied mathematics.

        Gus Gustafson

        J Offline
        J Offline
        jschell
        wrote on last edited by
        #14

        gggustafson wrote:

        If a child is taught a language (e.g., English, French, German, etc.) in a vulgar manner, the child will use that language as taught.

        And if a child is taught that one language is 'better' than all others then that child will look down on others that use other languages. Even when it is completely clear to others that there are many, many situations where being able to use another language can be very useful. Even vital. And of course the child will never even realize the potential benefits of being able to use multiple languages at the same time.

        G 1 Reply Last reply
        0
        • P Pete OHanlon

          Please, elaborate on your ill-formed arguments. Is your central tenet that having a framework means you can't program? From what I can gather, you seem to be arguing that only languages that provide you with no support mechanism is the only form of programming. So, I guess you program purely in assembly language, ironic considering your post title.

          Forgive your enemies - it messes with their heads

          My blog | My articles | MoXAML PowerToys | Mole 2010 - debugging made easier - my favourite utility

          S Offline
          S Offline
          Saul Johnson
          wrote on last edited by
          #15

          Aye m'laddies! Gather ye hither as I regale thee with a story about that time I wanted to word-process a document. It wasn't too bad once I'd mined and smelted the metals needed to construct a computer using my own body heat and bellybutton as a furnace and component mould. Then it was just a matter of using my very own earwax and stomach acid to construct a home-made PCB for a motherboard. Then the trivial task of writing my own BIOS, OS and finally a word processing application in pure machine code began. Because, you know, MS Word is for sissies.

          A programming language is to a programmer what a fine hat is to one who is fond of fancy garden parties. Just don't try wearing any .NET language on your head. Some of them are sharp.

          1 Reply Last reply
          0
          • P Pete OHanlon

            Please, elaborate on your ill-formed arguments. Is your central tenet that having a framework means you can't program? From what I can gather, you seem to be arguing that only languages that provide you with no support mechanism is the only form of programming. So, I guess you program purely in assembly language, ironic considering your post title.

            Forgive your enemies - it messes with their heads

            My blog | My articles | MoXAML PowerToys | Mole 2010 - debugging made easier - my favourite utility

            G Offline
            G Offline
            gavindon
            wrote on last edited by
            #16

            I guess the thousands upon thousands of lines of code in my intranet where I work don't qualify as programming either since after all, it is nothing more than an asp.net web site that just happens to face internally only. and reach into 5 databases, and crunch numbers, and do accounting functions, and inventory, and control line machines, handles all the processes in our production.. but its not programming since after all its just a website that a wanna be programmer assembled..... Here I thought I was working as a programmer dealing with all this c# code behind but I was mistaken. I'm glad my mistake was pointed out to me.

            Programming is a race between programmers trying to build bigger and better idiot proof programs, and the universe trying to build bigger and better idiots, so far... the universe is winning. Be careful which toes you step on today, they might be connected to the foot that kicks your butt tomorrow. You can't scare me, I have children.

            1 Reply Last reply
            0
            • S smcnulty2000

              And we didn't have zeros, we had to make do with the letter "O".

              _____________________________ Give a man a mug, he drinks for a day. Teach a man to mug...

              L Offline
              L Offline
              Lost User
              wrote on last edited by
              #17

              Letters? yee weor lucky. We had tuh code 25 hoors a da, buildin the computor yeut iv aad milk crates an' empty bottles, an' entor values by bleedin wor ahn blud intee the bottles. Output wes tattooed intee the flesh on wor backs wi' rusty needles my entire family bled tuh death in an infinite loop, an' ah wes anny saved cos iv an overflaa error (which wes messy) You tell that tuh the bairns iv the'da, an' the' winnet believe yee!

              MVVM# - See how I did MVVM my way ___________________________________________ Man, you're a god. - walterhevedeich 26/05/2011 .\\axxx (That's an 'M')

              1 Reply Last reply
              0
              • C Chris Losinger

                assembly is a huge support system, when compared to machine language. mnemonics? symbols? labels? luxury! and anyone who uses an OS is just a lazy poser.

                image processing toolkits | batch image processing

                R Offline
                R Offline
                RC_Sebastien_C
                wrote on last edited by
                #18

                Chris Losinger wrote:

                anyone who uses an OS is just a lazy poser

                You made me waste a sip of beer, but 5 for the laugh!

                I was HollyHooo but got tired of it and Sebastien was taken.

                1 Reply Last reply
                0
                • Sander RosselS Sander Rossel

                  gggustafson wrote:

                  maybe the current phrase ".NET developer" encapsulates my view

                  It seems you encapsulated it all wrong. Such views should be Private, not Public!

                  It's an OO world.

                  G Offline
                  G Offline
                  gggustafson
                  wrote on last edited by
                  #19

                  +5

                  Gus Gustafson

                  1 Reply Last reply
                  0
                  • T Tom Delany

                    gggustafson wrote:

                    languages (especially C#) that are immature and inconsistent with language design principles

                    C# is immature and inconsistent with language design principles? :wtf: How do you figure?

                    WE ARE DYSLEXIC OF BORG. Refutance is systile. Your a$$ will be laminated. There are 10 kinds of people in the world: People who know binary and people who don't.

                    G Offline
                    G Offline
                    gggustafson
                    wrote on last edited by
                    #20

                    How many languages do you know that have gone through four major revisions in less than ten years?

                    Gus Gustafson

                    G 1 Reply Last reply
                    0
                    • J jschell

                      gggustafson wrote:

                      If a child is taught a language (e.g., English, French, German, etc.) in a vulgar manner, the child will use that language as taught.

                      And if a child is taught that one language is 'better' than all others then that child will look down on others that use other languages. Even when it is completely clear to others that there are many, many situations where being able to use another language can be very useful. Even vital. And of course the child will never even realize the potential benefits of being able to use multiple languages at the same time.

                      G Offline
                      G Offline
                      gggustafson
                      wrote on last edited by
                      #21

                      As a programmer fluent in COBOL, FORTRAN, Pascal, C, Ada, and C# (in their order of being learned - without help from academia), I have never, in my long and jaded career, suggested that one language was better than another. Each has their purpose. And as a senior programmer at that, I may have had to suggest that one language was better for a particular task. But never that one was better than another.

                      Gus Gustafson

                      P J 2 Replies Last reply
                      0
                      • G gggustafson

                        How many languages do you know that have gone through four major revisions in less than ten years?

                        Gus Gustafson

                        G Offline
                        G Offline
                        Gary R Wheeler
                        wrote on last edited by
                        #22

                        FORTRAN, BASIC, PL/I, LISP, all assembly languages, ...

                        Software Zen: delete this;

                        G 1 Reply Last reply
                        0
                        • G gggustafson

                          I know that many of today's programmers would disagree, but I don't think assembling web pages is "programming." I think that the term should be "software assembler" not "programmer." It's akin to automotive plant assembly versus automotive engineering. Of course, maybe the current phrase ".NET developer" encapsulates my view. Although I have not joined the growing anti-Microsoft throng, I can certainly see where they are coming from. The extraordinarily bloated frameworks and languages (especially C#) that are immature and inconsistent with language design principles, makes Microsoft an easy target. But so too is academia. If a child is taught a language (e.g., English, French, German, etc.) in a vulgar manner, the child will use that language as taught. Only with extra effort, will the child be cultivated to a more gentile and socially acceptable language. So too with programming language instruction. When I taught the computer science core curricula at a west coast university, I made sure that reasonable coding guidelines were included. Thus, one problem with today's programmers is failure to understand that programming is a discipline. Another is the failure to recognize that programming is applied mathematics.

                          Gus Gustafson

                          A Offline
                          A Offline
                          Aamir Butt
                          wrote on last edited by
                          #23

                          You, Sir, got a 1-vote from me only because of this line: The extraordinarily bloated frameworks and languages (especially C#) that are immature and inconsistent with language design principles Care to explain why you think so?

                          A year spent in artificial intelligence is enough to make one believe in God

                          G 1 Reply Last reply
                          0
                          • G Gary R Wheeler

                            FORTRAN, BASIC, PL/I, LISP, all assembly languages, ...

                            Software Zen: delete this;

                            G Offline
                            G Offline
                            gggustafson
                            wrote on last edited by
                            #24

                            Don't tell me the languages with which you are familiar. Tell me the ones that went through as many revisions as C#

                            Gus Gustafson

                            M 1 Reply Last reply
                            0
                            • G gggustafson

                              I know that many of today's programmers would disagree, but I don't think assembling web pages is "programming." I think that the term should be "software assembler" not "programmer." It's akin to automotive plant assembly versus automotive engineering. Of course, maybe the current phrase ".NET developer" encapsulates my view. Although I have not joined the growing anti-Microsoft throng, I can certainly see where they are coming from. The extraordinarily bloated frameworks and languages (especially C#) that are immature and inconsistent with language design principles, makes Microsoft an easy target. But so too is academia. If a child is taught a language (e.g., English, French, German, etc.) in a vulgar manner, the child will use that language as taught. Only with extra effort, will the child be cultivated to a more gentile and socially acceptable language. So too with programming language instruction. When I taught the computer science core curricula at a west coast university, I made sure that reasonable coding guidelines were included. Thus, one problem with today's programmers is failure to understand that programming is a discipline. Another is the failure to recognize that programming is applied mathematics.

                              Gus Gustafson

                              G Offline
                              G Offline
                              Gary R Wheeler
                              wrote on last edited by
                              #25

                              gggustafson wrote:

                              The extraordinarily bloated frameworks and languages (especially C#) that are immature and inconsistent with language design principles, makes Microsoft an easy target

                              I call myself a .NET developer at the moment; I'm a software developer, and I'm currently using .NET. The term is therefore descriptive. I'll ignore your pejorative use of the term. 'Bloated framework'? The strength of the CLR is the fact that it provides well-documented and thoroughly tested solutions for thousands of common programming tasks, from data structures to user interfaces, multithreading, and so on. One key to being a proficient ".NET developer" is learning to look for functionality in the CLR before rolling your own. Big? Definitely. Hard to find what you need? Maybe; that's why God made Google. Bloated? Not hardly. 'Inconsistent with language design principles'? Whose principles? Yours? To my mind C# is a great language. I've got two years experience in C#, and over ten in C++. One of the principle defects of the C++ programming language is how the designers constrain language features due to their inability to satisfy a small number of edge cases. Document the edge cases, but give me the language features that make most of my life easier. Microsoft and C# do that.

                              gggustafson wrote:

                              When I taught the computer science core curricula at a west coast university

                              I thought I detected the stench of academic piety.

                              gggustafson wrote:

                              programming is applied mathematics

                              And the final piece of the puzzle is in place. I had a couple math professors in college who taught programming classes. While they understood mathematical principles behind programming, neither one could program their way out of a paper bag. This is a specific example of a general attitude you get from mathematicians: since they believe they can model anything using their field of expertise, they believe that makes them an expert in everything.

                              Software Zen: delete this;

                              G G 2 Replies Last reply
                              0
                              • A Aamir Butt

                                You, Sir, got a 1-vote from me only because of this line: The extraordinarily bloated frameworks and languages (especially C#) that are immature and inconsistent with language design principles Care to explain why you think so?

                                A year spent in artificial intelligence is enough to make one believe in God

                                G Offline
                                G Offline
                                gggustafson
                                wrote on last edited by
                                #26

                                One of the more important language design principles is orthogonality. That means that a language offers its users (programmers) only one way to perform a specific action. C# is not orthogonal (e.g., for and while should have been while and repeat - test before and test after). for and foreach exude the same problem. However, I'll give C# if and switch (only because there are significant differences in the manner of testing predicates). I really don't know why Microsoft didn't follow the American standards track. I have a feeling that the ECMA track was less contentious. Maybe Microsoft didn't want "their" language to be submitted to intense scrutiny (in the same way that the US DOD used the Ada Board to avoid the same scrutiny). But to me, an ex member of the US Pascal technical committee, I think that Microsoft has fallen into the trap of providing every little feature thought to be important, but that in fact causes more clutter. If you don't think that the .Net framework is bloated, try considering it in the light of that question. Do you know how many entry points are in .Net? In one dll alone, user32.dll, there are more than 700. That's bloated! For fun, consider a recent problem of mine. I needed to convert an HTML color (like #FF00FF) into its red, green, and blue Color components. I wrote a simple algorithm that used shifts. But did you know that there is a method, ColorTranslator.FromHtml, that "translates an HTML color representation to a GDI+ Color structure?" Wow, talk about bloat! I would never have thought that such a thing existed. And that's what bloat does. Programmers cannot find the entry points they need when they don't know anything about their existence. They are also overwhelmed. Another problem with bloat is lessening orthogonality. Most of the problems in this area are caused by inserting helpful but unnecessary features into a language or its framework. Features that perform the same function as other code.

                                Gus Gustafson

                                A R B 3 Replies Last reply
                                0
                                • G Gary R Wheeler

                                  gggustafson wrote:

                                  The extraordinarily bloated frameworks and languages (especially C#) that are immature and inconsistent with language design principles, makes Microsoft an easy target

                                  I call myself a .NET developer at the moment; I'm a software developer, and I'm currently using .NET. The term is therefore descriptive. I'll ignore your pejorative use of the term. 'Bloated framework'? The strength of the CLR is the fact that it provides well-documented and thoroughly tested solutions for thousands of common programming tasks, from data structures to user interfaces, multithreading, and so on. One key to being a proficient ".NET developer" is learning to look for functionality in the CLR before rolling your own. Big? Definitely. Hard to find what you need? Maybe; that's why God made Google. Bloated? Not hardly. 'Inconsistent with language design principles'? Whose principles? Yours? To my mind C# is a great language. I've got two years experience in C#, and over ten in C++. One of the principle defects of the C++ programming language is how the designers constrain language features due to their inability to satisfy a small number of edge cases. Document the edge cases, but give me the language features that make most of my life easier. Microsoft and C# do that.

                                  gggustafson wrote:

                                  When I taught the computer science core curricula at a west coast university

                                  I thought I detected the stench of academic piety.

                                  gggustafson wrote:

                                  programming is applied mathematics

                                  And the final piece of the puzzle is in place. I had a couple math professors in college who taught programming classes. While they understood mathematical principles behind programming, neither one could program their way out of a paper bag. This is a specific example of a general attitude you get from mathematicians: since they believe they can model anything using their field of expertise, they believe that makes them an expert in everything.

                                  Software Zen: delete this;

                                  G Offline
                                  G Offline
                                  gggustafson
                                  wrote on last edited by
                                  #27

                                  I find your response offensive. I was a teacher while I was a senior member of the technical staff of a major company. Flaming does not become you.

                                  Gus Gustafson

                                  1 Reply Last reply
                                  0
                                  • G gggustafson

                                    I know that many of today's programmers would disagree, but I don't think assembling web pages is "programming." I think that the term should be "software assembler" not "programmer." It's akin to automotive plant assembly versus automotive engineering. Of course, maybe the current phrase ".NET developer" encapsulates my view. Although I have not joined the growing anti-Microsoft throng, I can certainly see where they are coming from. The extraordinarily bloated frameworks and languages (especially C#) that are immature and inconsistent with language design principles, makes Microsoft an easy target. But so too is academia. If a child is taught a language (e.g., English, French, German, etc.) in a vulgar manner, the child will use that language as taught. Only with extra effort, will the child be cultivated to a more gentile and socially acceptable language. So too with programming language instruction. When I taught the computer science core curricula at a west coast university, I made sure that reasonable coding guidelines were included. Thus, one problem with today's programmers is failure to understand that programming is a discipline. Another is the failure to recognize that programming is applied mathematics.

                                    Gus Gustafson

                                    R Offline
                                    R Offline
                                    Roger Wright
                                    wrote on last edited by
                                    #28

                                    Any attempt to make a machine follow a set of predetermined execution steps is programming. Some approaches are more challenging than others, but all are programming.

                                    Will Rogers never met me.

                                    1 Reply Last reply
                                    0
                                    • G gggustafson

                                      I know that many of today's programmers would disagree, but I don't think assembling web pages is "programming." I think that the term should be "software assembler" not "programmer." It's akin to automotive plant assembly versus automotive engineering. Of course, maybe the current phrase ".NET developer" encapsulates my view. Although I have not joined the growing anti-Microsoft throng, I can certainly see where they are coming from. The extraordinarily bloated frameworks and languages (especially C#) that are immature and inconsistent with language design principles, makes Microsoft an easy target. But so too is academia. If a child is taught a language (e.g., English, French, German, etc.) in a vulgar manner, the child will use that language as taught. Only with extra effort, will the child be cultivated to a more gentile and socially acceptable language. So too with programming language instruction. When I taught the computer science core curricula at a west coast university, I made sure that reasonable coding guidelines were included. Thus, one problem with today's programmers is failure to understand that programming is a discipline. Another is the failure to recognize that programming is applied mathematics.

                                      Gus Gustafson

                                      C Offline
                                      C Offline
                                      Christian Graus
                                      wrote on last edited by
                                      #29

                                      C# is a mature language that is also very consistent. I would agree that too many people drag and drop components and call it coding, but, they always did. Writing a decent website does involve some HTML, but it also involves a good amount of programming. At the end of the day, I'd say that a label is irrelevant, if you're doing it, then you know what it is, and what it means. I don't care what other people think of me, except my managers. For the record, I work on web and desktop apps and I don't think that one is programming and the other is not.

                                      Christian Graus Driven to the arms of OSX by Vista. Read my blog to find out how I've worked around bugs in Microsoft tools and frameworks.

                                      1 Reply Last reply
                                      0
                                      • G gggustafson

                                        One of the more important language design principles is orthogonality. That means that a language offers its users (programmers) only one way to perform a specific action. C# is not orthogonal (e.g., for and while should have been while and repeat - test before and test after). for and foreach exude the same problem. However, I'll give C# if and switch (only because there are significant differences in the manner of testing predicates). I really don't know why Microsoft didn't follow the American standards track. I have a feeling that the ECMA track was less contentious. Maybe Microsoft didn't want "their" language to be submitted to intense scrutiny (in the same way that the US DOD used the Ada Board to avoid the same scrutiny). But to me, an ex member of the US Pascal technical committee, I think that Microsoft has fallen into the trap of providing every little feature thought to be important, but that in fact causes more clutter. If you don't think that the .Net framework is bloated, try considering it in the light of that question. Do you know how many entry points are in .Net? In one dll alone, user32.dll, there are more than 700. That's bloated! For fun, consider a recent problem of mine. I needed to convert an HTML color (like #FF00FF) into its red, green, and blue Color components. I wrote a simple algorithm that used shifts. But did you know that there is a method, ColorTranslator.FromHtml, that "translates an HTML color representation to a GDI+ Color structure?" Wow, talk about bloat! I would never have thought that such a thing existed. And that's what bloat does. Programmers cannot find the entry points they need when they don't know anything about their existence. They are also overwhelmed. Another problem with bloat is lessening orthogonality. Most of the problems in this area are caused by inserting helpful but unnecessary features into a language or its framework. Features that perform the same function as other code.

                                        Gus Gustafson

                                        A Offline
                                        A Offline
                                        Aamir Butt
                                        wrote on last edited by
                                        #30

                                        I guess you are right about bloat. But I don't think MS gives too much importance to Language Design Principles anyway. Their focus mostly seems to be ease for developers. That's why Visual Studio is like this with all the intellisense and debugging features etc. So, in that respect, C# follows this principle i.e., give developers freedom to do a lot of things in a lot of different ways. For language purists like yourself, these might be bad but for Application Developers, these features always come in handy to ship software quickly. On a similar note, I believe C++ is bloated as well because there are certain features which can be substituted by others. For example, you can achieve dynamic programming using Function Pointers, so on a theoretical level, why should we have Polymorphism and vitual functions? All of this can be achieved by smart programmers using plain old C-Style Function pointers. Your point is valid but only from a language design point of view. In real world, when you have to develop business applications real fast, its always good to have options provided that a programmer knows about majority of the pitfalls and black holes. I believe there has to be a trade-off between Language Design and Bloat. MS tends to lean towards bloat a bit too much even for my liking but I won't say C# is inconsistent and bad language only because of this.

                                        A year spent in artificial intelligence is enough to make one believe in God

                                        1 Reply Last reply
                                        0
                                        • C Chris Losinger

                                          assembly is a huge support system, when compared to machine language. mnemonics? symbols? labels? luxury! and anyone who uses an OS is just a lazy poser.

                                          image processing toolkits | batch image processing

                                          O Offline
                                          O Offline
                                          Oakman
                                          wrote on last edited by
                                          #31

                                          Chris Losinger wrote:

                                          and anyone who uses an OS is just a lazy poser

                                          I use Poser - oh wait, that's when I am doing graphics work -- never mind.

                                          “Reality is merely an illusion, albeit a very persistent one." ~ Albert Einstein

                                          1 Reply Last reply
                                          0
                                          Reply
                                          • Reply as topic
                                          Log in to reply
                                          • Oldest to Newest
                                          • Newest to Oldest
                                          • Most Votes


                                          • Login

                                          • Don't have an account? Register

                                          • Login or register to search.
                                          • First post
                                            Last post
                                          0
                                          • Categories
                                          • Recent
                                          • Tags
                                          • Popular
                                          • World
                                          • Users
                                          • Groups