Announcement

Collapse
No announcement yet.

Suggestions for the PB Compiler and Editor.

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • Suggestions for the PB Compiler and Editor.

    I have worked with PB since day one and I must say that some things never change,
    and I have suggestions to improve ease of programming, and programming speed.

    1. The Compiler
    The compiler should NOT compile entire INC/BAS file(s) with the EXE.
    It should only 'extract' what's used by the program. Creating a temp.bas
    file or something like that before compiling it. This would allow the
    programmer to write libraries of codes without worries that all subs/func
    will be included in the EXE.

    2. The Editor
    a)
    The editor should be a smart editor. Auto-caption of subs/func/var/type etc.
    It should capitalize sub/func etc. to the declared ones. This will save the
    programmer time with the Shift key or hard to read code in all lower case.
    b)
    The editor should display the params of any subs/func. Either in a tooltip
    or at the bottom of the window. It should also show record type so that we
    can see what it is while using it. It should also show vars type, say INT,
    LONG etc. so that we know exactly what they are.
    c)
    Easy jumps and returns to other INC/BAS files. Say I want to edit a sub in
    another BAS file. Ctrl-Arrow the word to go there, make my changes,
    Ctrl-Enter to return back to were I was. And this should work like
    GOSUB/RETURN.

    I'm really not good at explaining, so I hope everyone understands!

    -Michael-

  • #2
    Michael,
    I presume from your other posts about the PB editor that you have not tried PowerIDE? It is a free editor for BASIC compilers and has most (but not all) of the things you mentioned (and much more),

    The download link is:

    http://www.kgpsoftware.freeserve.co....ducts/poweride

    PowerIDE is in beta stages and is currently at BETA release #2, you can also join the mailing list to be updated about new releases.

    Regards,


    ------------------
    Kev G Peel
    KGP Software, Bridgwater, UK.
    www.go.to/kgpsoftware
    kgpsoftware.com | Slam DBMS | PrpT Control | Other Downloads | Contact Me

    Comment


    • #3
      Well GEEZ, how could I have missed that!!

      Thanks for letting me know, I'll give it a try right now

      Regards,
      Michael

      ------------------

      Comment


      • #4
        Well Kev, I've downloaded it and so far so good. I like the
        navigation, and the SDI is much better than MDI. but, you said
        that PowerIDE does what my whish list for PB editor is!! How?
        It does not auto-capitalize and pre-type! Nor does it show me
        subs/func params! Am I missing something?

        Regards,
        Michael

        Comment


        • #5
          Michael Purkhardt,

          1. The Compiler

          ===========================================================================
          The compiler should NOT compile entire INC/BAS file(s) with the EXE. It
          should only 'extract' what's used by the program. Creating a temp.bas file
          or something like that before compiling it. This would allow the
          programmer to write libraries of codes without worries that all subs/func
          will be included in the EXE.
          ===========================================================================

          We don't actually need to do this, if we end up getting libraries in the
          normal sense, the linker resolves dependencies so that you only get the
          library modules that your program calls. The only catch here is that the
          library modules need to be written in such a way as to prevent granularity
          problems.

          This is no more in most instances than writing each function/sub into its
          own module and only ever putting more than one together in a module if they
          must work together.

          I don't inflict my own taste in editors on anyone else as it is a bit too
          austere for most. I post a couple of my toys that I use myself and in my
          MASM32 package on my site as freeware and you are welcome to have a look at
          them as well.
          www.pbq.com.au/home/hutch/

          Quick Editor is written in PBDLL60 and TheGun is written in MASM.

          Regards,

          [email protected]

          ------------------
          hutch at movsd dot com
          The MASM Forum

          www.masm32.com

          Comment


          • #6

            Yeah this bit....

            Originally posted by me...
            ...and has most (but not all) of the things you mentioned...
            PowerIDE is in early BETA at the moment, things like auto-capitalization and syntax checking will come afterwards, the editor works now, and it works well - implementing features such as the aforementioned will come later on.

            Regards,

            ------------------
            Kev G Peel
            KGP Software, Bridgwater, UK.
            www.go.to/kgpsoftware
            kgpsoftware.com | Slam DBMS | PrpT Control | Other Downloads | Contact Me

            Comment


            • #7
              But Steve, what linker are we talking about??

              -Michael-

              ------------------

              Comment


              • #8
                Michael,

                Pretty straight forward, to have libraries, there will need to be a linker
                to go with the compiler unless it was done another way which is of course
                possible. It could in fact be built into the compiler and accessed
                seperately. The compiler will need to have the capacity to make a module
                in the normal sense of the term and compile it into an object module of
                some type. A seperate LIB style utility would probably be needed to build
                the libraries.

                I am familiar in MASM with being able to nominate libraries using the syntax

                include \path\include.inc
                includelib \path\libname.lib

                so it is possible to do the same. I would be happy with either, as long as
                it is a viable way of encapsulating pre-written blocks of code. One of the
                many advantages with libraries is in the simplification in design of code
                generators which will allow far more complex code to be automatically
                generated and still maintain size and speed eficiency.

                A long time ago I used to build complete QUICK BASIC front ends with mouse
                and menu support using a combination of Ethan Winer's, Tom Hanlin's and my
                own MASM module libraries in a code generator written in Quick Basic.

                This capacity in a language as powerful as PowerBASIC would be genuine
                Rock 'n Roll in terms of code generation and the results would still be
                slick and quick.

                Regards,

                [email protected]

                ------------------
                hutch at movsd dot com
                The MASM Forum

                www.masm32.com

                Comment


                • #9
                  I see Steve. But PB doesn't have a linker, and so as Delphi.
                  But yet, Delphi doesn't compile unused modules or functions.
                  I think that PB needs to do the same. It isn't all that hard
                  to make it to only compile what's needed without the need for
                  a linker, which is harder to make. Beside, I wouldn't like to
                  have to make a LIB file for library and have to re-link the
                  lib everytime I make changes to the lib source.

                  -Michael-

                  Comment

                  Working...
                  X