What are the characteristics of a typeless programming language?












3












$begingroup$


Assume that we have an imaginary programming language that allows you to assign a Literal to a variable, but does not allow you to set the the data type of the variable, for example



Allocate4Bytes   an_int_variable        123456;
Allocate2Bytes a_short_int_variable 123;
Allocate4Bytes a_float_variable 2.1;


And this programming language also provides different operators to work with different data types, for example:




  • The + operator is used to add an int to a short int.

  • The #+ operator is used to add a float to an int.

  • the = operator is used to assign an int to an int.

  • the #= operator is used to assign a short int to a short int.

  • etc.


So it is the job of the programmer to keep track of the data type of each variable and use the appropriate operator on it.



Is this programming language considered to be a typeless programming language, or can we say that this programming language have data types (even though it does not have operator overloading and type safety, etc.)?










share|cite|improve this question







New contributor




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







$endgroup$












  • $begingroup$
    It's simple: the variables have no type. An example of a typed language is C/C++ (you have a char, an int, a float,...), while not typed languages don't have it (e.g., Mathematica).
    $endgroup$
    – Iago Carvalho
    4 hours ago










  • $begingroup$
    Your language, on the other hand, looks like to be typed (even if not explicitly defined). However, I'm not an expert on this subject and I'm not 100% sure about it... Please, someone correct me if I'm wrong.
    $endgroup$
    – Iago Carvalho
    4 hours ago










  • $begingroup$
    @Iago Carvalho You said that a typeless language means that "the variables have no type", and then you said "Your language, on the other hand, looks like to be typed". How is my language looks like to be typed if my variables don't have data types?
    $endgroup$
    – user4582812
    3 hours ago
















3












$begingroup$


Assume that we have an imaginary programming language that allows you to assign a Literal to a variable, but does not allow you to set the the data type of the variable, for example



Allocate4Bytes   an_int_variable        123456;
Allocate2Bytes a_short_int_variable 123;
Allocate4Bytes a_float_variable 2.1;


And this programming language also provides different operators to work with different data types, for example:




  • The + operator is used to add an int to a short int.

  • The #+ operator is used to add a float to an int.

  • the = operator is used to assign an int to an int.

  • the #= operator is used to assign a short int to a short int.

  • etc.


So it is the job of the programmer to keep track of the data type of each variable and use the appropriate operator on it.



Is this programming language considered to be a typeless programming language, or can we say that this programming language have data types (even though it does not have operator overloading and type safety, etc.)?










share|cite|improve this question







New contributor




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







$endgroup$












  • $begingroup$
    It's simple: the variables have no type. An example of a typed language is C/C++ (you have a char, an int, a float,...), while not typed languages don't have it (e.g., Mathematica).
    $endgroup$
    – Iago Carvalho
    4 hours ago










  • $begingroup$
    Your language, on the other hand, looks like to be typed (even if not explicitly defined). However, I'm not an expert on this subject and I'm not 100% sure about it... Please, someone correct me if I'm wrong.
    $endgroup$
    – Iago Carvalho
    4 hours ago










  • $begingroup$
    @Iago Carvalho You said that a typeless language means that "the variables have no type", and then you said "Your language, on the other hand, looks like to be typed". How is my language looks like to be typed if my variables don't have data types?
    $endgroup$
    – user4582812
    3 hours ago














3












3








3





$begingroup$


Assume that we have an imaginary programming language that allows you to assign a Literal to a variable, but does not allow you to set the the data type of the variable, for example



Allocate4Bytes   an_int_variable        123456;
Allocate2Bytes a_short_int_variable 123;
Allocate4Bytes a_float_variable 2.1;


And this programming language also provides different operators to work with different data types, for example:




  • The + operator is used to add an int to a short int.

  • The #+ operator is used to add a float to an int.

  • the = operator is used to assign an int to an int.

  • the #= operator is used to assign a short int to a short int.

  • etc.


So it is the job of the programmer to keep track of the data type of each variable and use the appropriate operator on it.



Is this programming language considered to be a typeless programming language, or can we say that this programming language have data types (even though it does not have operator overloading and type safety, etc.)?










share|cite|improve this question







New contributor




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







$endgroup$




Assume that we have an imaginary programming language that allows you to assign a Literal to a variable, but does not allow you to set the the data type of the variable, for example



Allocate4Bytes   an_int_variable        123456;
Allocate2Bytes a_short_int_variable 123;
Allocate4Bytes a_float_variable 2.1;


And this programming language also provides different operators to work with different data types, for example:




  • The + operator is used to add an int to a short int.

  • The #+ operator is used to add a float to an int.

  • the = operator is used to assign an int to an int.

  • the #= operator is used to assign a short int to a short int.

  • etc.


