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. Time for a new programming language paradigm

Time for a new programming language paradigm

Scheduled Pinned Locked Moved The Lounge
linuxtoolsc++javajavascript
97 Posts 42 Posters 114 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 PIEBALDconsult

    (Not everyone uses Visual Studio.)

    You'll never get very far if all you do is follow instructions.

    S Offline
    S Offline
    snorkie
    wrote on last edited by
    #23

    If it was easy, everybody could it it! But on a more serious note, not using Visual Studio is a choice... For the hourly costs of developers (at least in the US), its worth the money to equip people with the best tools to accomplish work. And before going off on costs, there are free versions of VS. Hogan

    P S 2 Replies Last reply
    0
    • R rjmoses

      Just spent the better part of two weeks trying to find a bug in a Linux bash script (missing ".") and I'm tired of looking for things like a missing equal sign in the middle of an C if statement, missing period in a PHP script, lower case variable name mixed with an upper case variable name, missing brace in a C++ object, undelared function or operator overloading....get my drift?...in other people's code. (Being the perfect programmer, I never make those kinds of mistakes! And I have swamp property if you're interested.) All too many programming errors are occurring because programming languages, like C, C++, java, etc., trace their origins back to the days when terseness was a desirable quality. Printing a program listing on an ASR 33 teletype at 10 CPS on a single threaded machine made using braces in C if statements instead of a clear if-then-else-endif highly desirable. (Remember the origins of C?) Those extra 9 characters took TIME to read in and to print out. And then there's issues of language diversity. C, C++, PHP, Java, Javascript, HTML, CSS, SQL, and other languages--what works where? So, here's a few of my thoughts: (And please don't be too anal about my examples--I really want to hear how programming languages could be advanced so that I can be more productive.) Among other things, a New Programming Language should: 1) Be clear and obvious in describing the functionality of the module. The resulting code should almost be language like. A sentence like "If (A equals 10) then print B as "xx.xx" else B = 0 end". But, that statement might also be written in a more mathematical syntax (like Fortran) as "If (A = 10) then....". Note the "=" in the second statement does NOT have the implied assignment and resulting TRUE logical decision (Spent 6 months chasing THAT bug!). 2) The language should be portable. The language should be executable as an interpreted, compiled, scripted or shell'ed running under most commonly available OS's and browsers. Perhaps Interpreted for testing, Compiled for execution speed, scripted for portability or shell'ed for utility work. Take features from scripting languages like Powershell, bash, incorporate execution speed of C, objectivity of Java or C++ and put them under one roof. Write a module that runs under IE, Firefox, Chrome, Opera, Windows, Linux, BSD, OS X, or anything else. 3) The code should be almost self-documenting. Nothing I hate worse than to have to go looking for the a type declaration, a

      CPalliniC Offline
      CPalliniC Offline
      CPallini
      wrote on last edited by
      #24

      Programming languages are not for sissies.

      Veni, vidi, vici.

      In testa che avete, signor di Ceprano?

      P 1 Reply Last reply
      0
      • B BobJanova

        This is a major rant I have about default (e.g. StyleCop) formatting conventions. They waste so much space that you can't actually see what the code does.

        S Offline
        S Offline
        snorkie
        wrote on last edited by
        #25

        Sounds like a reason to requisition a larger monitor[^] :laugh:

        S 1 Reply Last reply
        0
        • L Lost User

          rjmoses wrote:

          trace their origins back to the days when terseness was a desirable quality.

          It still is. A decent C# class uses less characters to convey the same info as written in Object Pascal. Less characters to convey the same info - do you really need a "begin" and an "end" block?

          rjmoses wrote:

          Be clear and obvious in describing the functionality of the module.

          When is something obvious? If you've ever hunted a swallowed exception in VB6, you'll know that this is not possible. Code should be unambigious, simple and clean. It should not become an exercise to omit documentation.

          rjmoses wrote:

          1. The language should be portable.

          It's not the language that decides on what platforms it will be implemented. VB6 will never appear on Linux without starting a major war.

          rjmoses wrote:

          1. The code should be almost self-documenting.

          Only if you're not coding, but scripting. That means that we'd limit this "programmer" to an IDE like MS Access. You'd never get InterOp or call the WinAPI. You'd never get a pointer.

          rjmoses wrote:

          1. The language should incorporate most commonly-used functionality.

          I've yet to meet the (broadly used) language that doesn't. Type-safety is something valuable - suggesting to remove it would be a step back.

          rjmoses wrote:

          1. And, finally, it should be easily extensible.

          A language? Please not; how would your old code react to changes? Can you oversee whether or not your change "breaks" something? Sorry, but only MS Access has these properties. I don't see it being used in the same way we use programming languages.

          Bastard Programmer from Hell :suss: If you can't read my code, try converting it here[^]

          P Offline
          P Offline
          PIEBALDconsult
          wrote on last edited by
          #26

          Eddy Vluggen wrote:

          rjmoses wrote:

          1. The language should be portable.

          It's not the language that decides on what platforms it will be implemented. VB6 will never appear on Linux without starting a major war.

          Every language* is portable, but not every language gets ported everywhere. * With the possible exception of the various assembly languages, but I suspect that even they could be compiled for a system they weren't intended for, perhaps with some limitations, but I'm no expert on that.

          You'll never get very far if all you do is follow instructions.

          K 1 Reply Last reply
          0
          • S snorkie

            If it was easy, everybody could it it! But on a more serious note, not using Visual Studio is a choice... For the hourly costs of developers (at least in the US), its worth the money to equip people with the best tools to accomplish work. And before going off on costs, there are free versions of VS. Hogan

            P Offline
            P Offline
            PIEBALDconsult
            wrote on last edited by
            #27

            snorkie wrote:

            not using Visual Studio is a choice

            Exactly.

            snorkie wrote:

            the best tools

            What's that got to do with Visual Studio? :-D Seriously, I use Visual Studio when I need to, but not when I don't. I have Ultimate at work and Express at home. Use the right tool for the right job.

            You'll never get very far if all you do is follow instructions.

            1 Reply Last reply
            0
            • CPalliniC CPallini

              Programming languages are not for sissies.

              Veni, vidi, vici.

              P Offline
              P Offline
              PIEBALDconsult
              wrote on last edited by
              #28

              Didn't he say it was a BASH script? Isn't that Klingon?

              You'll never get very far if all you do is follow instructions.

              CPalliniC 1 Reply Last reply
              0
              • P PIEBALDconsult

                Didn't he say it was a BASH script? Isn't that Klingon?

                You'll never get very far if all you do is follow instructions.

                CPalliniC Offline
                CPalliniC Offline
                CPallini
                wrote on last edited by
                #29

                At most he was.

                Veni, vidi, vici.

                In testa che avete, signor di Ceprano?

                1 Reply Last reply
                0
                • T Tim Carmichael

                  So... what you want is a common business oriented language? COBOL it is!

                  C Offline
                  C Offline
                  Colborne_Greg
                  wrote on last edited by
                  #30

                  After two decades of cobol I am ready to chuck it out the window

                  U 1 Reply Last reply
                  0
                  • R rjmoses

                    Just spent the better part of two weeks trying to find a bug in a Linux bash script (missing ".") and I'm tired of looking for things like a missing equal sign in the middle of an C if statement, missing period in a PHP script, lower case variable name mixed with an upper case variable name, missing brace in a C++ object, undelared function or operator overloading....get my drift?...in other people's code. (Being the perfect programmer, I never make those kinds of mistakes! And I have swamp property if you're interested.) All too many programming errors are occurring because programming languages, like C, C++, java, etc., trace their origins back to the days when terseness was a desirable quality. Printing a program listing on an ASR 33 teletype at 10 CPS on a single threaded machine made using braces in C if statements instead of a clear if-then-else-endif highly desirable. (Remember the origins of C?) Those extra 9 characters took TIME to read in and to print out. And then there's issues of language diversity. C, C++, PHP, Java, Javascript, HTML, CSS, SQL, and other languages--what works where? So, here's a few of my thoughts: (And please don't be too anal about my examples--I really want to hear how programming languages could be advanced so that I can be more productive.) Among other things, a New Programming Language should: 1) Be clear and obvious in describing the functionality of the module. The resulting code should almost be language like. A sentence like "If (A equals 10) then print B as "xx.xx" else B = 0 end". But, that statement might also be written in a more mathematical syntax (like Fortran) as "If (A = 10) then....". Note the "=" in the second statement does NOT have the implied assignment and resulting TRUE logical decision (Spent 6 months chasing THAT bug!). 2) The language should be portable. The language should be executable as an interpreted, compiled, scripted or shell'ed running under most commonly available OS's and browsers. Perhaps Interpreted for testing, Compiled for execution speed, scripted for portability or shell'ed for utility work. Take features from scripting languages like Powershell, bash, incorporate execution speed of C, objectivity of Java or C++ and put them under one roof. Write a module that runs under IE, Firefox, Chrome, Opera, Windows, Linux, BSD, OS X, or anything else. 3) The code should be almost self-documenting. Nothing I hate worse than to have to go looking for the a type declaration, a

                    C Offline
                    C Offline
                    Colborne_Greg
                    wrote on last edited by
                    #31

                    20 years of programming in Cobol, C++, and html The language that meets your requirements is Visual Basic 2013. Everything that C++ can do Visual Basic 2013 can do. Here is an example of code, with no documentation, lets see if you can figure out what it does.

                    Public Interface iArray(Of someType)
                    Event ItemAdded(ByRef Item As someType)

                    Sub AddRange(Range() As someType)
                    Function Clear() As someType()
                    Property Collected() As someType()
                    Function Count() As Int64
                    Property Item(Index As Int64) As someType
                    
                    WriteOnly Property NewItem() As someType
                    WriteOnly Property NewItems As someType()
                    Property Populated As Boolean
                    Function LastIndex() As Int64
                    

                    End Interface
                    <Serializable>
                    Partial Public Class Array(Of SomeType)
                    Implements iArray(Of SomeType)

                    Private mCollected() As SomeType
                    Private mPopulated As Boolean
                    
                    
                    Public Event ItemAdded(ByRef Item As SomeType) Implements iArray(Of SomeType).ItemAdded
                    
                    
                    Public Property Collected() As SomeType() Implements iArray(Of SomeType).Collected
                        Get
                            If mCollected Is Nothing Then mCollected = New SomeType() {}
                            Return mCollected
                        End Get
                        Set(value As SomeType())
                            mCollected = value
                        End Set
                    End Property
                    
                    Public Sub AddRange(Range() As SomeType) Implements iArray(Of SomeType).AddRange
                        Allocate(Collected, Range)
                        Populated = True
                    End Sub
                    Public Shared Function Allocate(ByRef TheArray() As SomeType, ByVal Value As SomeType) As SomeType()
                        Return Allocate(TheArray, Value, LastIndexOf(TheArray))
                    End Function
                    Public Shared Function Allocate(ByRef TheArray() As SomeType, ByVal Values() As SomeType) As SomeType()
                        Return Allocate(TheArray, Values, LastIndexOf(TheArray))
                    End Function
                    Public Shared Function Allocate(ByRef TheArray() As SomeType, ByVal Values() As SomeType, ByRef Index As Int64) As SomeType()
                        Try
                            For Current As Int64 = 0 To Values.Length - 1
                                Allocate(TheArray, Values(Current), Index + Current)
                            Next
                        Catch
                        End Try
                        Return TheArray
                    End Function
                    Public Shared Function Allocate(ByRef TheArray() As SomeType, ByVal Value As SomeType, ByRef Index As Int64) As SomeType()
                        Try
                            TheArray(Index) = Value
                        Catch
                            ReDim Preserve TheArray(Index)
                            TheArray(Index) = Value
                        End Try
                    
                        Return TheArray
                    
                    S J 2 Replies Last reply
                    0
                    • R rjmoses

                      Just spent the better part of two weeks trying to find a bug in a Linux bash script (missing ".") and I'm tired of looking for things like a missing equal sign in the middle of an C if statement, missing period in a PHP script, lower case variable name mixed with an upper case variable name, missing brace in a C++ object, undelared function or operator overloading....get my drift?...in other people's code. (Being the perfect programmer, I never make those kinds of mistakes! And I have swamp property if you're interested.) All too many programming errors are occurring because programming languages, like C, C++, java, etc., trace their origins back to the days when terseness was a desirable quality. Printing a program listing on an ASR 33 teletype at 10 CPS on a single threaded machine made using braces in C if statements instead of a clear if-then-else-endif highly desirable. (Remember the origins of C?) Those extra 9 characters took TIME to read in and to print out. And then there's issues of language diversity. C, C++, PHP, Java, Javascript, HTML, CSS, SQL, and other languages--what works where? So, here's a few of my thoughts: (And please don't be too anal about my examples--I really want to hear how programming languages could be advanced so that I can be more productive.) Among other things, a New Programming Language should: 1) Be clear and obvious in describing the functionality of the module. The resulting code should almost be language like. A sentence like "If (A equals 10) then print B as "xx.xx" else B = 0 end". But, that statement might also be written in a more mathematical syntax (like Fortran) as "If (A = 10) then....". Note the "=" in the second statement does NOT have the implied assignment and resulting TRUE logical decision (Spent 6 months chasing THAT bug!). 2) The language should be portable. The language should be executable as an interpreted, compiled, scripted or shell'ed running under most commonly available OS's and browsers. Perhaps Interpreted for testing, Compiled for execution speed, scripted for portability or shell'ed for utility work. Take features from scripting languages like Powershell, bash, incorporate execution speed of C, objectivity of Java or C++ and put them under one roof. Write a module that runs under IE, Firefox, Chrome, Opera, Windows, Linux, BSD, OS X, or anything else. 3) The code should be almost self-documenting. Nothing I hate worse than to have to go looking for the a type declaration, a

                      B Offline
                      B Offline
                      BillWoodruff
                      wrote on last edited by
                      #32

                      I think it's time for you to move forward from living in the late Paleolithic in terms of developer tools to the modern era where superb tools like .NET's compiler, Visual Studio, and add-ons like ReSharper, help make coding much more efficient. It's always going to be a "Tower of Bable" out there, in the real world. But, if you enjoy living without the wheel, fine.

                      “I speak in a poem of the ancient food of heroes: humiliation, unhappiness, discord. Those things are given to us to transform, so that we may make from the miserable circumstances of our lives things that are eternal, or aspire to be so.” Jorge Luis Borges

                      1 Reply Last reply
                      0
                      • C Chris Maunder

                        All your answers are at The Osmosian Order[^]

                        cheers Chris Maunder

                        A Offline
                        A Offline
                        Andy Brummer
                        wrote on last edited by
                        #33

                        How long have you been waiting to trot that one out? That frickin' awesome.

                        Curvature of the Mind now with 3D

                        1 Reply Last reply
                        0
                        • R rjmoses

                          Just spent the better part of two weeks trying to find a bug in a Linux bash script (missing ".") and I'm tired of looking for things like a missing equal sign in the middle of an C if statement, missing period in a PHP script, lower case variable name mixed with an upper case variable name, missing brace in a C++ object, undelared function or operator overloading....get my drift?...in other people's code. (Being the perfect programmer, I never make those kinds of mistakes! And I have swamp property if you're interested.) All too many programming errors are occurring because programming languages, like C, C++, java, etc., trace their origins back to the days when terseness was a desirable quality. Printing a program listing on an ASR 33 teletype at 10 CPS on a single threaded machine made using braces in C if statements instead of a clear if-then-else-endif highly desirable. (Remember the origins of C?) Those extra 9 characters took TIME to read in and to print out. And then there's issues of language diversity. C, C++, PHP, Java, Javascript, HTML, CSS, SQL, and other languages--what works where? So, here's a few of my thoughts: (And please don't be too anal about my examples--I really want to hear how programming languages could be advanced so that I can be more productive.) Among other things, a New Programming Language should: 1) Be clear and obvious in describing the functionality of the module. The resulting code should almost be language like. A sentence like "If (A equals 10) then print B as "xx.xx" else B = 0 end". But, that statement might also be written in a more mathematical syntax (like Fortran) as "If (A = 10) then....". Note the "=" in the second statement does NOT have the implied assignment and resulting TRUE logical decision (Spent 6 months chasing THAT bug!). 2) The language should be portable. The language should be executable as an interpreted, compiled, scripted or shell'ed running under most commonly available OS's and browsers. Perhaps Interpreted for testing, Compiled for execution speed, scripted for portability or shell'ed for utility work. Take features from scripting languages like Powershell, bash, incorporate execution speed of C, objectivity of Java or C++ and put them under one roof. Write a module that runs under IE, Firefox, Chrome, Opera, Windows, Linux, BSD, OS X, or anything else. 3) The code should be almost self-documenting. Nothing I hate worse than to have to go looking for the a type declaration, a

                          M Offline
                          M Offline
                          Mark_Wallace
                          wrote on last edited by
                          #34

                          So you want to learn COBOL?

                          I wanna be a eunuchs developer! Pass me a bread knife!

                          1 Reply Last reply
                          0
                          • C Chris Maunder

                            All your answers are at The Osmosian Order[^]

                            cheers Chris Maunder

                            E Offline
                            E Offline
                            Eytukan
                            wrote on last edited by
                            #35

                            You beat me to it Chris. I read this title in CP daily news, & came rushing here to suggest the legendary Osmosian. Great! You have a good memory too ;). Hail Osmo!

                            Starting to think people post kid pics in their profiles because that was the last time they were cute - Jeremy.

                            1 Reply Last reply
                            0
                            • R rjmoses

                              Just spent the better part of two weeks trying to find a bug in a Linux bash script (missing ".") and I'm tired of looking for things like a missing equal sign in the middle of an C if statement, missing period in a PHP script, lower case variable name mixed with an upper case variable name, missing brace in a C++ object, undelared function or operator overloading....get my drift?...in other people's code. (Being the perfect programmer, I never make those kinds of mistakes! And I have swamp property if you're interested.) All too many programming errors are occurring because programming languages, like C, C++, java, etc., trace their origins back to the days when terseness was a desirable quality. Printing a program listing on an ASR 33 teletype at 10 CPS on a single threaded machine made using braces in C if statements instead of a clear if-then-else-endif highly desirable. (Remember the origins of C?) Those extra 9 characters took TIME to read in and to print out. And then there's issues of language diversity. C, C++, PHP, Java, Javascript, HTML, CSS, SQL, and other languages--what works where? So, here's a few of my thoughts: (And please don't be too anal about my examples--I really want to hear how programming languages could be advanced so that I can be more productive.) Among other things, a New Programming Language should: 1) Be clear and obvious in describing the functionality of the module. The resulting code should almost be language like. A sentence like "If (A equals 10) then print B as "xx.xx" else B = 0 end". But, that statement might also be written in a more mathematical syntax (like Fortran) as "If (A = 10) then....". Note the "=" in the second statement does NOT have the implied assignment and resulting TRUE logical decision (Spent 6 months chasing THAT bug!). 2) The language should be portable. The language should be executable as an interpreted, compiled, scripted or shell'ed running under most commonly available OS's and browsers. Perhaps Interpreted for testing, Compiled for execution speed, scripted for portability or shell'ed for utility work. Take features from scripting languages like Powershell, bash, incorporate execution speed of C, objectivity of Java or C++ and put them under one roof. Write a module that runs under IE, Firefox, Chrome, Opera, Windows, Linux, BSD, OS X, or anything else. 3) The code should be almost self-documenting. Nothing I hate worse than to have to go looking for the a type declaration, a

                              T Offline
                              T Offline
                              Tomas Ramirez Gomez
                              wrote on last edited by
                              #36

                              Visual Basic .NET have almost all those features

                              1 Reply Last reply
                              0
                              • R rjmoses

                                Just spent the better part of two weeks trying to find a bug in a Linux bash script (missing ".") and I'm tired of looking for things like a missing equal sign in the middle of an C if statement, missing period in a PHP script, lower case variable name mixed with an upper case variable name, missing brace in a C++ object, undelared function or operator overloading....get my drift?...in other people's code. (Being the perfect programmer, I never make those kinds of mistakes! And I have swamp property if you're interested.) All too many programming errors are occurring because programming languages, like C, C++, java, etc., trace their origins back to the days when terseness was a desirable quality. Printing a program listing on an ASR 33 teletype at 10 CPS on a single threaded machine made using braces in C if statements instead of a clear if-then-else-endif highly desirable. (Remember the origins of C?) Those extra 9 characters took TIME to read in and to print out. And then there's issues of language diversity. C, C++, PHP, Java, Javascript, HTML, CSS, SQL, and other languages--what works where? So, here's a few of my thoughts: (And please don't be too anal about my examples--I really want to hear how programming languages could be advanced so that I can be more productive.) Among other things, a New Programming Language should: 1) Be clear and obvious in describing the functionality of the module. The resulting code should almost be language like. A sentence like "If (A equals 10) then print B as "xx.xx" else B = 0 end". But, that statement might also be written in a more mathematical syntax (like Fortran) as "If (A = 10) then....". Note the "=" in the second statement does NOT have the implied assignment and resulting TRUE logical decision (Spent 6 months chasing THAT bug!). 2) The language should be portable. The language should be executable as an interpreted, compiled, scripted or shell'ed running under most commonly available OS's and browsers. Perhaps Interpreted for testing, Compiled for execution speed, scripted for portability or shell'ed for utility work. Take features from scripting languages like Powershell, bash, incorporate execution speed of C, objectivity of Java or C++ and put them under one roof. Write a module that runs under IE, Firefox, Chrome, Opera, Windows, Linux, BSD, OS X, or anything else. 3) The code should be almost self-documenting. Nothing I hate worse than to have to go looking for the a type declaration, a

                                S Offline
                                S Offline
                                Stefan_Lang
                                wrote on last edited by
                                #37

                                As for missing equal signs, try Yoda conditions[^]! :)

                                GOTOs are a bit like wire coat hangers: they tend to breed in the darkness, such that where there once were few, eventually there are many, and the program's architecture collapses beneath them. (Fran Poretto) Point in case: http://www.infoq.com/news/2014/02/apple_gotofail_lessons[^]

                                K 1 Reply Last reply
                                0
                                • C Colborne_Greg

                                  20 years of programming in Cobol, C++, and html The language that meets your requirements is Visual Basic 2013. Everything that C++ can do Visual Basic 2013 can do. Here is an example of code, with no documentation, lets see if you can figure out what it does.

                                  Public Interface iArray(Of someType)
                                  Event ItemAdded(ByRef Item As someType)

                                  Sub AddRange(Range() As someType)
                                  Function Clear() As someType()
                                  Property Collected() As someType()
                                  Function Count() As Int64
                                  Property Item(Index As Int64) As someType
                                  
                                  WriteOnly Property NewItem() As someType
                                  WriteOnly Property NewItems As someType()
                                  Property Populated As Boolean
                                  Function LastIndex() As Int64
                                  

                                  End Interface
                                  <Serializable>
                                  Partial Public Class Array(Of SomeType)
                                  Implements iArray(Of SomeType)

                                  Private mCollected() As SomeType
                                  Private mPopulated As Boolean
                                  
                                  
                                  Public Event ItemAdded(ByRef Item As SomeType) Implements iArray(Of SomeType).ItemAdded
                                  
                                  
                                  Public Property Collected() As SomeType() Implements iArray(Of SomeType).Collected
                                      Get
                                          If mCollected Is Nothing Then mCollected = New SomeType() {}
                                          Return mCollected
                                      End Get
                                      Set(value As SomeType())
                                          mCollected = value
                                      End Set
                                  End Property
                                  
                                  Public Sub AddRange(Range() As SomeType) Implements iArray(Of SomeType).AddRange
                                      Allocate(Collected, Range)
                                      Populated = True
                                  End Sub
                                  Public Shared Function Allocate(ByRef TheArray() As SomeType, ByVal Value As SomeType) As SomeType()
                                      Return Allocate(TheArray, Value, LastIndexOf(TheArray))
                                  End Function
                                  Public Shared Function Allocate(ByRef TheArray() As SomeType, ByVal Values() As SomeType) As SomeType()
                                      Return Allocate(TheArray, Values, LastIndexOf(TheArray))
                                  End Function
                                  Public Shared Function Allocate(ByRef TheArray() As SomeType, ByVal Values() As SomeType, ByRef Index As Int64) As SomeType()
                                      Try
                                          For Current As Int64 = 0 To Values.Length - 1
                                              Allocate(TheArray, Values(Current), Index + Current)
                                          Next
                                      Catch
                                      End Try
                                      Return TheArray
                                  End Function
                                  Public Shared Function Allocate(ByRef TheArray() As SomeType, ByVal Value As SomeType, ByRef Index As Int64) As SomeType()
                                      Try
                                          TheArray(Index) = Value
                                      Catch
                                          ReDim Preserve TheArray(Index)
                                          TheArray(Index) = Value
                                      End Try
                                  
                                      Return TheArray
                                  
                                  S Offline
                                  S Offline
                                  Stefan_Lang
                                  wrote on last edited by
                                  #38

                                  It does create a maintenance hell ;P Seriously though: you can write undocumented code in any language. And it is never a good idea!

                                  GOTOs are a bit like wire coat hangers: they tend to breed in the darkness, such that where there once were few, eventually there are many, and the program's architecture collapses beneath them. (Fran Poretto) Point in case: http://www.infoq.com/news/2014/02/apple_gotofail_lessons[^]

                                  C 1 Reply Last reply
                                  0
                                  • S snorkie

                                    If it was easy, everybody could it it! But on a more serious note, not using Visual Studio is a choice... For the hourly costs of developers (at least in the US), its worth the money to equip people with the best tools to accomplish work. And before going off on costs, there are free versions of VS. Hogan

                                    S Offline
                                    S Offline
                                    Stefan_Lang
                                    wrote on last edited by
                                    #39

                                    snorkie wrote:

                                    If it was easy, everybody could it it!

                                    Did Resharper help you fix that sentence? No? Then why didn't you use VS to write your posting? ;P On a more serious note: 1. VisualAssist beats Resharper and (Un)Intellisense on C++ coding (at least unmanaged C++ - no experience wrt managed C++/CLI). 2. I do miss quite a few official standard C++11 features that VS still doesn't support. And I hate to figure out the exact syntax on certain template constructs with virtually no documentation on how to do properly (or at all)! (E. g. defining a template friend function inside a class) 3.

                                    snorkie wrote:

                                    And before going off on costs, there are free versions of VS.

                                    ... which don't support Resharper (or any other plugins) I do agree that VS is a great tool. But for some people it may not be the right one.

                                    GOTOs are a bit like wire coat hangers: they tend to breed in the darkness, such that where there once were few, eventually there are many, and the program's architecture collapses beneath them. (Fran Poretto) Point in case: http://www.infoq.com/news/2014/02/apple_gotofail_lessons[^]

                                    1 Reply Last reply
                                    0
                                    • S snorkie

                                      Sounds like a reason to requisition a larger monitor[^] :laugh:

                                      S Offline
                                      S Offline
                                      Stefan_Lang
                                      wrote on last edited by
                                      #40

                                      Wow, at >8000$ for a smartphone resolution screen? Seriously? :wtf:

                                      GOTOs are a bit like wire coat hangers: they tend to breed in the darkness, such that where there once were few, eventually there are many, and the program's architecture collapses beneath them. (Fran Poretto) Point in case: http://www.infoq.com/news/2014/02/apple_gotofail_lessons[^]

                                      1 Reply Last reply
                                      0
                                      • P PIEBALDconsult

                                        Let's see.. there must be a relevant XKDC... oh, yeah, this'll do: http://xkcd.com/927/[^] :-D Such language should not be English-centric like most of today's languages; rather each developer should be able to view and edit the code in his own chosen language. (And formatted as the individual likes as well.) In fact, I think a new language should be XML-based with the IDE applying styling and such as specified by the user. :-D Of course, I would never use such a language, I'd stick with good old C#.

                                        You'll never get very far if all you do is follow instructions.

                                        K Offline
                                        K Offline
                                        kalberts
                                        wrote on last edited by
                                        #41

                                        Algol-67 was defined in terms of abstract syntax elements that could be represented using any suitable set of concrete symbols. I never saw much Algol-67 source code, but most of what I have seen used German keywords. (Algol-67 never caugth on - it was way ahead of its time. Even today, 47 years later, it would definitely be descibed as a very advanced language. I haven't looked at the specification for a while, but I am sure that some of its useful features are still missing from today's languages.) Maybe it was Algol-67 that inspired us when we as students made a Norwegian version of Pascal. It really was a simple word replacement program replacing MEDAN with WITH, BYRJ with BEGIN and STOGG with END (those who know Norwegian will see that we chose the dialect-based Norwegian variant), writing it to a temporary file and invoking the standard compiler on that temporary one. It worked perfectly as long as you in you user defined symbols stayed away from both the Norwegian and English reserved words.

                                        1 Reply Last reply
                                        0
                                        • P PIEBALDconsult

                                          Eddy Vluggen wrote:

                                          rjmoses wrote:

                                          1. The language should be portable.

                                          It's not the language that decides on what platforms it will be implemented. VB6 will never appear on Linux without starting a major war.

                                          Every language* is portable, but not every language gets ported everywhere. * With the possible exception of the various assembly languages, but I suspect that even they could be compiled for a system they weren't intended for, perhaps with some limitations, but I'm no expert on that.

                                          You'll never get very far if all you do is follow instructions.

                                          K Offline
                                          K Offline
                                          kalberts
                                          wrote on last edited by
                                          #42

                                          Portable assembler is known as plain C.

                                          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