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
CODE PROJECT For Those Who Code
  • Home
  • Articles
  • FAQ
Community
  1. Home
  2. The Lounge
  3. Maybe a first article from my side - unsure how to do it - tips appreciated

Maybe a first article from my side - unsure how to do it - tips appreciated

Scheduled Pinned Locked Moved The Lounge
questioncsscomtools
28 Posts 8 Posters 2 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.
  • L Lost User

    Wow, thank you very much!

    Quote:

    Might take me a day or two

    Two days :laugh: I need some more days (x10, x20) to be ready, I'm still starting on that. The whole thing I have to develop in Embarcadero c++ and migrate it then to c# for the article so that someone may read it

    OriginalGriffO Offline
    OriginalGriffO Offline
    OriginalGriff
    wrote on last edited by
    #18

    They are a lot quicker to read than to write! :laugh:

    Bad command or file name. Bad, bad command! Sit! Stay! Staaaay...

    "I have no idea what I did, but I'm taking full credit for it." - ThisOldTony
    "Common sense is so rare these days, it should be classified as a super power" - Random T-shirt

    L 1 Reply Last reply
    0
    • L Lost User

      Sorry to disturb, please feel free _not_ to answer :) What do you think about this Basic layout for the article: Content ^Introduction ^What you will learn ^Prerequisites ^What is a Parser ^What is EBNF (Extended Backus–Naur form) ^EBNF to data structure ^From EBNF to wizard ^Using the code :Introduction This article tries to point out how a simple programming language can be defined by a meta language like EBNF (Extended Backus–Naur form) and how a parser and - the main aspect here- a wizard can be build based on such a meta definition. Since the whole topic is very wide, we will concentrate here on the theme "From EBNF to Wizard". The also very intersting part to develop a CompilerCompiler (CoCo) is addressed in a minor way. Minor, because you can find a lot about CoCo in www e.g. - https://www.codeproject.com/Articles/343646/Mathematical-Expression-Parser-Using-Coco-R - .... TODO much more :What you will learn How to create a wizard for a formal defined "programming language" - defined e.g. by a meta language like EBNF. :Prerequisites It is an advantage if you allready have some basics knowledege about parsing (lexical analysis, syntacticals analysis, semantic analysis) and also some knowledge about EBNF. In case you are familar with this stuff you can skip the next two sections and proceed with ^EBNF to data structure :What is a Parser in short Keep in mind, this is a very abreviated introduction. The job of parsing a text can be splitted into three Jobs: 1. Lexcial Analysis 2. Syntactical Analysis 3. Semantic Analysis While https://de.wikipedia.org/wiki/Compiler#Lexikalische\_Analyse does describe these three points togehter (english wiki not) I feel free to translate and summarize them here instead of giving links to wiki: TODO :What is EBNF (Extended Backus–Naur form) TODO :EBNF to data structure TODO :From EBNF to wizard TODO, the big part here :Using the code ::Some notes about the code The code is far away to be optimal or ready for production. Also it will break a lot of times SOLID principles. Why I'm doing it like this: The main target is to show in a very easy/direct way the relations of the involved aspects, without hiding the essentials by using over engineered code. Also the code is originally developed with Embarcadero Studio in c++ and to be more up to date I migrated all the stuff to c# :Points of Interest TODO :History V#.# Inital release yyyy/mm/dd BTW: I decided t

      M Offline
      M Offline
      Marc Clifton
      wrote on last edited by
      #19

      No problem. The outline is great. Something my readers have commented that they liked, which you elude to with the section on "some notes about the code" is some light (and lighthearted) discussion of the compromises, rabbit holes, and other things I did (including the wrong ones) that I discovered along the way. BTW, if you'd like me to proofread anything (regarding your concern about English) I'd be happy to offer my editing services. Also, there's this [Table of Contents generator](https://www.codeproject.com/Articles/1532/HTML-Table-Of-Contents-Generator) that I use for large articles. It has a couple bugs (no symbols in the headers, and popping two levels breaks further link generation) but otherwise it's a solid tool and there's some comments about how to fix those bugs in the article itself. Marc

      Latest Article - Merkle Trees Learning to code with python is like learning to swim with those little arm floaties. It gives you undeserved confidence and will eventually drown you. - DangerBunny Artificial intelligence is the only remedy for natural stupidity. - CDP1802

      L 1 Reply Last reply
      0
      • OriginalGriffO OriginalGriff

        They are a lot quicker to read than to write! :laugh:

        Bad command or file name. Bad, bad command! Sit! Stay! Staaaay...

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

        While writing on it I think I feel 1:1 what you mean :laugh: At the Moment I wish I would have never announced that I will write an article on this. But because I did it, I have to go through it :sigh: Bruno

        OriginalGriffO 1 Reply Last reply
        0
        • L Lost User

          While writing on it I think I feel 1:1 what you mean :laugh: At the Moment I wish I would have never announced that I will write an article on this. But because I did it, I have to go through it :sigh: Bruno

          OriginalGriffO Offline
          OriginalGriffO Offline
          OriginalGriff
          wrote on last edited by
          #21

          Take your time. If it's worth doing, it's not worth rushing - and it can help to walk away for a day or more and then re-read what you have written so far.

          Bad command or file name. Bad, bad command! Sit! Stay! Staaaay...

          "I have no idea what I did, but I'm taking full credit for it." - ThisOldTony
          "Common sense is so rare these days, it should be classified as a super power" - Random T-shirt

          1 Reply Last reply
          0
          • M Marc Clifton

            No problem. The outline is great. Something my readers have commented that they liked, which you elude to with the section on "some notes about the code" is some light (and lighthearted) discussion of the compromises, rabbit holes, and other things I did (including the wrong ones) that I discovered along the way. BTW, if you'd like me to proofread anything (regarding your concern about English) I'd be happy to offer my editing services. Also, there's this [Table of Contents generator](https://www.codeproject.com/Articles/1532/HTML-Table-Of-Contents-Generator) that I use for large articles. It has a couple bugs (no symbols in the headers, and popping two levels breaks further link generation) but otherwise it's a solid tool and there's some comments about how to fix those bugs in the article itself. Marc

            Latest Article - Merkle Trees Learning to code with python is like learning to swim with those little arm floaties. It gives you undeserved confidence and will eventually drown you. - DangerBunny Artificial intelligence is the only remedy for natural stupidity. - CDP1802

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

            Thanks a lot again for your help. Proofread anything: I really appreciate to accept your offer, I allready ask @OriginalGriff to help me on this. Maybe another expirience for me to see the differences between britan and us english... I assume I will see similar (but hopefully easier differences) things compared to when I have to translate EU-Spanish to Argentina/Colombia/Equador/Salvador/Equador/Honduras :doh: :laugh: Bruno

            M 1 Reply Last reply
            0
            • L Lost User

              Thanks a lot again for your help. Proofread anything: I really appreciate to accept your offer, I allready ask @OriginalGriff to help me on this. Maybe another expirience for me to see the differences between britan and us english... I assume I will see similar (but hopefully easier differences) things compared to when I have to translate EU-Spanish to Argentina/Colombia/Equador/Salvador/Equador/Honduras :doh: :laugh: Bruno

              M Offline
              M Offline
              Marc Clifton
              wrote on last edited by
              #23

              0x01AA wrote:

              I allready ask @OriginalGriff to help me on this.

              Awesome! Marc

              Latest Article - Merkle Trees Learning to code with python is like learning to swim with those little arm floaties. It gives you undeserved confidence and will eventually drown you. - DangerBunny Artificial intelligence is the only remedy for natural stupidity. - CDP1802

              1 Reply Last reply
              0
              • OriginalGriffO OriginalGriff

                I keep meaning to do it in Word (or at least Libre Office) but ... I still end up with the online editor. But Word has one big advantage: it has a spell check. The online version doesn't...

                Bad command or file name. Bad, bad command! Sit! Stay! Staaaay...

                B Offline
                B Offline
                Brady Kelly
                wrote on last edited by
                #24

                OriginalGriff wrote:

                The online version doesn't...

                Yet most browsers do.

                Immanentize the Eschaton!

                OriginalGriffO 1 Reply Last reply
                0
                • B Brady Kelly

                  OriginalGriff wrote:

                  The online version doesn't...

                  Yet most browsers do.

                  Immanentize the Eschaton!

                  OriginalGriffO Offline
                  OriginalGriffO Offline
                  OriginalGriff
                  wrote on last edited by
                  #25

                  Only generally in "boring" text boxes: as soon as you start formatting stuff spell check goes out the window. In fact, even in multiline textboxes, Chrome loses spell check half the time when I paste HTML into a CP box (like this one)

                  Bad command or file name. Bad, bad command! Sit! Stay! Staaaay...

                  "I have no idea what I did, but I'm taking full credit for it." - ThisOldTony
                  "Common sense is so rare these days, it should be classified as a super power" - Random T-shirt

                  1 Reply Last reply
                  0
                  • L Lost User

                    I have actually to implement a wizard for a _very very_ simple "programming language" which supports something about 1% (rather less) of c language. While reading all this stuff about Parsers and CompilerCompiler (also here on CP) I came to the idea to share all my expirience by writing an article about this. My Immagination about the article: - A short description what a Parser is doing (my doubts, that this can be described in short) - Short explanation how one describes a "language" by EBNF (my doubts, that this can be described in short) - Explain parsing EBNF to generate "the language" Parser - "The Target Of The Article": How to use the above parsed EBNF to create a wizard Because the whole path is something recursive (parsing ebnf to create a parser) I have my doubts wheter all this stuff could/should be explained in only one article. On the other hand, should I prescribe the knowledge about parsing? How you would structure this? The easier question: What do article writer suggest? Should I use the online editor (https://www.codeproject.com/script/Articles/Submit.aspx, Option 1) or should I do everything offline Option 2? Thank you for help.

                    J Offline
                    J Offline
                    jediYL
                    wrote on last edited by
                    #26

                    :rose:You might want to try CodeProject.Show, an offline article writer for CodeProject developed by Anele Mbanga. The link is to the CodeProject article which includes source code and installer for the Show app. In Anele's words,

                    Quote:

                    The purpose of this article is to introduce CodeProject.Show, an offline CodeProject article writer. CodeProject.Show has been developed using WinForms, ICSharp.TextEditor and the Webbrowser control using VB.Net. I started developing this five days ago to enable me to write my CodeProject articles offline. This was due to internet connectivity issues at times being erratic and also me loosing an article due to these internet challenges. I also wanted to ensure that I kept track of my articles and are able to update them in one place.

                    Good luck! :-D

                    Remain Calm & Continue To Google

                    L 1 Reply Last reply
                    0
                    • J jediYL

                      :rose:You might want to try CodeProject.Show, an offline article writer for CodeProject developed by Anele Mbanga. The link is to the CodeProject article which includes source code and installer for the Show app. In Anele's words,

                      Quote:

                      The purpose of this article is to introduce CodeProject.Show, an offline CodeProject article writer. CodeProject.Show has been developed using WinForms, ICSharp.TextEditor and the Webbrowser control using VB.Net. I started developing this five days ago to enable me to write my CodeProject articles offline. This was due to internet connectivity issues at times being erratic and also me loosing an article due to these internet challenges. I also wanted to ensure that I kept track of my articles and are able to update them in one place.

                      Good luck! :-D

                      Remain Calm & Continue To Google

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

                      Thank you, I will have a look to it.

                      1 Reply Last reply
                      0
                      • OriginalGriffO OriginalGriff

                        I keep meaning to do it in Word (or at least Libre Office) but ... I still end up with the online editor. But Word has one big advantage: it has a spell check. The online version doesn't...

                        Bad command or file name. Bad, bad command! Sit! Stay! Staaaay...

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

                        OriginalGriff wrote:

                        I still end up with the online editor. But Word has one big advantage

                        Or two, maybe: The article's still there if a rugrat chews through your Ethernet cable.

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

                        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