So it is the job of the programmer to keep track of the data type of each variable and use the appropriate operator on it.



Is this programming language considered to be a typeless programming language, or can we say that this programming language have data types (even though it does not have operator overloading and type safety, etc.)?







programming-languages






share|cite|improve this question







New contributor




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











share|cite|improve this question







New contributor




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









share|cite|improve this question




share|cite|improve this question






New contributor




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









asked 4 hours ago









user4582812user4582812

161




161




New contributor




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





New contributor





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






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












  • $begingroup$
    It's simple: the variables have no type. An example of a typed language is C/C++ (you have a char, an int, a float,...), while not typed languages don't have it (e.g., Mathematica).
    $endgroup$
    – Iago Carvalho
    4 hours ago










  • $begingroup$
    Your language, on the other hand, looks like to be typed (even if not explicitly defined). However, I'm not an expert on this subject and I'm not 100% sure about it... Please, someone correct me if I'm wrong.
    $endgroup$
    – Iago Carvalho
    4 hours ago










  • $begingroup$
    @Iago Carvalho You said that a typeless language means that "the variables have no type", and then you said "Your language, on the other hand, looks like to be typed". How is my language looks like to be typed if my variables don't have data types?
    $endgroup$
    – user4582812
    3 hours ago


















  • $begingroup$
    It's simple: the variables have no type. An example of a typed language is C/C++ (you have a char, an int, a float,...), while not typed languages don't have it (e.g., Mathematica).
    $endgroup$
    – Iago Carvalho
    4 hours ago










  • $begingroup$
    Your language, on the other hand, looks like to be typed (even if not explicitly defined). However, I'm not an expert on this subject and I'm not 100% sure about it... Please, someone correct me if I'm wrong.
    $endgroup$
    – Iago Carvalho
    4 hours ago










  • $begingroup$
    @Iago Carvalho You said that a typeless language means that "the variables have no type", and then you said "Your language, on the other hand, looks like to be typed". How is my language looks like to be typed if my variables don't have data types?
    $endgroup$
    – user4582812
    3 hours ago
















$begingroup$
It's simple: the variables have no type. An example of a typed language is C/C++ (you have a char, an int, a float,...), while not typed languages don't have it (e.g., Mathematica).
$endgroup$
– Iago Carvalho
4 hours ago




$begingroup$
It's simple: the variables have no type. An example of a typed language is C/C++ (you have a char, an int, a float,...), while not typed languages don't have it (e.g., Mathematica).
$endgroup$
– Iago Carvalho
4 hours ago












$begingroup$
Your language, on the other hand, looks like to be typed (even if not explicitly defined). However, I'm not an expert on this subject and I'm not 100% sure about it... Please, someone correct me if I'm wrong.
$endgroup$
– Iago Carvalho
4 hours ago




$begingroup$
Your language, on the other hand, looks like to be typed (even if not explicitly defined). However, I'm not an expert on this subject and I'm not 100% sure about it... Please, someone correct me if I'm wrong.
$endgroup$
– Iago Carvalho
4 hours ago












$begingroup$
@Iago Carvalho You said that a typeless language means that "the variables have no type", and then you said "Your language, on the other hand, looks like to be typed". How is my language looks like to be typed if my variables don't have data types?
$endgroup$
– user4582812
3 hours ago




$begingroup$
@Iago Carvalho You said that a typeless language means that "the variables have no type", and then you said "Your language, on the other hand, looks like to be typed". How is my language looks like to be typed if my variables don't have data types?
$endgroup$
– user4582812
3 hours ago










1 Answer
1






active

oldest

votes


















4












$begingroup$

It depends on what happens if the programmer tries to do something like add two things with the wrong operator. If it causes a compile-time error, the language is probably statically typed. If it throws a compile-time error complaining that the two have the wrong type, the language is probably dynamically typed. If it doesn't throw an error and just tries to add those two things (possibly resulting in gibberish), it might be untyped.



To put it another way, it depends how those operations are implemented. If they are implemented to keep track of the type of the variables and check that those types match what is expected, it is typed. If it doesn't keep track of types, then it is untyped or weakly typed.



See https://en.wikipedia.org/wiki/Type_system and https://www.sitepoint.com/typing-versus-dynamic-typing/.






share|cite|improve this answer









