19 ms·
Latino Programming Language
- bogota 6y agoI’m not sure the merits of using this in production but as a tool for introducing someone to programming this is awesome.
- ashneo76 6y agoAgreed. Non-english for introduction is good. But for production it is going to impede collaboration and your understanding. As a non native speaker, I have seen my friends struggle with english in grad school when they were taught math and science in their native tongue. This is a different programming language not just python with spanish variables. Translating to english and then having to translate the code later on, is going to be a huge barrier.
- juliand 6y agoHere are some code examples for anyone curious to see how it looks https://github.com/lenguaje-latino/latino/tree/master/ejemplos https://github.com/lenguaje-latino/latino/tree/master/ejempl...
- ufo 6y agoMy first impression is that it looks like a mix of Lua and Python.
- yosito 6y ago> Latino es un lenguaje de programación con sintaxis en Español creado en C, inspirado en Lua y Python Well, yeah....
- tgv 6y agoI don't see much Python, mainly Lua with Spanish keywords and function names, basically. while => mientras, if => si, end => fin, break => romper, print => poner, etc. I learned programming with such a "localized" version of simplified FORTRAN, but I didn't find it intuitive or conducive to learning how to program. Later, I read a study (can't cite it; lost the details) that found interference from programming language keywords in English speakers, but not in others, and they suggested it might actually be easier to learn programming with English keywords.
- ufo 6y agoIt says it has local-by-default scoping, which would be a Python influence. But now I'm not sure. When I tested the program the variables set inside the function seem to still be present after the function returns?
- whb07 6y agoThis initially thought this would be a nice tutorial/community for Spanish speakers but it appears to be that they are attempting to write a new programming language. I’ll have to say I prefer the idea of educational site that explains and talks about the idea of programming and what not.
- finiteseries 6y agoThe person who builds that educational site now has an entire language their students can read and write in.
- yosito 6y agoI prefer the idea of a non-English programming language being used in production at scale. Not for technical reasons, but it just seems a little unfair that anyone who is not a native English speaker is at an automatic disadvantage in tech.
- deleted 6y ago[deleted]
- _0ffh 6y agoMemorizing a few foreign language keywords is certainly the smallest challenge here. You will have to do so anyway, no matter if in a foreign or your native language. It is incredible to me that anyone could seriously suggest this would make any kind of difference. I started coding when I was a kid of 12 and certainly not (yet) good at English. If anything, my computer hobby helped me pick up more English just by the way, than I would have without it at that age.
- the_af 6y agoHeh, I just wrote a reply saying essentially the same as you! English keywords in languages aren't an impediment.
- the_af 6y agoIn general, Spanish-speaking programmers aren't at a disadvantage because of English keywords in programming languages. When I started coding I barely knew English, and I still understood Commodore BASIC's keywords -- even if I pronounced all of them wrong. The impediment to learning programming is the conceptual load of what the keyword means, not the language. You're already learning a new language with new "words" (e.g. BASIC), what does it matter if it's LOAD or CARGAR, RUN or EJECUTAR, PRINT or IMPRIMIR? The real impediment for Spanish-speakers learning programming is that the vast majority of articles on cutting-edge tech are written in English. This is changing, but back when I started about 99% of articles/manuals were written in English. It only helped me learn English faster, though. (Videogames -- text adventures and the like -- were the other motivation).
- bigyikes 6y agoI thought it was slightly funny that I can read the Latino programming language better than I can read Spanish, despite never seeing the former.
- jan_Inkepa 6y agoCool to see programming languages using non-english as a base. However, > No son validas las letras acentuadas u otros caracteres como la ñ. ["Accented letters or other characters such as ñ are not valid." sez deepl] https://manual.lenguajelatino.org/es/stable/sintaxis/Variables.html https://manual.lenguajelatino.org/es/stable/sintaxis/Variabl... Looks like it doesn't support accented characters in variable names. I wonder what their reason for excluding those is?
- BitwiseFool 6y agoI know that languages like Swift can support Emoji, so why not support accented latin characters?
- jan_Inkepa 6y agoFull Emoji support is ... horrendous ... I look into it about once a year; I think there are proposals for unicode but as of now it's still super hard to detect if something's a single emoji symbol or not (the most current regex I saw for emoji-matching was, IIRC, several KB in size...). Some day in our cyberpunk future we'll get there...probably some decades after full self-driving vehicles have become standard...
- matheusmoreira 6y agoLack of Unicode support in the parser? Can't think of any other reason.
- mumblemumble 6y agoI'm guessing it's because the language was implemented in C, whose stdlib doesn't really do Unicode strings, and the authors didn't think to use a different string type for identifiers until it was too late.
- account42 6y agoYou don't need "Unicode strings" for this - and C strings can hold UTF-8 just fine. What you need is Unicode-normalization so that different ways to compose the same character refer to the same variable, but that can be done in C with a library just fine.
- roflc0ptic 6y agoThe `unison` programming language represents all symbols as labels on hashes, so it makes it relatively trivial to remap from one language to another. I commented on another thread about being hype about this, and people pushed back, commenting that it's really beneficial to have English as the lingua franca of software development. It strikes me that lowering the barrier to entry by not forcing someone to learn programming and English is positive. But fragmenting standard communication language harms software as a whole. Plus, learn English and you get access to millions upon millions of man hours in libraries and documentation. Maybe it's not really an either/or here; better for people to have choices. All of that said, "Latino" seems like a particularly terrible name for a programming language: it should probably be hispanohablantes for correctness.
- SiempreViernes 6y ago> All of that said, "Latino" seems like a particularly terrible name for a programming language Now I'm not sure who you think python is for...
- jgwil2 6y agoI think Python is a good name because although it's arbitrary, there's very little domain overlap that could cause confusion: context can pretty much always tell you whether people are referring to the language or the animal. Latino, on the other hand, seems to have a little more overlap: it's very close to Latin, an actual language, and also refers to the latinoamericano cultural identity, which is largely defined in relation to language. Thus the possibilities for confusion seem a bit greater (I think OP's suggestion of "hispanohablantes" would also cause a lot of confusion).
- roflc0ptic 6y agoYes, hispanohablantes was a little tongue in cheek. Perhaps latinx for maximal confusion
- Jtsummers 6y ago
- nerdponx 6y agoI love the idea, but this an especially un-Google-able name for a programming language.
- second--shift 6y agola unica pregunta que tengo es .... porque? Nosotros que somos hispanohablantes no hemos necesitado esto - los lenguajes que ya existen sirven muy bien. Como un ejercisio tecnico, les aplaudo. Pero no es un `Lisp`, y asi, no es para mi
- commandlinefan 6y agoIt looks more or less like Javascript with Spanish keywords instead of English. I guess it's an argument for a purely symbolic (and therefore equally accessible) programming language.
- ducharmdev 6y agoThat's an interesting point - on the topic of readability, its often argued that the more abstract symbols and operators used, the harder it is to read (I think this is why operator overloading is sometimes frowned upon). But if you are not fluent in English, it wouldn't be much more accessible than a purely symbolic language. The tricky thing about this, is we search based on language all the time. It's harder to search for an operator if you don't already know what that operator is called. Maybe you could build this into the tooling of the symbolic language? E.g. provide a semantic name for a given std lib function in your chosen language, and get intellisense in your language.
- mywittyname 6y agoSymbols have different meanings in language too. For example, would you use "string" or «string» to quote a string?
- ccortes 6y agoPorque se puede.
- rkzswkr 6y agoPienso que también tiene mucho valor como herramienta de educación más que para usarse en la industria.
- agubelu 6y agoI don't dislike the idea but, as a Spanish speaker, my first impression reading the main page could be notably better: - Typos: "cabezera", "al rededor", lots of tildes missing in general - Google "translade" [sic] allowed - Why even ask for translators in the first place then? - Filler text still present ("esto de prueba")
- flobosg 6y agoIt seems that the author is not a native Spanish speaker, or at least not an idiomatic one.
- f14c0 6y agosounds good for introduction to coding for kids in non-English speaking countries.
- the_af 6y agoSpanish speaker here. My experience is that English keywords in programming languages aren't an impediment. Most other programmers in my country (and others, judging by what I read) share my experience. Localized keywords don't translate well to a later experience with programming languages at large.
- anthk 6y agoKids in the 80's learnt Basic in English just fine. Even basic terminology such as input, output, load, save and so on. Also we began to learn English by age 8-10 or so, so is not an issue. As they stated, the biggest issue is that the documentation itself is, by a huge margin, in technical English.
- the_af 6y agoI still remember Visual Basic with Spanish keywords. It was... a mess, and it really didn't do anything for Spanish speakers except fragment the VB user base.
- anthk 6y agoAlso with VBA for MSOffice where even damn Excel functions were localized. Useless crap.
- ghosty141 6y agoThat's a great way to make programming more accessible.
- 4lejandrito 6y agoCool! It looks very similar to a language we designed and implemented for a uni assignment years ago, using flex and bison: principal inicio entero x, y; leer (x); leer (y); si (x > 0) entonces si (y > 0) entonces imprimir (1); is si (y == 0) entonces imprimir (0); is si (y < 0) entonces imprimir (2); is is si (x == 0) entonces imprimir (0); is si (x < 0) entonces si (y > 0) entonces imprimir (4); is si (y == 0) entonces imprimir (0); is si (y < 0) entonces imprimir (3); is is fin
- gtk40 6y agoWhy is it called "Latino" when it is just in Spanish and not Portuguese (or maybe French? not sure if Haitians are Latino). It seems like "Hispanic" would be the better term since this is language focused rather than geography focused.
- jordigh 6y ago"Latino" is kind of a cultural designation of the US to refer to Spanish speakers, although it is used somewhat outside of the US, but not as prominently. I am guessing this language was just being made in the US where Latino is an accepted descriptor for Spanish speakers only.
- gtk40 6y agoIt very commonly refers to Portuguese-speaking Brazilians in my area.
- oscargrouch 6y agoThe big problem of this use for me is that people from the US tend to think in terms of "race". Like if there is a homogeneous "latino race" where it boils down to the average mexican immigrant that the US is more used to. For instance, you can see this in north-american films, where the mexicans are hired to play Brazilians, where we (brazilians) can spot right-away they dont look like any type of average looking brazilian. But im pretty sure it make sense for the crew of the film and people watching it, even when they speak spanish. Just to give you a glimpse of famous brazilians north-americans may know: Rodrigo Santoro, Morena Bacarin, Alice Braga, Gisele Bundchen, Alessandra Ambrosio, Jordana Brewster, Camilla Belle, Kaya Scodelario, Wagner Moura. The thing is, i've just give you this sample, so you can see how they don't have any resemblance between each other or homogeneous look. The ones that speak perfect english can perfectly act in roles not meant for "latinos" and nobody notice it. I think nowadays is right to use this term in the same sense as you use for Europe to define France or Italy as part of Europe. Albeit is even wrong to use in the sense of a continent giving America is just one continent, with north and south. Anyway if you dig down and look to all the inconsistencies of the term it boils down to some sort of racial profiling thing, because it makes no sense in any other way you look at it except for labeling it as "not white".
- yakubin 6y agoI started learning programming before I could speak English well. A programming language using English words isn't a barrier in any way. Those words aren't real English words, they are symbols. Instead of "and" you could very well have "/\" and it wouldn't make the slightest difference. As a non-English programmer you don't think of those as words, just symbols. And that's accidentally closer to the truth and probably even moulds your mind into a shape better suited for such an abstract task. Using "if" and "else" neither requires, nor is made easier by knowledge of what those words mean. (At the time when I learnt it, I knew what "if" meant, but not what "else" did. It didn't bother me in the slightest.)
- User23 6y agoI recall reading Dijkstra saying that he preferred that the programming languages he used weren't in his native Dutch for pretty much the reason you give. Presumably the use of Greek letters in traditional mathematics doesn't present an insurmountable barrier to non-Greek speakers.
- e-clinton 6y agoWhile I agree that you learn to treat them as symbols, it certainly elevates the barrier of entry. I know what “while” means in English, so when I’m reading code, there is less of a mental load to interpret that code. As a beginner, if I had to translate “while” or “throw” or “parse”, I’d make learning more difficult.
- mort96 6y agoIt's not that you would translate them though. You don't have to know what "while" means in english to use it. You just learn that the arbitrary symbol "while" is how you repeat something as long as a condition holds. There's not really anything language-specific about that, except that "while" happens to be a word in English with a meaning which somewhat correlates with what the symbol does in the programming language.
- jgwil2 6y agoCounterexample: as a beginner, I think knowing English made "for" harder to understand: for loops in C don't seem to bear much relation to the meaning of "for" in common usage: yes, there is a condition that initiates the loop, but what about the other two statements? For me it was actually something I had to de-program from my brain before I could understand how they actually worked.
- tapia 6y agoI remember from my times at the university that the TI Voyage 200 (and probably TI89, too) had the option to program in different languages. I tried the Spanish version, but apart from being an interesting exercise, I didn't see much use in programming in Spanish. Furthermore, if I remember correctly, if you wrote a program in Spanish, then it would not run after you set the language back to English... so not so good if you wanted to interchange code.
- bobthechef 6y agoNot sure what the fuss is about. Plenty of languages[0] have existed that used native keywords over English. Unless your natural language's grammar introduces some novel syntactic or semantic features to the programming language, this is superficial. It's just a kind of localization. You could adapt the parser for any language to do this. Heck, in a Lisp, you can just define a bunch of aliases and wrappers and load that into your current namespace if you want. [0] https://en.wikipedia.org/wiki/Non-English-based_programming_languages https://en.wikipedia.org/wiki/Non-English-based_programming_...
- ectoplasmaboiii 6y agoAwesome! I have always wondered if language like spanish and arabic have (widespread) programming languages. As an aside: I guess the fact that k only uses symbols makes it a very inclusive language :)
- jordemort 6y agoBack before I progressed beyond DOS batchfiles, I kind of just assumed that all the commands and keywords would be localized to whatever the local language was - I didn't think, for example, that Japanese-speaking users were out there typing "echo" and "dir" and "printf". I found it surprising and seemingly unjust when I learned that folks that spoke other languages generally had to learn a fair bit of English along whatever programming language they were learning. I can't imagine how much harder it must be to pick something up when the mnemonics are foreign gibberish to you. Of course now I realize that there's an element of practicality to it as well; J. Random Hacker can hardly be expected to translate the API they created into N different languages that they don't speak themselves. It also cuts both ways; GitHub Trending is increasingly full of projects that look like they're probably awesome and extremely useful and I have no idea what they even are because the documentation is entirely in Chinese. I know some early versions of BASIC would save your source in a "tokenized" format, i.e. instead of literally storing "PRINT $FOO" they would store some bytecode that represented PRINT instead. One could possibly implement a polyglot programming language using a similar mechanism, and translate localized versions of keywords into (human) language-independent bytecodes. You'd have to pick one human language to be the canonical representation though, or have some sort of language declaration at the beginning of the file, or commit to having the canonical representation of your source code not be plain text - all of which seem suboptimal for different reasons. It also seems like it would be tough to extend that approach to code outside the standard library of the theoretical polyglot language.
- mywittyname 6y agoI really don't think this is as bad as people make it out to be. As you said, it's totally possible -- actually fairly straightforward -- to build a programming language with keywords that can be in various languages. Perl has a package that uses Latin constructs instead of English. So if there were a huge demand for this kind of thing, we'd probably see a lot of it. There are other professions which require the use of foreign terminology: lawyers use Latin, doctors use Greek & Latin, chefs use French. Sure, it makes things a little difficult at first, but it's probably not any more difficult than learning technical jargon in you native tongue. In fact, in some ways, it might be easier because the literal translation of "echo" might not actually make much sense to a Japanese speaker in the context of programming, whereas, with English you can teach a Japanese student that "echo" means to put characters on the screen. I remember reading about an effort Britain had to make the law more "accessible" by using English instead of Latin, and it just made things more difficult because instead of seeing words you had no idea the meaning of, now one knew what the statement said, but it would mean something completely different than they would expect.
- zarkov99 6y agoGreat. Now programming languages are also political tools. We should do the same in science. Every scientist should learn every language of every other scientist so everybody can write their papers in the language of the culture they identify with. That will surely advance science and benefit all of us immensely.
- michaelmior 6y agoI'm confused what this has to do with politics.
- Mordisquitos 6y agoApparently there are two languages: English and political.
- TheAdamAndChe 6y agoLatino isn't a language, it's an identity. That makes it political.
- 8note 6y agoReally it's a geographic location of origin. There's nothing particularly political about being from South america
- cpp_frog 6y agoAs someone who is latin american, I never understood what is the obsession with identity in the US. American hispanics I've talked to use it as something of a catch-all concept, but I've observed that many only have a meagre proficiency in Spanish and know nothing about the other Latin American countries that they pack with the bunch (apart from their own/their parents).
- TheAdamAndChe 6y agoThis is a touchy subject in the US so I don't want to get too into it, its a bit off topic. The shortest and most neutral answer I can give is that minority political groups in the US use identity as a tool to push for political change.
- flobosg 6y agoOther Spanish-based programming languages: * PSeInt (http://pseint.sourceforge.net/ http://pseint.sourceforge.net/) * Pauscal (http://www.pauscal.com.ar/ http://www.pauscal.com.ar/ * IIRC, Logo has some Spanish interpreters
- ggambetta 6y agoAs someone whose mother tongue is Spanish, and was born and raised in Latin America, this feels pointless at best, and counterproductive at worst. It will only add an extra layer of mental translation whenever someone who learned to program in this thing gets a real job. I started learning BASIC when I was 3 or 4, way before I even understood English was a thing. If I could grasp what GOTO did, anyone can.
- flobosg 6y agoI remember having looked at BASIC code without any English or programming knowledge and having my attention caught by the GOTO statements since it was the most Spanish-looking word around.
- ccortes 6y ago> If I could grasp what GOTO did, anyone can. Then I see no issue translating from this to an "english" programming language, so there would be no extra layer of mental translation.
- jordigh 6y agoI disagree (and if you want my credentials, I am Mexican). Being able to reason in your own language is a big help. I do this with mathematics in various ways. I can both easily say "sea equis una variable real tal que equis más ye son menor al límite de efe de equis más ye conforme ye tiende al infinito" or whatever in both English and Spanish, and sometimes I prefer saying it in Spanish and sometimes in English. I still count by default in Spanish, although of course I can count in English (or French or Russian). It feels to me like reasoning and language are close in the brain. While you and I have gotten used to thinking of for-loops instead of para-loops, I think there's good reason to think that a learner could benefit from reasoning in their own language. As far as languages being useless, there's lots of other useless language a person could be learning. That doesn't discredit the raison d'être of these languages.
- Y_Y 6y agoAt least in the mind of an experienced code "for loops" have their own semantic existence, once you've understood them and given them a label then you don't need (in fact shouldn't) rely on intuition from your knowledge of English, or whatever natural language. Only one person I work with uses their computer in Spanish, whereas that's what everyone speaks all day, informally at least. I think of these words (programming keywords, names of Unix commands, etc.) as just symbols, doesn't everyone else? (Of course this doesn't apply to learners, I don't know about that.)
- HMH 6y agoThis is certainly fun to look at. Thinking about this, are there any programming languages that do i18n for their keywords?
- vehemenz 6y agoHow about a macro system that replaces keywords in any natural language for any programming language? This would be only an i8n layer that doesn't mess with any core functionality of the programming language. As long as you don't support COBOL, it should be pretty straightforward. Edit: Maybe not so straightforward!
- klyrs 6y agoA consequence of this is that you can't use keywords from any language for your symbol names. Or, I guess, you could do like Perl and defined symbols need a $ prefix or somesuch
- Jtsummers 6y agoThis would be easier with languages where keywords are in clear and consistent syntactic positions and identifiers can match keywords (that is, the keywords are only "kind of" special, more by position than value). Otherwise, you'll run into issues when someone is using Language X but has identifiers that happen to coincide with Language Y's keywords. You wouldn't want to error out here, and you don't want Language X writers to be forced to be aware of the many hundreds of extra keywords that are now required knowledge to avoid collisions and permit universal translation. For instance, in a programming language which uses `and` as a keyword in English for the logical operation, this would be translated into Spanish as `y`. Well, in graphical applications `y` is a perfectly natural variable name for the English speaker (and probably the Spanish speaker, but their dialect of the language wouldn't permit it). Now the English program can't be translated properly into Spanish unless the syntax is such that variables and keywords are always unambiguous so that this can be legal in the Spanish version: y < 0 y x > 10 y < 0 and x > 10 Of course, switching to a language which prefers symbols over keywords would help to minimize this issue (as in C where `and` is not a keyword, in contrast with Ada where `and` is a keyword).
- winniejinping 6y agohttps://github.com/wenyan-lang/wenyan https://github.com/wenyan-lang/wenyan the ancient Chinese programming language is way cooler than this
- ingkarlgauss 6y agoEs una locura esto, el siguiente paso es hacer una version para el dialecto de cada país: en Colombia el "While" se deberia llamar "peroporquehomeeee" o "sisas" !
- second--shift 6y ago"para cada ... tal cual" que pesada ;)
- anthk 6y agoY en el lado ibérico, si ponemos el murciano o extremeño igual invocamos a Cthulu con cada excepción.
- kgin 6y agovar queMasPues = bien || que
- tombert 6y agoI always wondered why there weren't more non-English programming languages...it seems like it gives an incredibly unfair advantage in compsci for Americans and British and Irish compared to most other countries in the world. Programming is hard enough to learn even when you speak the main language, let alone having to learn English in the process as well.
- ModernMech 6y agoThere are more than a few, but none of them are nearly mainstream: https://en.wikipedia.org/wiki/Non-English-based_programming_languages https://en.wikipedia.org/wiki/Non-English-based_programming_... A lot of these start as passion projects by native speakers and don't gain much traction. Actually, here's one that was posted just over the weekend, so maybe didn't get a lot of attention: https://news.ycombinator.com/item?id=26771369 https://news.ycombinator.com/item?id=26771369
- tombert 6y agoYeah, I figured that they have to exist (didn't see the Cree one, I will look at it) just due to "law of large numbers" reasoning. It always just seemed a bit weird to me, there are more native Spanish speakers then English speakers...why has English become the lingua-franca for a base of programming languages? Is it as simple as "Apple, IBM, and Microsoft started in the US"?
- qwertywert_ 6y agoWell most were created in C like, Lua made by a brazillian, Ruby made by Japanese guy. So yea they already had to base of existing US tech.
- ModernMech 6y agoI think it comes down to the fact that the predominate view of programming languages is that they are math and tools for conducting science/business. English was the lingua-fraca for science/business long before programming languages were around so it might have followed naturally that programming languages should be localized in English as well. But it's hard to say, there are a lot of cultural elements at play. We see one right here in this very language that is trying to escape the English domain -- it doesn't have support for character accents native to the language it's trying to support. This limitation probably derives from the days when bytes were highly expensive, so character encodings had to be frugal with their use of memory. With one byte you can encode enough characters for the English alphabet, numbers, symbols, and control characters, but you're not going to have enough for all the combinations of accents. Just look at what went into the extended ASCII table: they made room for some common accented characters from western nations, but also allocated precious space for copyrights, trademarks, fractions, legal symbols, more mathematical operators, and currency symbols of the largest nations. More than a purely technical decision, this is a statement of priorities. Again you see programming-as-math/science playing a role here; character encodings for mathematical symbols were given priority, but characters that could be used for communicating in other languages were disregarded. This is likely because the kinds of applications people were looking to use programming languages for were based in math/science, so those symbols were viewed as indispensable. I'm not saying this was wrong, btw, I'm just saying that's the way these things evolved. This very early (circa 1960) decision still has rippling consequences even today, so it's clear momentum of early choices in computing plays a large role here.
- nmeofthestate 6y agoIf anyone else is confused, the language has Spanish keywords. My browser automatically translated the code snippet into English for me, leaving me wondering why the language "has received the love and support of Hispanic users around the world".
- ElectricMind 6y agoI have feeling someone German/Russian is already working on this one. Davay geht los :)
- shafin_ 6y agoVery cool. I am also working on a non english programming language. Github repo: https://github.com/Shafin098/pakhi-bhasha https://github.com/Shafin098/pakhi-bhasha
- 4lb0 6y agoAnother native speaker here. I disagree with most of you. When I was a kid I played a Captain Tsubasa NES game that was completely in japanese. I have no idea of the meaning of the Kanji characters I choose but I know pretty well what I was doing in short time. I could play the game through trial and error. So no, you don't need to know actual english to code. Now, you and me were invested. We want to code and we were willing to learn how to code even without knowing what was the meaning of the english words we use. Just like the way I played that game. A lot of people is learning how to code like they learn basic math. They are not invested. They know is useful however didn't want to learn it. This tool is good for them. I still don't like the name and also don't like they don't allow tildes and ñ. I also think scratch.mit.edu is a better tool for people starting to learn how to code.
- crvdgc 6y agoTo all native English speakers, before talking about standards and lingua franca, try to implement some basic algorithms in Latino and take a minute to imagine a world where it is the standard (programming & documentation). Then you'll understand the meaning of "entry barrier" and "language advantage", if you remember that's the reality for billions of people in the world including me.
- rigoleto 6y agoThank you. Too many commenters here, years removed from being a beginner, aren't getting it.
- hervature 6y agoAs someone who doesn't care about the language, my question is if the goal is to reduce the entry barrier, what is the benefit of this language versus investing the same amount of time in Spanish documentation and a Spanish transpiler for Python? Multi language documentation is definitely lacking, but making a new language adds to the complexity of the space, it doesn't reduce it.
- brudgers 6y agoMulti-lingual documentation is premised on the idea that languages derived from English are better or at least good enough. The premise of this language is that they are not. The Python community is not committed to multi-language documentation. And it has the ideology of "unpythonic" as an excuse for denigrating anyone who might be.
- hervature 6y agoI hardly call the use of a few keywords as "derived from English". There are 36 keywords in Python, one of them being __peg_parser__, what the hell does that mean for an English speaker? Maybe the Python community is not the best example, I did not know they actively subverted any attempts at multi-language. But still, forking the project and simply renaming and translating the documentation would serve much better at lowering the barrier of entry, if that's the goal. The cynic in me thinks that the creators of the language simply used that excuse as a way to justify scratching their itch to create a new language given that there are so many better ways to remove the English barrier to programming.
- drfuchs 6y agoThe French Ministry of National Education tried supporting a similar sort of effort 50 years ago: https://en.wikipedia.org/wiki/LSE_(programming_language) https://en.wikipedia.org/wiki/LSE_(programming_language)
- ch4s3 6y agoRegarding the WHY question... > El desarrollo y administración del lenguaje Latino para que escuelas, universidades, maestros, estudiantes y profesionales encuentre en Latino una herramienta para resolver los problemas del día a día. The development and administration of the Latino language so that schools, universities, teachers, students, and professionals find a tool to solve day to day problems. It seems to be targeting teaching and learning as well as some simple business use. Interesting idea, I wonder if it will catch on.
- keiferski 6y agoIf software is “eating the world”, it is inevitable that local dialects will arise. I wouldn’t be surprised if the world of 2100 is full of popular non-English programming languages.
- TulliusCicero 6y agoIf anything, it seems to be going the other way to me. In Europe, programming jobs only requiring English (and not the local language) seem steadily on the rise, because it means companies can pull talent from other parts of Europe, or even further abroad. If you're a German company that wants to also be able to hire coders from France and Italy and Romania, requiring German proficiency is going to drastically cut down the potential international labor pool you can draw on. And that's for one of the biggest European languages -- imagine what the calculus is if you're a company in Denmark or Slovenia. Plus, let's say you start with the local language, but then your company gets big. At some point, you may want to open up offices in other countries...but what do you do then? Have German source code from your German devs, and French source code from your French devs?
- keiferski 6y agoThe EU is a particularly unique situation where a unified language is useful and that language will probably be English. Latin America, for example, isn’t the same.
- sergiotapia 6y agoSpanish is my first language, if you use this you _severely_ hamstring yourself. Don't do it. English is the world most used programming language, just learn it. Or perish.
- yegle 6y agoEPL (Easy Programming Language, EYuYan, 易语言) is a Chinese programming language. https://en.wikipedia.org/wiki/Easy_Programming_Language https://en.wikipedia.org/wiki/Easy_Programming_Language is a terse page explaining it but I guess any actual document would be in Chinese. From my understanding this language is very popular in amount people writing game cheating tools and other malware. https://manalyzer.org/report/03b2253bcbb611502eba5b43df3e1dc7 https://manalyzer.org/report/03b2253bcbb611502eba5b43df3e1dc... is one such example. EDIT: Example EPL code https://gitee.com/yyman001/RightHand/raw/master/%E5%8F%B3%E9%94%AE%E6%B7%BB%E5%8A%A0%E5%8A%A9%E6%89%8B(%E6%9C%80%E6%96%B0%E5%BC%80%E5%8F%91%E7%89%88).e https://gitee.com/yyman001/RightHand/raw/master/%E5%8F%B3%E9... presumably this is in GKB encoding so it's mostly garbage characters. EDIT: https://www.hexacorn.com/blog/2019/02/13/pe-files-and-the-easy-programming-language-epl/ https://www.hexacorn.com/blog/2019/02/13/pe-files-and-the-ea... someone wrote reverse engineering an EPL executable.
- drinkcocacola 6y agoI also feel this effort is completely pointless. Java for instance has 52 reserved words. 52!!! the complexity of programming does not lie in the meaning of just 52 english words. That's actually the easiest part. As you get better you eventually will pick a production-ready language such as JavaScript or Kotlin, only to realise that you now have to learn the meaning of the words...
- bigmattystyles 6y agoI know they are aiming to be a real language but isn't this effectively an art project? In that sense, it is very effective at pointing out how English-centric programming is. As a non Spanish speaker, I instantly felt what those learning to program must feel when they don't know any English. Utter confusion. It does seem like it should be trivial for every programming language to have a localization file for keywords to be rendered in a local version on the user's machine. Though then you still have to deal with variables and comments.
- BiteCode_dev 6y agoMost things in programming are human conventions that you have to learn. There is rarely a way to guess or figure things out. Keywords, scoping, byte order... It's all arbitrary, understanding the English meaning of the world "yield" in English will do little to help you understand generators. No, the real problem is the reading material. If you need to debug/read doc/google stuff, anything worth something (except a few exceptions like samemax.com and so on) will be in English. I've seen French professionals being perfectly capable programmers, but because their English sucked, their struggled to solve some problems that were a Stackoverflow post away.
- m463 6y agoI vaguely remember Applescript used to be internationalized a long time ago. The keywords would display in different languages. That said, why can't other languages be internationalized, maybe in the editor? I think it would be fun to program in spanish. siesta(5);
- me_me_me 6y agoRemember COBOL, this is a path towards a v2 of that disaster.
- 29athrowaway 6y agoThere are 2 popular programming languages of Latin American origin, Lua and Elixir, both from Brazil.
- _benj 6y agoAs a native Spanish speaker, this doesn’t make sense to me. Even if the argument of lowering the entry bar to non-English speakers was valid (I don’t think it is) the individual would be severely limited when it comes to collaborating/GitHub/external libraries/learning new programming languages. A big advantage of learning a programming language is that once you understand what a “loop” or a “if” you can easily transfer that knowledge to another language. Learning this language as your first language will leave you with very little transferable knowledge without much “translation” needed (pun intended)
- jack_h 6y agoI've commented on this before, but I think the issue is programming languages mix presentation with representation, i.e. text is used for both. Aside from making tooling more difficult it also prevents a programming language from being multilingual. While I agree simple keywords in a programming language aren't that big of a deal to learn as they are essentially symbols; things get a lot more complicated in a real project if a contributor is not a native speaker. Identifiers and comments - which are used for source code documentation - are in a single language and can't be translated easily. If the presentation and representation were split such that the presentation (still text mind you) is just a rendering of the representation then it could go through a translation process in the same way web pages do. Of course there would be an added project overhead of maintaining translations so maybe it wouldn't be worth it. This might be somewhat of a moot point as English is quickly becoming the lingua franca. Things such as issue tracking also require some common language outside of the source code itself.
- mariuolo 6y agoWhat kind programming paradigm does it use? It wasn't clear from the website.
- cakebrewery 6y agoInstead of entire new programming languages, maybe existing languages can have alternate localizations (done at the IDE level). The same source code would display in a different language from a user with their IDE in Spanish vs the user with their IDE in English. Edit: Food for thought regarding reserved keywords...
- loloquwowndueo 6y agoTo begin with, the page is full of typos and grammar errors. Many parts of it read like they were translated by beginners in Spanish or machine translation (so kind of , what’s the point if they’re using Spanish carelessly?). Then, a bunch of the keywords in the programming language itself don’t make a lot of sense - “for” maps to “desde”, not “para” - so I have to remember an arbitrary term that doesn’t do what it means or mean what it does. At that point I might as well learn “for”, right? Remembering that “si” is “if” doesn’t seem like a huge burden. The fact that “si” in Spanish is used as both a conditional and affirmative (“yes”) can actually lead to more confusion and ambiguity. Overall it doesn’t feel like a very well-designed language nor does it feel natural as a Spanish speaker which defeats the point.
- smsm42 6y agoUSSR did it for Russian: https://en.wikipedia.org/wiki/Rapira https://en.wikipedia.org/wiki/Rapira Wasn't a bad language btw. Support for pretty large numbers (up to 2^1016) out of the box, for example. Flexible data types (e.g. sets, tuples, structures, etc.). Optional typing. Not too bad for early 80s.
- rootsudo 6y agoYikes. Same level as people using latinx.
- soldehierro 6y agoIf you're going to use Spanish keywords, atleast spell them correctly. Is it that hard to use "función" instead of "funcion".
- tediousdemise 6y agoCouldn't this be accomplished in a language like C++ using macros/typedefs/templates? Just make an alias for every single built-in keyword/type in the target language. Would be an interesting experiment, although you would still have to translate all the libraries that do the heavy lifting, which would be monumental effort... might want to automate it using something like Google Translate, and then review it for quality with a native speaker. Good luck searching for online documentation and StackOverflow answers in your new bespoke language. You'll probably need an interpreter that translates your search queries back into the base language syntax.
- happynacho 6y agoWTF is this? LOL
- tpoacher 6y agoI'm "that guy" who, if I see a stackoverflow question that has code (i.e. variable names and comments) written in non-English (making me work twice as hard to make it work), I passive-aggressively post an (otherwise correct) answer in Greek code (i.e. my own native language). I know it's a dick move, but I stand by it. :p
- ElectricMind 6y agoWhat is next? Programing Languages based on Race color?
- bwhiting2356 6y agowhy call it Latino and not Spanish? Latino includes Portuguese, and this is Spanish.