elangoc
https://shaunlebron.github.io/parinfer/
The size of the community is not as important as the value of what is available. It's just not widely known, or maybe there's still much potential yet unrealized.
This is an oldie but a goodie on how interactive an experience you can have when using Clojure on the front end and backend of a web app:
This project is the most recent and most promising iteration of someone making a very visual interactive tool for introspecting on data structures in the REPL environment
From anecdotal experience, I do believe that the choice of a Lisp for Logo was an important criterion in the simplicity of the language, and thus the high impact of the learning impact.
I do think that if we find Scratch useful and powerful, then we should really re-/consider Clojure as an important language for real general purpose programming work, for many reasons: https://www.youtube.com/watch?v=Y3-53JoGPE4
I was pointing out that specifically in the case of chili spice, I don't think it's good for the body. There are data to support the idea that eating large amounts of capsaicin is harmful to the body: https://www.healthline.com/nutrition/foods/chili-peppers#dow...
Meanwhile, go to the vitamin supplement section of your nearest store, look at the ingredients of turmeric tablets, and you'll see they have a disclaimer that they have trace amounts of black pepper to magnify the effect of turmeric.
Everything else you said is fine by me because I wasn't arguing for it or against it.
Oranges and millets probably came from China, bananas probably came from SE Asia (and these things probably before the Sangam age, which is before the Pallavas and the height of the Cholas, so clearly exchange was happening for longer than we know).
A slight correction to what you said, idli came from a Pallava king in the 13th century who married a bride from a Indonesia who in turn brought along cooks who liked using rice. They combined rice with lentils to make idli: https://youtu.be/7pxEXHxSQzU
To be clear, I know that rice has been grown in South Asia since the time of the Indus Valley Civilization (>= 4500 years ago), but all I'm saying is specifically about idli.
There are South Indian foods and snacks like venpongal and methu vadai that use whole peppercorn, not chili peppers. Tomato is another colonialism byproduct, but there are still people who make versions that use lemons instead of tomatoes. A common homemade drink for sick people is made from grinding dried ginger, coriander seeds, and black pepper. These are all daily foods. But you're right, few households or restaurants are 100% free of these 400 year old import crops.
Obviously, chili pepper is used where peppercorn or ground black pepper used to be, for the reasons in the parent comment. It also makes sense that black pepper would have been used in various dishes because it enhances the potency of the medicinal properties of turmeric by an order of magnitude. It wouldn't be hard to go back to black pepper, I imagine, with a little retooling of recipes to rebalance flavors.
He doesn't organize the Clojure conferences, but I'd imagine that if he didn't see any value in any context for static typing, there wouldn't have been a talk about Typed Racket and static typing researchers as keynote speakers, etc.
And FWIW, spec is a library trying to come as close as possible to the imaginary midpoint of static and dynamic typing, but in a Clojure-y way.
Both parent and grandparent correctly identify that many Clojure ideas come from elsewhere. Lisp and hosting on the JVM were not new. Immutability and persistent data structures weren't new ideas.
But putting them into one and making it performant was a paper published by people in the Clojure community (Rich was the lead author).
Clojure describes itself as data-oriented. That means not just the primacy of data, but of plain data, unadorned: https://youtu.be/VSdnJDO-xdg
What I find almost unique Clojure is that there's a philosophy to it that resonates throughout in it's design decisions: simplicity. Data is simpler than code, and code is simpler than macros, so prefer data and leave macros so a last resort. Libraries are simple, frameworks are complex. Plain data is simple, and the knock on effects of every library converting to & from plain data is powerful. But it only reveals itself after using Clojure for a while. Immutability allows for simpler code that you can reason about. Isolating state into containers allows you to characterize, control, and reduce touch points with state, which is necessary yet a source of complexity.
You can see the same set of ideas that underpin the design of Clojure to be present in follow on library additions (reducers/transducers, async, Datomic, etc). There's simplicity, often manifested in immutability and the associative model of information (everything is a map), at least.
Jobs made amazing things happen, but he also had a Reality Distortion Field with the best of them.
https://elangocheran.com/2014/10/30/exploring-programming-in...
Although I started the above project around the same time as Ramsey started his project in the original link (CLisp in Arabic), they were two entirely independent things. Ramsey's project is a 100% translation, whereas my project scales to other natural languages but is not a 100% translation.
Tim and I worked on trying to make programming in other languages easier as a means to help more kids learn programming, and learn FP the Lisp way, which we explain as more natural.
This book came out that republishes incomplete research that establishes cognates and place name parallels, although no grammatical connections made. In light of the progress made in the IVC script, it seems compelling. https://tamilnet.com/art.html?catid=79&artid=38813
In the meantime since this article was published in 2013, for IVC in terms of a Dravidian language, there's been a lot of progress in terms of script decipherment (to the point where the theory has become proof), archaeology, and DNA analysis that support each other consistently.
>“We don’t completely blame Facebook,” said Harindra Dissanayake, a presidential adviser in Sri Lanka. “The germs are ours, but Facebook is the wind, you know?”
And this, too, which says lynching is a natural individual reaction to systemic failure of law and order:
>And where people do not feel they can rely on the police or courts to keep them safe, research shows, panic over a perceived threat can lead some to take matters into their own hands — to lynch.
In fact, Sri Lanka has a history of majoritarian ethnic violence, up to and including genocide, against ethnic nationalities and minorities within the country.
Sinhalese also committed organized violence against Muslims in 1915. There were riots in 1958 because Tamils protested the use of the Sinhalese on license plates (following 1956 when Sinhalese replaced English as the only official language of govt, disenfrachising all Tamil govt employees). Tamils were killed in 1974 at the international Tamil conference in Jaffna, the Tamil cultural capital. And of course, the official war between 1983 - 2009 was one drawn-out genocide against Tamils by the 99% Sinhalese military and 95% Sinhalese police force, "ignited" by Sinhalese "mobs" using govt voter lists to burn Tamil homes and business along with killing Tamils, while the police were deployed everywhere but stood by and watched.
I get the tech-relevance of Facebook here, but this story is trying to take the latest ethnic atrocity from country that's already systemically racist, and somehow shoehorn it into the larger narrative of social media, corruption, and politics.
Maybe this is Sri Lanka's attempt at distancing itself from the Cambridge Analytica exposé that Channel 4 did undercover, where they posed as a middleman working to swing the recent SL local elections in the favor of an opposition chauvinist strongman who oversaw the crescendo of genocide against Tamils in 2009 (https://www.channel4.com/news/exposed-undercover-secrets-of-...)
I find the Sri Lankan government a very unsympathetic, persistent, complicit actor in the violence within its borders. It's not like Facebook and Cambridge Analytica were around to cause all the racist violence since 1915.
The CLJS-macro story is still a little tricky -- CLJS targets the JS runtime, but you can't easily define macros in a self-hosted CLJS REPL (ex: one that you'd embed in a webpage). Lmk if there is a cleaner way now.
During the time of that Logo class, I tried writing a BASIC program for a programming competition with my new-found confidence. But it was such a spectacular fail that my 11-year old self was literally crying.
I find both Logo and Clojure are profound, simple, and powerful in their own ways. A friend and I are working to take the next step with this project and make this a little more accessible/usable. ;)
If you're interested, I brought up these considerations and tradeoffs in the talk I gave last year - https://youtu.be/MqjMZNwnYCY
That ignores a lot about the cultural meanings embedded in language and the human tendency to use language to encode identity.
And on a very practical point, not everyone has access to learning English. Wealth & wealth distribution matter. How close your native language is to English also matters (is it Germanic? Indo-European? does it use a Roman script? is it alphabetic?...)
Here's what programming in Malayalam looks like - https://twitter.com/prathyvsh/status/635733805567840256
I don't believe that we give enough credit to the hurdle that exists when you have to learn English to learn programming. One of my cousins grew up in a village in Tamil Nadu (Southern India) where even the English teacher didn't know English well... The high-school computing courses were just about using desktop office apps. Kids end up just memorizing which icons do what actions (as opposed to reading the self-explanatory tooltips, menus, and error dialogs). The obstacles to equity for someone like her occur on multiple dimensions. I imagine the distribution of difficulty for non-native speakers skews more towards her end than towards those with better access to learning English.
Teaching kids to program in their native language
(Ex: apples can grow in Appalachia, but they're famous in Washington state; potatoes may not grow well in Florida, and oranges wouldn't grow well at all in Idaho...) But almonds must grow in at least one other place where there is more water than in California's Central Valley.
So I think we're on the same wavelength.
And I remember hearing 10 years ago that water will be the new resource that people fight over, if oil was the resource that people fought over for the last half-century. And that agriculture trade would be a form of trading water. That's sort of already happening. Call me naive, but we should cut down on California's production of some crops, and use good Midwest farmland more efficiently by growing more non-meat agriculture instead of meat.
The attitude about California's ground water is, "Hey, they own the water based on the laws on the books, what can you do?" Much of the public would rather they not use all that water on almonds and alfalfa and whatnot, just to export elsewhere. Why can't the rest of the country grow that stuff? How can someone exclusively own the groundwater like that??
Whatever law that applies to Vinod Khosla should apply to those large water-wasting water-owners.
(And it follows that however dastardly Vinod Khosla may seem, the large water-owners in California are irrevocably screwing over California's future generations' water resources, and are thus in my book, much more worthy of scorn and "public trust doctrine" action.)
Clojure(Script) REPL at http://clojurescript.io with source code at https://github.com/ScalaConsultants/replumb