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. Other Discussions
  3. The Weird and The Wonderful
  4. Everything That Has a Beginning Has an End (Eventually)

Everything That Has a Beginning Has an End (Eventually)

Scheduled Pinned Locked Moved The Weird and The Wonderful
databasecsharplinqcom
23 Posts 11 Posters 0 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.
  • OriginalGriffO OriginalGriff

    Noooo! Use a Select Case statement instead! :laugh:

    Real men don't use instructions. They are only the manufacturers opinion on how to put the thing together. Manfred R. Bihy: "Looks as if OP is learning resistant."

    J Offline
    J Offline
    Jonathan C Dickinson
    wrote on last edited by
    #13

    CodeDOM doesn't support switch; and I have seen the C# equivalent of that out and about.

    He who asks a question is a fool for five minutes. He who does not ask a question remains a fool forever. [Chineese Proverb] Jonathan C Dickinson (C# Software Engineer)

    1 Reply Last reply
    0
    • F Fabio Franco

      That's why I've always hated wizards: You never know the kind of magic they can produce! :doh:

      C Offline
      C Offline
      cpkilekofp
      wrote on last edited by
      #14

      Fabio Franco wrote:

      That's why I've always hated wizards: You never know the kind of magic they can produce! :doh:

      They've been complaining about that ever since the first "wizards" (compilers, in this case) began generating assembly code from more readable "high-level language" code...sometimes with good reason :-D

      A F 2 Replies Last reply
      0
      • B BobJanova

        Apologies, didn't get that it was a joke. It is too believable :( (My management is not like that, or I wouldn't be working here ;).)

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

        Well, no problem. I've a short fuse today. :D

        1 Reply Last reply
        0
        • C cpkilekofp

          Fabio Franco wrote:

          That's why I've always hated wizards: You never know the kind of magic they can produce! :doh:

          They've been complaining about that ever since the first "wizards" (compilers, in this case) began generating assembly code from more readable "high-level language" code...sometimes with good reason :-D

          A Offline
          A Offline
          AspDotNetDev
          wrote on last edited by
          #16

          You used compilers that generated assembly code?

          Driven to the ARMs by x86.

          C 1 Reply Last reply
          0
          • A AspDotNetDev

            You used compilers that generated assembly code?

            Driven to the ARMs by x86.

            C Offline
            C Offline
            cpkilekofp
            wrote on last edited by
            #17

            AspDotNetDev wrote:

            You used compilers that generated assembly code?

            LMAO, I may be missing the joke here, but yes, I did...I remember articles about MS 5.0 C's code generation vs. Borland's (now Symantec's?) Turbo C 6.0, arguing about code density vs. efficiency across memory architectures which might one day exceed sixteen bits available for data on the average person's desktop, especially with the expanding presence of the 32-bit 80386 processor in the business workplace...yes, those days. I actually entered a program in machine code into Debug which, after I saved it as reboot.com, dutifully rebooted the system every time I ran it. Bare-metal stuff, indeed...though I never got that (expletives deleted) COM port driver to work. But then, these intermediate languages in use now often operate in environments where sequences of bytecodes can be compiled directly into the native machine code of the executing processor, so at that point we can either request a listing (if available) or use a procesor-specific disassembler (if, ahem, our license permits) to determine whether this Just-In-Time code is actually as efficient as it can be for that processsor. Or so I assume; I'm less ambitious these days about bare-metal efficiency, I just hope it's better than running the bytecode through the interpreter and leave it at that.

            A 1 Reply Last reply
            0
            • C cpkilekofp

              AspDotNetDev wrote:

              You used compilers that generated assembly code?

              LMAO, I may be missing the joke here, but yes, I did...I remember articles about MS 5.0 C's code generation vs. Borland's (now Symantec's?) Turbo C 6.0, arguing about code density vs. efficiency across memory architectures which might one day exceed sixteen bits available for data on the average person's desktop, especially with the expanding presence of the 32-bit 80386 processor in the business workplace...yes, those days. I actually entered a program in machine code into Debug which, after I saved it as reboot.com, dutifully rebooted the system every time I ran it. Bare-metal stuff, indeed...though I never got that (expletives deleted) COM port driver to work. But then, these intermediate languages in use now often operate in environments where sequences of bytecodes can be compiled directly into the native machine code of the executing processor, so at that point we can either request a listing (if available) or use a procesor-specific disassembler (if, ahem, our license permits) to determine whether this Just-In-Time code is actually as efficient as it can be for that processsor. Or so I assume; I'm less ambitious these days about bare-metal efficiency, I just hope it's better than running the bytecode through the interpreter and leave it at that.

              A Offline
              A Offline
              AspDotNetDev
              wrote on last edited by
              #18

              I thought perhaps you meant that the compiler generated machine code, but maybe you actually did use a compiler that generated assembly code. :)

              Driven to the ARMs by x86.

              C 1 Reply Last reply
              0
              • A AspDotNetDev

                I thought perhaps you meant that the compiler generated machine code, but maybe you actually did use a compiler that generated assembly code. :)

                Driven to the ARMs by x86.

                C Offline
                C Offline
                cpkilekofp
                wrote on last edited by
                #19

                :wtf: ...hmmm, time to up my daily dose of gingko biloba... :laugh:

                1 Reply Last reply
                0
                • C cpkilekofp

                  Fabio Franco wrote:

                  That's why I've always hated wizards: You never know the kind of magic they can produce! :doh:

                  They've been complaining about that ever since the first "wizards" (compilers, in this case) began generating assembly code from more readable "high-level language" code...sometimes with good reason :-D

                  F Offline
                  F Offline
                  Fabio Franco
                  wrote on last edited by
                  #20

                  cpkilekofp wrote:

                  They've been complaining about that ever since the first "wizards" (compilers, in this case) began generating assembly code from more readable "high-level language" code

                  I surely hope our wizards today don't become the compilers of tomorrow, then I'll have to hang myself. X|

                  1 Reply Last reply
                  0
                  • A AspDotNetDev

                    I just installed Linqer to convert some SQL to LINQ. Unfortunately, it bombed out on me, but not before automatically generating this code:

                    '''<Summary>
                    '''The method returns the view for the index given.
                    '''</Summary>
                    Protected Overrides Function GetViewAt(ByVal index As Integer) As System.Collections.Generic.KeyValuePair(Of String, String)
                    If (index = 0) Then
                    Return GetView0
                    End If
                    If (index = 1) Then
                    Return GetView1
                    End If
                    If (index = 2) Then
                    Return GetView2
                    End If
                    If (index = 3) Then
                    Return GetView3
                    End If
                    If (index = 4) Then
                    Return GetView4
                    End If
                    If (index = 5) Then
                    Return GetView5
                    End If
                    ' ...lots and lots of lines...
                    If (index = 1461) Then
                    Return GetView1461
                    End If
                    If (index = 1462) Then
                    Return GetView1462
                    End If
                    If (index = 1463) Then
                    Return GetView1463
                    End If
                    Throw New System.IndexOutOfRangeException()
                    End Function

                    This is about as bad as my 558 lines of QuickBasic glory. :(( This is probably one of those instances where 3 lines of reflection code is better than 5,000 lines of auto-generated code.

                    Driven to the ARMs by x86.

                    I Offline
                    I Offline
                    icestatue
                    wrote on last edited by
                    #21

                    I was exposed to a similar situation but it didn't involve an auto generated tool so much as a terrible programmer. We had a stored procedure that used 13 parameters to be used as filters for a set of data that we would return to the users. After getting a complaint that the filter was acting strange I was told to review the procedure to find the bug. When I opened the procedure I noticed that an if then else chain of about 3000 combinations of variations of the select statement had been hand written to account for every scenario that could exist. The only problem was that we figured that this was only a small fraction of the coverage of code needed to work correctly we also noticed when coping the procedure it was more the 5 megs in length. We were able to shorten the script to about 12 lines of code when we finished it.

                    nothing

                    A L 2 Replies Last reply
                    0
                    • I icestatue

                      I was exposed to a similar situation but it didn't involve an auto generated tool so much as a terrible programmer. We had a stored procedure that used 13 parameters to be used as filters for a set of data that we would return to the users. After getting a complaint that the filter was acting strange I was told to review the procedure to find the bug. When I opened the procedure I noticed that an if then else chain of about 3000 combinations of variations of the select statement had been hand written to account for every scenario that could exist. The only problem was that we figured that this was only a small fraction of the coverage of code needed to work correctly we also noticed when coping the procedure it was more the 5 megs in length. We were able to shorten the script to about 12 lines of code when we finished it.

                      nothing

                      A Offline
                      A Offline
                      AspDotNetDev
                      wrote on last edited by
                      #22

                      :laugh: I've seen some long stored procedures in my day. Perhaps 100 or 200K. But nothing like what you describe. Though, there was one grouped stored procedure that was composed of a hundred or so individual stored procedures (e.g., procedure;1, procedure;2, procedure;100, procedure;101, and so on). Still, that was due to decades of hopelessly complicated business logic and workarounds, not one very simple but bloated function, like the one you described.

                      Driven to the ARMs by x86.

                      1 Reply Last reply
                      0
                      • I icestatue

                        I was exposed to a similar situation but it didn't involve an auto generated tool so much as a terrible programmer. We had a stored procedure that used 13 parameters to be used as filters for a set of data that we would return to the users. After getting a complaint that the filter was acting strange I was told to review the procedure to find the bug. When I opened the procedure I noticed that an if then else chain of about 3000 combinations of variations of the select statement had been hand written to account for every scenario that could exist. The only problem was that we figured that this was only a small fraction of the coverage of code needed to work correctly we also noticed when coping the procedure it was more the 5 megs in length. We were able to shorten the script to about 12 lines of code when we finished it.

                        nothing

                        L Offline
                        L Offline
                        Lutoslaw
                        wrote on last edited by
                        #23

                        icestatue wrote:

                        We were able to shorten the script to about 12 lines of code when we finished it.

                        :doh: How long these lines were?

                        Greetings - Jacek

                        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