Can I translate an app under GPLv3 into Swift without using GPLv3?

The name of the pictureThe name of the pictureThe name of the pictureClash Royale CLAN TAG#URR8PPP











up vote
3
down vote

favorite












Can I translate an App from Android using GPLv3 into Swift? Because actually I don't use any source code. Do I need to keep it under GPLv3 and open source? Is there any method to avoid infection if it must under GPLv3?










share|improve this question









New contributor




F.Jiang is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.























    up vote
    3
    down vote

    favorite












    Can I translate an App from Android using GPLv3 into Swift? Because actually I don't use any source code. Do I need to keep it under GPLv3 and open source? Is there any method to avoid infection if it must under GPLv3?










    share|improve this question









    New contributor




    F.Jiang is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
    Check out our Code of Conduct.





















      up vote
      3
      down vote

      favorite









      up vote
      3
      down vote

      favorite











      Can I translate an App from Android using GPLv3 into Swift? Because actually I don't use any source code. Do I need to keep it under GPLv3 and open source? Is there any method to avoid infection if it must under GPLv3?










      share|improve this question









      New contributor




      F.Jiang is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
      Check out our Code of Conduct.











      Can I translate an App from Android using GPLv3 into Swift? Because actually I don't use any source code. Do I need to keep it under GPLv3 and open source? Is there any method to avoid infection if it must under GPLv3?







      gpl-3






      share|improve this question









      New contributor




      F.Jiang is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
      Check out our Code of Conduct.











      share|improve this question









      New contributor




      F.Jiang is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
      Check out our Code of Conduct.









      share|improve this question




      share|improve this question








      edited 10 mins ago









      MDTech.us_MAN

      1032




      1032






      New contributor




      F.Jiang is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
      Check out our Code of Conduct.









      asked 17 hours ago









      F.Jiang

      161




      161




      New contributor




      F.Jiang is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
      Check out our Code of Conduct.





      New contributor





      F.Jiang is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
      Check out our Code of Conduct.






      F.Jiang is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
      Check out our Code of Conduct.




















          2 Answers
          2






          active

          oldest

          votes

















          up vote
          7
          down vote













          The GPLv3 licence of the original requires that, if you create a work which is (in copyright terms) a derivative of the original, and you distribute your derivative, you must do so under GPLv3.



          It's not clear to me in what sense you're using translate. If you mean it in the linguistic sense, translating from one human language to another, then I can't see any way not to create a derivative.



          If you're using it to mean converting an application from one programming language to another, this is normally referred to as porting. It is possible to do this in a way that doesn't create a derivative work, but it requires two people, and is known as a clean-room reimplementation. To do this, one person must take the current work apart, and express exactly what it does in a document called a functional specification. The other person then, without ever seeing the original work or directly communicating with the first person, implements the functional specification in the new computer language. This is an enormous amount of work. If you decide to do the port by yourself it is very likely that the work you create would be regarded as a derivative of the original work.






          share|improve this answer
















          • 5




            A clean room implementation is of course not required to avoid infringement, it just makes a possible legal defense against copyright infringement claims much easier. Less stringent approaches have more risk, but are not necessarily infringing either. As long as OP doesn't borrow the design and or transcribe sections of the GPL'ed app but does their own design, inspired by the GPL'ed code, they will likely be fine. Copying ideas is allowed :)
            – amon
            15 hours ago






          • 1




            @amon True, but that would not be considered "translating" or "porting". It would be a totally independent implementation. It's not inspired by the GPLed code, but by the visible behavior of the application and/or its documentation.
            – Barmar
            13 hours ago

















          up vote
          2
          down vote













          MadHatter names one viable way. Another method is to create an emulator. If your Swift emulator emulates enough of the Android runtime, it can run the orignal App (and likely at least a few more Apps, especially the simpler ones).



          Because the emulator is a stand-alone work, it's not in any way covered by the original license. Downside: this is hard.






          share|improve this answer




















            Your Answer







            StackExchange.ready(function()
            var channelOptions =
            tags: "".split(" "),
            id: "619"
            ;
            initTagRenderer("".split(" "), "".split(" "), channelOptions);

            StackExchange.using("externalEditor", function()
            // Have to fire editor after snippets, if snippets enabled
            if (StackExchange.settings.snippets.snippetsEnabled)
            StackExchange.using("snippets", function()
            createEditor();
            );

            else
            createEditor();

            );

            function createEditor()
            StackExchange.prepareEditor(
            heartbeatType: 'answer',
            convertImagesToLinks: false,
            noModals: false,
            showLowRepImageUploadWarning: true,
            reputationToPostImages: null,
            bindNavPrevention: true,
            postfix: "",
            noCode: true, onDemand: true,
            discardSelector: ".discard-answer"
            ,immediatelyShowMarkdownHelp:true
            );



            );






            F.Jiang is a new contributor. Be nice, and check out our Code of Conduct.









             

            draft saved


            draft discarded


















            StackExchange.ready(
            function ()
            StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fopensource.stackexchange.com%2fquestions%2f7464%2fcan-i-translate-an-app-under-gplv3-into-swift-without-using-gplv3%23new-answer', 'question_page');

            );

            Post as a guest






























            2 Answers
            2






            active

            oldest

            votes








            2 Answers
            2






            active

            oldest

            votes









            active

            oldest

            votes






            active

            oldest

            votes








            up vote
            7
            down vote













            The GPLv3 licence of the original requires that, if you create a work which is (in copyright terms) a derivative of the original, and you distribute your derivative, you must do so under GPLv3.



            It's not clear to me in what sense you're using translate. If you mean it in the linguistic sense, translating from one human language to another, then I can't see any way not to create a derivative.



            If you're using it to mean converting an application from one programming language to another, this is normally referred to as porting. It is possible to do this in a way that doesn't create a derivative work, but it requires two people, and is known as a clean-room reimplementation. To do this, one person must take the current work apart, and express exactly what it does in a document called a functional specification. The other person then, without ever seeing the original work or directly communicating with the first person, implements the functional specification in the new computer language. This is an enormous amount of work. If you decide to do the port by yourself it is very likely that the work you create would be regarded as a derivative of the original work.






            share|improve this answer
















            • 5




              A clean room implementation is of course not required to avoid infringement, it just makes a possible legal defense against copyright infringement claims much easier. Less stringent approaches have more risk, but are not necessarily infringing either. As long as OP doesn't borrow the design and or transcribe sections of the GPL'ed app but does their own design, inspired by the GPL'ed code, they will likely be fine. Copying ideas is allowed :)
              – amon
              15 hours ago






            • 1




              @amon True, but that would not be considered "translating" or "porting". It would be a totally independent implementation. It's not inspired by the GPLed code, but by the visible behavior of the application and/or its documentation.
              – Barmar
              13 hours ago














            up vote
            7
            down vote













            The GPLv3 licence of the original requires that, if you create a work which is (in copyright terms) a derivative of the original, and you distribute your derivative, you must do so under GPLv3.



            It's not clear to me in what sense you're using translate. If you mean it in the linguistic sense, translating from one human language to another, then I can't see any way not to create a derivative.



            If you're using it to mean converting an application from one programming language to another, this is normally referred to as porting. It is possible to do this in a way that doesn't create a derivative work, but it requires two people, and is known as a clean-room reimplementation. To do this, one person must take the current work apart, and express exactly what it does in a document called a functional specification. The other person then, without ever seeing the original work or directly communicating with the first person, implements the functional specification in the new computer language. This is an enormous amount of work. If you decide to do the port by yourself it is very likely that the work you create would be regarded as a derivative of the original work.






            share|improve this answer
















            • 5




              A clean room implementation is of course not required to avoid infringement, it just makes a possible legal defense against copyright infringement claims much easier. Less stringent approaches have more risk, but are not necessarily infringing either. As long as OP doesn't borrow the design and or transcribe sections of the GPL'ed app but does their own design, inspired by the GPL'ed code, they will likely be fine. Copying ideas is allowed :)
              – amon
              15 hours ago






            • 1




              @amon True, but that would not be considered "translating" or "porting". It would be a totally independent implementation. It's not inspired by the GPLed code, but by the visible behavior of the application and/or its documentation.
              – Barmar
              13 hours ago












            up vote
            7
            down vote










            up vote
            7
            down vote









            The GPLv3 licence of the original requires that, if you create a work which is (in copyright terms) a derivative of the original, and you distribute your derivative, you must do so under GPLv3.



            It's not clear to me in what sense you're using translate. If you mean it in the linguistic sense, translating from one human language to another, then I can't see any way not to create a derivative.



            If you're using it to mean converting an application from one programming language to another, this is normally referred to as porting. It is possible to do this in a way that doesn't create a derivative work, but it requires two people, and is known as a clean-room reimplementation. To do this, one person must take the current work apart, and express exactly what it does in a document called a functional specification. The other person then, without ever seeing the original work or directly communicating with the first person, implements the functional specification in the new computer language. This is an enormous amount of work. If you decide to do the port by yourself it is very likely that the work you create would be regarded as a derivative of the original work.






            share|improve this answer












            The GPLv3 licence of the original requires that, if you create a work which is (in copyright terms) a derivative of the original, and you distribute your derivative, you must do so under GPLv3.



            It's not clear to me in what sense you're using translate. If you mean it in the linguistic sense, translating from one human language to another, then I can't see any way not to create a derivative.



            If you're using it to mean converting an application from one programming language to another, this is normally referred to as porting. It is possible to do this in a way that doesn't create a derivative work, but it requires two people, and is known as a clean-room reimplementation. To do this, one person must take the current work apart, and express exactly what it does in a document called a functional specification. The other person then, without ever seeing the original work or directly communicating with the first person, implements the functional specification in the new computer language. This is an enormous amount of work. If you decide to do the port by yourself it is very likely that the work you create would be regarded as a derivative of the original work.







            share|improve this answer












            share|improve this answer



            share|improve this answer










            answered 17 hours ago









            MadHatter

            7,1191533




            7,1191533







            • 5




              A clean room implementation is of course not required to avoid infringement, it just makes a possible legal defense against copyright infringement claims much easier. Less stringent approaches have more risk, but are not necessarily infringing either. As long as OP doesn't borrow the design and or transcribe sections of the GPL'ed app but does their own design, inspired by the GPL'ed code, they will likely be fine. Copying ideas is allowed :)
              – amon
              15 hours ago






            • 1




              @amon True, but that would not be considered "translating" or "porting". It would be a totally independent implementation. It's not inspired by the GPLed code, but by the visible behavior of the application and/or its documentation.
              – Barmar
              13 hours ago












            • 5




              A clean room implementation is of course not required to avoid infringement, it just makes a possible legal defense against copyright infringement claims much easier. Less stringent approaches have more risk, but are not necessarily infringing either. As long as OP doesn't borrow the design and or transcribe sections of the GPL'ed app but does their own design, inspired by the GPL'ed code, they will likely be fine. Copying ideas is allowed :)
              – amon
              15 hours ago






            • 1




              @amon True, but that would not be considered "translating" or "porting". It would be a totally independent implementation. It's not inspired by the GPLed code, but by the visible behavior of the application and/or its documentation.
              – Barmar
              13 hours ago







            5




            5




            A clean room implementation is of course not required to avoid infringement, it just makes a possible legal defense against copyright infringement claims much easier. Less stringent approaches have more risk, but are not necessarily infringing either. As long as OP doesn't borrow the design and or transcribe sections of the GPL'ed app but does their own design, inspired by the GPL'ed code, they will likely be fine. Copying ideas is allowed :)
            – amon
            15 hours ago




            A clean room implementation is of course not required to avoid infringement, it just makes a possible legal defense against copyright infringement claims much easier. Less stringent approaches have more risk, but are not necessarily infringing either. As long as OP doesn't borrow the design and or transcribe sections of the GPL'ed app but does their own design, inspired by the GPL'ed code, they will likely be fine. Copying ideas is allowed :)
            – amon
            15 hours ago




            1




            1




            @amon True, but that would not be considered "translating" or "porting". It would be a totally independent implementation. It's not inspired by the GPLed code, but by the visible behavior of the application and/or its documentation.
            – Barmar
            13 hours ago




            @amon True, but that would not be considered "translating" or "porting". It would be a totally independent implementation. It's not inspired by the GPLed code, but by the visible behavior of the application and/or its documentation.
            – Barmar
            13 hours ago










            up vote
            2
            down vote













            MadHatter names one viable way. Another method is to create an emulator. If your Swift emulator emulates enough of the Android runtime, it can run the orignal App (and likely at least a few more Apps, especially the simpler ones).



            Because the emulator is a stand-alone work, it's not in any way covered by the original license. Downside: this is hard.






            share|improve this answer
























              up vote
              2
              down vote













              MadHatter names one viable way. Another method is to create an emulator. If your Swift emulator emulates enough of the Android runtime, it can run the orignal App (and likely at least a few more Apps, especially the simpler ones).



              Because the emulator is a stand-alone work, it's not in any way covered by the original license. Downside: this is hard.






              share|improve this answer






















                up vote
                2
                down vote










                up vote
                2
                down vote









                MadHatter names one viable way. Another method is to create an emulator. If your Swift emulator emulates enough of the Android runtime, it can run the orignal App (and likely at least a few more Apps, especially the simpler ones).



                Because the emulator is a stand-alone work, it's not in any way covered by the original license. Downside: this is hard.






                share|improve this answer












                MadHatter names one viable way. Another method is to create an emulator. If your Swift emulator emulates enough of the Android runtime, it can run the orignal App (and likely at least a few more Apps, especially the simpler ones).



                Because the emulator is a stand-alone work, it's not in any way covered by the original license. Downside: this is hard.







                share|improve this answer












                share|improve this answer



                share|improve this answer










                answered 10 hours ago









                MSalters

                80448




                80448




















                    F.Jiang is a new contributor. Be nice, and check out our Code of Conduct.









                     

                    draft saved


                    draft discarded


















                    F.Jiang is a new contributor. Be nice, and check out our Code of Conduct.












                    F.Jiang is a new contributor. Be nice, and check out our Code of Conduct.











                    F.Jiang is a new contributor. Be nice, and check out our Code of Conduct.













                     


                    draft saved


                    draft discarded














                    StackExchange.ready(
                    function ()
                    StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fopensource.stackexchange.com%2fquestions%2f7464%2fcan-i-translate-an-app-under-gplv3-into-swift-without-using-gplv3%23new-answer', 'question_page');

                    );

                    Post as a guest













































































                    Comments

                    Popular posts from this blog

                    What does second last employer means? [closed]

                    List of Gilmore Girls characters

                    Confectionery