$endgroup$














    Your Answer








    StackExchange.ready(function() {
    var channelOptions = {
    tags: "".split(" "),
    id: "419"
    };
    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',
    autoActivateHeartbeat: false,
    convertImagesToLinks: false,
    noModals: true,
    showLowRepImageUploadWarning: true,
    reputationToPostImages: null,
    bindNavPrevention: true,
    postfix: "",
    imageUploader: {
    brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
    contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
    allowUrls: true
    },
    onDemand: true,
    discardSelector: ".discard-answer"
    ,immediatelyShowMarkdownHelp:true
    });


    }
    });






    user4582812 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%2fcs.stackexchange.com%2fquestions%2f108587%2fwhat-are-the-characteristics-of-a-typeless-programming-language%23new-answer', 'question_page');
    }
    );

    Post as a guest















    Required, but never shown

























    1 Answer
    1






    active

    oldest

    votes








    1 Answer
    1






    active

    oldest

    votes









    active

    oldest

    votes






    active

    oldest

    votes









    4












    $begingroup$

    It depends on what happens if the programmer tries to do something like add two things with the wrong operator. If it causes a compile-time error, the language is probably statically typed. If it throws a compile-time error complaining that the two have the wrong type, the language is probably dynamically typed. If it doesn't throw an error and just tries to add those two things (possibly resulting in gibberish), it might be untyped.



    To put it another way, it depends how those operations are implemented. If they are implemented to keep track of the type of the variables and check that those types match what is expected, it is typed. If it doesn't keep track of types, then it is untyped or weakly typed.



    See https://en.wikipedia.org/wiki/Type_system and https://www.sitepoint.com/typing-versus-dynamic-typing/.






    share|cite|improve this answer









    $endgroup$


















      4












      $begingroup$

      It depends on what happens if the programmer tries to do something like add two things with the wrong operator. If it causes a compile-time error, the language is probably statically typed. If it throws a compile-time error complaining that the two have the wrong type, the language is probably dynamically typed. If it doesn't throw an error and just tries to add those two things (possibly resulting in gibberish), it might be untyped.



      To put it another way, it depends how those operations are implemented. If they are implemented to keep track of the type of the variables and check that those types match what is expected, it is typed. If it doesn't keep track of types, then it is untyped or weakly typed.



      See https://en.wikipedia.org/wiki/Type_system and https://www.sitepoint.com/typing-versus-dynamic-typing/.






      share|cite|improve this answer









      $endgroup$
















        4












        4








        4





        $begingroup$

        It depends on what happens if the programmer tries to do something like add two things with the wrong operator. If it causes a compile-time error, the language is probably statically typed. If it throws a compile-time error complaining that the two have the wrong type, the language is probably dynamically typed. If it doesn't throw an error and just tries to add those two things (possibly resulting in gibberish), it might be untyped.



        To put it another way, it depends how those operations are implemented. If they are implemented to keep track of the type of the variables and check that those types match what is expected, it is typed. If it doesn't keep track of types, then it is untyped or weakly typed.



        See https://en.wikipedia.org/wiki/Type_system and https://www.sitepoint.com/typing-versus-dynamic-typing/.






        share|cite|improve this answer









        $endgroup$



        It depends on what happens if the programmer tries to do something like add two things with the wrong operator. If it causes a compile-time error, the language is probably statically typed. If it throws a compile-time error complaining that the two have the wrong type, the language is probably dynamically typed. If it doesn't throw an error and just tries to add those two things (possibly resulting in gibberish), it might be untyped.



        To put it another way, it depends how those operations are implemented. If they are implemented to keep track of the type of the variables and check that those types match what is expected, it is typed. If it doesn't keep track of types, then it is untyped or weakly typed.



        See https://en.wikipedia.org/wiki/Type_system and https://www.sitepoint.com/typing-versus-dynamic-typing/.







        share|cite|improve this answer












        share|cite|improve this answer



        share|cite|improve this answer










        answered 3 hours ago









        D.W.D.W.

        104k14131299




        104k14131299






















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










            draft saved

            draft discarded


















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













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












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
















            Thanks for contributing an answer to Computer Science Stack Exchange!


            • Please be sure to answer the question. Provide details and share your research!

            But avoid



            • Asking for help, clarification, or responding to other answers.

            • Making statements based on opinion; back them up with references or personal experience.


            Use MathJax to format equations. MathJax reference.


            To learn more, see our tips on writing great answers.




            draft saved


            draft discarded














            StackExchange.ready(
            function () {
            StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fcs.stackexchange.com%2fquestions%2f108587%2fwhat-are-the-characteristics-of-a-typeless-programming-language%23new-answer', 'question_page');
            }
            );

            Post as a guest















            Required, but never shown





















































            Required, but never shown














            Required, but never shown












            Required, but never shown







            Required, but never shown

































            Required, but never shown














            Required, but never shown












            Required, but never shown







            Required, but never shown







            Popular posts from this blog

            Fluorita

            Hulsita

            Península de Txukotka