6 ms·
Show HN: Pakhi – Bangla Programming Language
- aramachandran7 6y agoHow common are programming languages designed with base languages other than english? This is the first one i’ve seen.
- ahamez 6y agoIIRC, AppleScript was once usable in languages other than English.
- ygra 6y agoWhether it's actually _designed_ with those languages in mind is a different question. VBA (in)famously was also translated for non-English versions of Office, but that only involved replacing the keywords by translated ones in the other language. German VBA read _very_ weirdly to me, back then.
- gabordemooij 6y agoWell there is Citrine: https://citrine-lang.org/ https://citrine-lang.org/ - it offers a specialized version for over 110 human languages.
- dmt0 6y agoApparently there are a lot: https://en.wikipedia.org/wiki/Non-English-based_programming_languages https://en.wikipedia.org/wiki/Non-English-based_programming_...
- bobochan 6y agoThis is a different take, but I have always been a huge fan of Damian Conway's Lingua::Romana::Perligata, a thought experiment in writing Perl in Latin. Just a taste from the documentation: "To simplify the mind-numbingly complex rules of declension and conjugation that govern inflexions in Latin, Perligata treats all user-defined scalar and array variables as neuter nouns of the second declension -- singular for scalars, plural for arrays."
- krylon 6y agoI vaguely remember reading about an esoteric programming language that was based on Klingon. IIRC, it was a functional language. (-: But I do not speak or read or write Klingon, so I never looked at it, and I do not remember the name, either. It did make me chuckle, though.
- Rincevant 6y agoYes I love it
- shafin_ 6y agoThanks
- snissn 6y agoAs an only English speaker - this is lovely to see!
- PaulRobinson 6y agoWhile I 100% applaud the effort - and I absolutely love the idea of languages in non-English languages - you should be aware that phonetically (and if you drop the 'h'), the name is a racist term in the UK at least.
- yowlingcat 6y agoThis is an ignorant statement. Pakhi means "bird" in Bengali. Check the translation. Edit: To all the downvoters, I truly hope that ignorance is bliss for you. Maybe learn another language before you project your ressentiment tinged identity-politics idiocy onto something you don't even understand. [1] https://translate.google.com/?sl=bn&tl=en&text=pakhi&op=translate https://translate.google.com/?sl=bn&tl=en&text=pakhi&op=tran...
- bellyfullofbac 6y agoYou're probably being downvoted for the 1st sentence. And for the Edit. Why is it ignorant? OP is just stating a fact. Is OP the PC police, or is he the canary trying to warn that the "cancel mob" might attack this project if they took offense at the name, I can't tell. You saying it means "bird" is also just a fact...
- darkhorse13 6y agoI wouldn't go so far as to say it is ignorant, but just imagine if some english speaking person named their programming language or product "Bird", and one of the top comments brought up the fact that it was similar to a racial slur in their language. I'm not saying it is wrong to point this out, but it must be slightly disheartening for the author of the language. And more importantly, Bangladesh was literally called East Pakistan, so I'm sure whoever made this is aware of the actual racial slur. Also please note, I'm actually Bangladeshi, so I'm not speaking for a group I don't represent here.
- alex_smart 6y agoIt is ignorant because the concern stems from ignorance of the fact that many languages that are used by billions of people in the world treat the aspirated and non-aspirated versions of consonants as completely different consonants.
- mottosso 6y agoHold up, how is this different from programming in e.g. Python or Javascript with Bangla characters? Why does it need to be a different syntax too? Can I use English characters with the Pakhi programming langauge?
- FlyingSnake 6y agoredacted
- mottosso 6y agoMy mistake, I got confused. Corrected. But my question still stands.
- FlyingSnake 6y agoNo worries, I redacted my comment. Forgot that this ain’t Reddit for a moment. I think the lexer and parser won’t work if you write `if` instead of `যদি`. Just as the opposite won’t work in Java.
- shafin_ 6y agoI don't think people will ever use this on serious work. It's not even close to python or javascript, so there is no reason to use this instead of those. You can name variables with english characters or any other utf8 characters (including emojis). Its not a serious project, i worked on it during pandemic when all of our educational institutes were closed.
- FlyingSnake 6y agoI wonder if it’s possible for the programming languages to take advantage of the unique features in some languages, e.g. Agglutination in Hungarian and Turkish. Has any study being done to that effect? I love the concept, this project has the potential to bring a whole new demography to the fold of programming.
- qyi 6y agoI see programming as manipulating a bunch of semantic objects. Syntax is just the (bad) user interface to this. This shouldn't rely on a natural spoken language at all. For example instead of `case` or `if`, there could (and should) just be symbols for such common things. Languages like Java have a lot of English keywords to represent flaky, redundant concepts with bad semantics. It's also a bit cumbersome that these languages often prevent you from naming variables with these already taken words. Seems actually like every 10 years people realize they didn't need all those English sentences in their languages if you look at a lineage like COBOL -> Visual Basic -> Java -> JavaScript or whatever 2010 fad.
- tsegratis 6y agoSince RPN is front page, let me note that Turkish can be viewed as an RPN language -- the verb comes at the end (although agglutination etc make it not quite so clear cut) The agglutination is very similar to properties on structs object.time.by.ability.duration Except that there is a fixed standard order, and every object (word) responds in the same way. -- Very similar to an inheritance hierarchy from a single object :) A difference would be that every subclass a.k.a word has a meaningful way to respond to the dimensions of duration, ability, startPoint, byWho, and a few others that are not easily expressible in English but very convenient
- mtalantikite 6y agoBangla also is a subject-object-verb language and I hadn’t thought of it like RPN before!
- tsegratis 6y agoAn interesting concept from Turkish is each word can directly give you all (or single) objects that do or can respond to that action yap -- make yapan -- the one who makes yapanlar -- all those who make yapılan -- then one being made yapılanlar -- all those being made This would be like functions having a standard way to return lists of all objects they're related to Or direct solving of some complex queries like 'Who can open this door?' In Turkish that would be open_this_door_an, where '_an' is the standard way to get a list of all objects capable of doing it
- mmohtasim 6y agoI love it. But it makes me sad that 5 of the 7 primitive types are from english. You can replace list with talika or something like that.
- gumby 6y agoI’ve used programming languages with keywords in other languages but they don’t feel simpler to me. I am comfortable using “Fortissimo” even though I don’t speak Italian, and I view programming keywords the same way. I would be interested in a programming language that reflected the grammar and structure of a non-English human language. Procedural languages are quite “englishy”, and while production (logic) languages aren’t, they don’t really feel like any human language I’ve used. I think there’s an interesting line of research in looking into programming metaphors and syntax drawn from non-PIE-family languages.
- lvass 6y agoI can barely understand anything in that page though I wish you success and offer this Edsger W. Dijkstra quote, in good faith, for reflection. "Projects promoting programming in 'natural language' are intrinsically doomed to fail."
- hvocode 6y agoNot sure how that’s relevant, given that it appears to be expressing the usual language constructs but not in English or via a Latin alphabet. A couple minutes with Google translate made that apparent.
- rayiner 6y agoCool project! A bit off topic, but I’m a bad Bangladeshi and never learned the alphabet. Any sources you recommend to learn? I’m not great with (human) languages to begin with, but the character set is a real hurdle.
- mtalantikite 6y agoI’m currently learning Bangla and there are a few basic apps for iOS that present the letter along with it’s name, pronunciation, and how it is to be written (as in how to piece together the strokes to write the letter). It’s definitely geared towards kids, but the one I’m using is called BorKnow. Also I’m using a book by Hanne Ruth Thompson called Beginner’s Bengali that does a good job at introducing the script.
- rayiner 6y agoThanks! May I ask what prompted you to learn Bangla?
- mtalantikite 6y agoNo problem! My wife’s family is from Bangladesh, so it’s largely due to that. Plus there’s tons of great Bangla poetry and literature I’d love to be able to access eventually. Unfortunately there’s not that many resources for English speakers, although between family and a great tutor I found on italki.com (and Anki) I’ve been making progress.
- shafin_ 6y agoI would suggest watch bangla content with english subtitle. Thats how i learned english when i was young, by watching a lot of pokemon and transformers in english. I should also warn you bangla content of good taste is very hard to find. Here is a link to list of extremely good bangla movie: https://asianmoviepulse.com/2020/09/20-great-bangladeshi-films-of-the-21st-century/ https://asianmoviepulse.com/2020/09/20-great-bangladeshi-fil...
- 6y ago
- z92 6y agoConsider keywords : ফেরত -> উত্তর ফাং -> কাজ For hashmap indexes, consider name["key"]-> name.key And while initializing "name" -> "value" consider syntax name : "value" Less typing.
- deleted 6y ago[deleted]
- UncleOxidant 6y agoWe English speakers are incredibly lucky that programming languages first emerged based on our native language. It's easy to imagine scenarios where the first programming languages were based on Mandarin or Bangla or Hindi keywords.
- zokier 6y ago> It's easy to imagine scenarios where the first programming languages were based on Mandarin or Bangla or Hindi keywords. I don't know. To me that seems pretty far fetched idea. Russian, or German, maybe? But I don't really see how the computer revolution could have started in SE Asia without fairly major changes in history
- lappet 6y agoThis is super cool. Although I cannot read Bangla, is it possible to extend this to other Indian languages, like say Hindi?
- shafin_ 6y agoYes, i think i can have it support hindi language probably in a day
- higerordermap 6y agoI remember one being posted to r/programminglanguages in Hindi keywords, and another called ezhil with Tamil keywords.
- sagman 6y agoKhub bhalo laglo dekhe. Consider simplifying primitives? _সংখ্যা -> ন etc.
- fermienrico 6y agoProgramming language is more abstract than mere collection of glyphs. I am curious if the glyphs were replaced by English alphabet, what are the special aspects of this language?
- 082349872349872 6y agoIf Tolkien's elves had their own programming language: https://imgflip.com/i/50ogs1 https://imgflip.com/i/50ogs1
- unmole 6y agoOff-topic: What exactly does the "Supported by JetBrains" banner mean?
- shafin_ 6y agoThey provided one license for every one of their product to use on this project. It was not mandatory but they requested to put a link to their website. So, i put it there. Btw their products are extremely good.
- jiyinyiyong 6y agomy toy for programming in Chinese http://jiuzhang.cirru.org/ http://jiuzhang.cirru.org/ .
- amznbyebyebye 6y agoWow love this