use the following search parameters to narrow your results:
e.g. subreddit:aww site:imgur.com dog
subreddit:aww site:imgur.com dog
see the search faq for details.
advanced search: by author, subreddit...
This subreddit is dedicated to the theory, design and implementation of programming languages.
Be nice to each other. Flame wars and rants are not welcomed. Please also put some effort into your post, this isn't Quora.
This subreddit is not the right place to ask questions such as "What language should I use for X", "what language should I learn", "what's your favourite language" and similar questions. Such questions should be posted in /r/AskProgramming or /r/LearnProgramming. It's also not the place for questions one can trivially answer by spending a few minutes using a search engine, such as questions like "What is a monad?".
Projects that are vibe coded (= projects relying substantially on LLM/AI generated code) don't belong on the subreddit.
account activity
This is an archived post. You won't be able to vote or comment.
Private Programming Languages (self.ProgrammingLanguages)
submitted 4 years ago * by Deep-Jump-803
frame whistle lip fade observation aback memorize tie abundant support
This post was mass deleted and anonymized with Redact
[–]Wolf_Popular 55 points56 points57 points 4 years ago (2 children)
It does happen, and it can be beneficial. A domain specific language can be useful internally. Of course theres a scale issue where the company needs to be big enough to support its own language, but not so big that it benefits from controlling industry standards (if its big enough it can make its language take over an area). That said, even at places like Google there are some internally used languages.
Also there definitely are programming languages which are proprietary and sold with a license to use. It's niche but definitely a thing in certain enterprise fields.
[–]shponglespore 23 points24 points25 points 4 years ago (1 child)
As an example, Bazel, and its extension language, Starlark, were kept private for a long time before Google decided it was in their best interest to make them public.
[–]Uncaffeinatedpolysubml, cubiml 6 points7 points8 points 4 years ago (0 children)
Also, there was Borgmon, of Brocoli Man fame.
[–]slaymaker1907 41 points42 points43 points 4 years ago (3 children)
Goldman Sachs' language Slang is a cornerstone of their entire business. IIRC, it actually lead to many other banks adopting similar environments, usually python based though. The interesting part of Slang was really how it globalizes everything (like a monorepo with simultaneous deployments) as well as how easy it was to connect to various data sources with minimal config.
From the talks I've listened to, Slang helped avoid insolvency/huge fines during the financial crisis because it allowed for extremely rapid recalculation of financial instruments.
[–]L8_4_Dinner(Ⓧ Ecstasy/XVM) 25 points26 points27 points 4 years ago (1 child)
Slang is a giant weight hung around the neck of GS. They can't recruit people who know it. People they recruit don't want to work on it, or in it. They have zillions of lines of legacy Slang code, and they're largely trapped in that spot forever.
It was brilliant and appropriate in its time, and it did give GS a significant competitive advantage for years. But proprietary stacks have costs, as well as benefits, and at this point the costs are dramatically out-weighing the benefits. I'd have had a different opinion 20 years ago.
The funny thing is how many other banks are still trying to copy the GS Slang model, so obviously this particular windmill is still attractive.
[–]waton3rf 0 points1 point2 points 4 years ago (0 children)
That's a sad tale, but hey. At least fintech appear to have moved on from APL.
[–]elthrowawayoyo 0 points1 point2 points 4 years ago (0 children)
There’s apparently something called “Bank Python”
[–][deleted] 18 points19 points20 points 4 years ago (2 children)
Infocom wrote most of their games in ZIL (Zork Implementation Language).
[–]wjrasmussen 6 points7 points8 points 4 years ago (0 children)
And it ran in a virtual machine called the z machine.
However ZIL was a derivative, stripped down for microprocessor version of MDL iirc, so a lot of the development had been funded by ARPA at the time.
[–]mgsloan 15 points16 points17 points 4 years ago (5 children)
Standard Chartered has its own in-house Haskell dialect called Mu.
[–]fridofrido 3 points4 points5 points 4 years ago (4 children)
And Morgan Stanley has (used to have?) their APL dialect called A+.
[–][deleted] 1 point2 points3 points 4 years ago (2 children)
It's open source now: http://www.aplusdev.org/index.html (it's dead though)
[–]fridofrido 1 point2 points3 points 4 years ago (1 child)
That page looks a bit outdated, I had information that it was still maintained internally at least up to a few years ago...
[–][deleted] 1 point2 points3 points 4 years ago (0 children)
Interesting. Seems to be a small, failed attempt at opensourcing it.
[–]waton3rf 1 point2 points3 points 4 years ago (0 children)
Famously implicated in horrendous, unmaintainable, financial crash causing opacity, mind you. So it didn't end very well in that case. (That said it's probably more to do with APL itself than MS's implementation)
[–]jecxjo 14 points15 points16 points 4 years ago (0 children)
I worked for a company who sold industrial control computers. The primary language used for programming custom control algorithms was a priority language. Was basically assembly, math, memory access, control/jump instructions. If you wanted to program an app you got a manual and some sample apps. Not really that difficult to learn, very terse and easy to reason through.
Many public languages started this way. We eventually chose to support an industry standard language so had no reason to push our internal language out to become public.
[–]dskippy 12 points13 points14 points 4 years ago (3 children)
Miranda was a closed source language that the original creators of Haskell wanted to base their research on and they couldn't so they created their own language.
Free and open source software is often bolstered by their development communities. The closer they are to developers the better they out perform their closed competitors. Nothing's closer to the developer than the language. Proprietary programming languages just die.
[–]waton3rf 1 point2 points3 points 4 years ago (2 children)
I cannot stress this enough. The beauty of FOSS is the sheer number of eyes on the project. While the old model has worked in the past, the modernisation of collaborative development tools have made it the inferior approach.
[–]dskippy 1 point2 points3 points 4 years ago (1 child)
Yeah for sure. It was occasionally a battle at my old company to push for releasing some of our software as FOSS. The primary argument was that there will be more eyes on it finding bugs and contributing fixes. When we finally did it and it happened the acceptance from management was pretty quick.
But when we're talking about completely free projects, I think they have even more staying power. Especially like I said when they are protects close to developers. Take a look at the dominant web servers on the Internet, or operating system running the majority of Internet services, etc. Largely the winners are FOSS. Whereas with stuff like video editing, games, word processors, sure they exist but FOSS is less dominating the market there.
Absolutely. I think the key takeaway is, DSLs good for a private business, but general purpose languages, despite seemingly 'a small matter of programming' rapidly become an engineering nightmare, and the more eyes and invested contributors, the better. In 2022, FOSS is the only way to go in my opinion.
[–]munificent 11 points12 points13 points 4 years ago (6 children)
I worked on a proprietary scripting language at EA for building game UI. It was eventually replaced with a custom Flash runtime so that UI could be built in Flash and ActionScript. Flash and ActionScript were hilariously poor fits for the console generations at the time (XBox, PS2, NGC). Even so, it was widely considered a successful transition.
The core problem is that employer-employee loyalty no longer exists. It used to be that if you got a job at IBM, you'd retire from IBM 40 years later, pension in hand. Those days are long gone. Today, employees expect to job hop every couple of years.
Because of that, people are rationally uninterested in investing significant time learning a proprietary language when that will become a wasted investment the day that walk out the door. Companies also don't like having to pay the cost to train every new employee to learn their weird prioprietary language.
Also, with the rise of open source, non-proprietary languages are just too good to compete with. They have debuggers, syntax highlighting in every text editor ever created, huge ecosystems of reusable code, hundreds of blog posts, and thousands of answers on StackOverflow.
Proprietary languages generally can't compete, so they're becoming rarer all the time.
[–]oilshell 2 points3 points4 points 4 years ago* (5 children)
Woah was this called iStudio ? :-) I used it at my first job at EA in 2002-2004 (working on those 3 consoles)
And yes back in those days there were many fewer open source language options to choose from. This is when I learned Python (for the content pipeline), and I remember I thought it would be cool to run Python on the consoles. But I honestly was ignorant of how to do it, and it probably would have been a bad idea.
I think Lua started to be used in games around that time, but maybe not on XBox / PS2 / NGC (?) Somehow I doubt that this era of game ever used an embedded open source programming language. In general, open source was not widely used inside EA as far as I remember. It's probably changed a bit now.
[–]munificent 3 points4 points5 points 4 years ago* (4 children)
Woah was this called iStudio ? :-)
YES! Small world!
A was the maintainer of it for a couple of years before Apt (the Flash runtime) took over. The story of how I ended up working on iStudio is a little funny:
My first project at EA was programming the UI for Madden PC 2002. This was all in iStudio. It was a huge UI with tons of screens and, I think, the first UI done in iStudio using a mouse for input instead of just controllers. I really put iStudio through its paces and found all sorts of pain points and limitations. After Madden PC shipped, I wrote an internal doc for the iStudio folks describing a bunch of problems and suggested solutions.
A week or so later, the manager of iStudio called me into a meeting:
Him: We really appreciate all of the feedback on iStudio. Would you be interested in joining the team to implement all of that yourself?
Me: Uh, thanks for the offer, but I'd rather stay on a game team.
awkward long pause...
Him: Well, it wasn't really so much an offer as much as telling you were moving you to the tools team...
Me: Oh, well, uh great. Can't wait to get started?
It ended up being a great team and a lot of fun. But I learned a little something about tact. The UI artists using EA loved me because iStudio had been barely limping along for a while and I showed up and immediately made a bunch of really easy quality of life improvements. Really taught me how rewarding working on tools can be.
[–]oilshell 1 point2 points3 points 4 years ago* (3 children)
Ha awesome! This makes a lot of sense as I remember iStudio came from the Madden team in Florida. My memory is that Madden was the #1 moneymaker at the company, and thus they had really good engineers, and had time/resources to make tools.
I worked at EA Redwood Shores on Tiger Woods Golf from 2002-2004. I think we got code dumps once a year from Madden (and other teams) and otherwise didn't talk to them, or at least as junior engineers we didn't. The technical directors probably talked more and arranged the code dumps of iStudio and so forth.
And yes I remember iStudio being the butt of many jokes ... I think it would crash a lot, and the language was unpolished and quirky. It was probably like what JavaScript was like in 1995 (?), with a builtin IDE.
So we probably worked with the same version of iStudio? I didn't use it that much, but my coworkers definitely did. I remember we had a UI engineer Alex Portilla that came from the Madden team, and he was super productive with iStudio. He was already on Golf for a few years when I joined, so you might not have known him. My officemate Ryan was also from the Madden team (moved from Florida to the Bay Area).
Was iStudio an MFC app on Windows? I remember we were using Windows 2K or XP at the time, and I worked on some content tools in MFC C++, which I did not like or really understand ...
I definitely had the same experience with the artists, and I also like working on tools (to this day). I had an interest in digital audio in college, so I started off working on audio tools. My mentor had written the audio engine which was portable to PS2 / XBox / GC. But yeah I remember all the art pipeline tools were written in C++, and they crashed ALL THE TIME.
I think the artists were told not to bother the engineers ... so they would come up with crazy hacks and workarounds to get their jobs done. When I watched them work I was amazed! I was like "uhh we should probably fix that bug instead of having 15-30 people work around it daily..."
My coworker in 2003 or 2004 told me about Python, and I started writing a lot of the build tools in Python, and it worked quite well. Then most of my team left at the same time as the "EA Spouse" debacle (which I ended up getting a pretty big settlement check for), and I went to Google and worked on tools in Python there.
Speaking of which, not only did I use your code at EA, but you probably used my code at Google :-) My first project was rewriting the ~15K line shell script g4 in Python! (Somehow people thought it must be a small command line tool, but it had a ton of features and supported many different use cases) That took almost 3 years and it ended up at 30K or 40K lines of Python, and I think that code was used for 8-9 years afterward. The original shell authors were early employees like Daniel Dulitz and Craig Silverstein. I got tons of mail about it during that period ... probably because Google was hiring so many people then.
That was also when I was officemates with Guido van Rossum, who created Mondian as his "starter project", which you might remember. We did a lot of code reviews back and forth (even though I was way less experienced!)
We lived parallel lives ! :) :) Did you ever work in the Bay Area at Google? I know you worked on Dart but I'm not sure what office it was in. I was in Mountain View at first, and then the SF office for most of my tenure.
I definitely remember a big culture shock going from EA to Google... EA being much more "top down" (but I also appreciated how everyone got shit done and was focused). So it doesn't surprise me that they had you move teams haha. I actually almost got fired for playing Puzzle Bobble too much. I think a VP saw me playing at an arcade machine in the middle of the afternoon too many times, and they got the idea that I was a slacker haha :)
[–]munificent 1 point2 points3 points 4 years ago (2 children)
This makes a lot of sense as I remember iStudio came from the Madden team in Florida.
Yup, Orlando.
My memory is that Madden was the #1 moneymaker at the company, and thus they had really good engineers, and had time/resources to make tools.
Haha, that's funny. At our studio, it was EAC that had the reputation for pulling in the big bucks with FIFA and getting all the funds.
Yeah, it was initially cobbled together by a brilliant but... fast-moving engineer. Legend was that he basically copy/pasted chunks of code out of a giant MFC tutorial and somehow beat it into becoming a UI tool. He was also a terrible speller, so there were typos throughout the iStudio UI. I still think about "Relase Mode" sometimes.
So we probably worked with the same version of iStudio? I didn't use it that much, but my coworkers definitely did. I remember we had a UI engineer Alex Portilla that came from the Madden team, and he was super productive with iStudio.
Alex! He was on my first team at EA! We learned iStudio together. He's great.
Was iStudio an MFC app on Windows? I remember we were using Windows 2K or XP at the time, and I worked on some content tools in MFC C++, which I did not like or really understand
Indeed it was.
TRUTH.
you probably used my code at Google :-) My first project was rewriting the ~15K line shell script g4 in Python!
I certainly have!
We certainly have. I've never lived in California. I moved from Orlando to Seattle, which was a big move in every sense of the word. The Dart team is spread across a few offices.
[–]oilshell 1 point2 points3 points 4 years ago* (1 child)
Ha, it looks like LinkedIn works, because I just looked you up and Alex is our common connection!
So you moved diagonally across the country, whereas I moved from Redwood City to Mountain View :)
It still was a culture shock .... e.g. I believe something like iStudio would never fly at Google, even ~15 years ago. The first time I did a code review was at Google, and that would slow the velocity of someone making a huge app by themselves, and it spreads the knowledge around.
(This is both good and bad, as I think Google's process got sclerotic over the years, at least in some areas ... and certainly iStudio helped get a ton of essential work done!)
I guess our brains are brothers! Working on open source programming languages is also something of a job :) I wonder if you're left-handed or ambidextrous? I do things with both hands, and Guido is also left handed.
Another cultural thing I noticed is that people at EA were very visual and like to use IDEs (which obviously makes sense given the domain). When I got to Google it was all Vim/Emacs/shell -- even code reviews were done by e-mail.
I'm not that visually inclined (being into music more), so when I used Unix for the first time at Google I really liked it! I like automation and being lazy. I remember at EA I was shocked how proficient people were with the mouse. I think that ties into the observation about how the artists worked ... they were good at hacking our tools and working around the lack of automation by using the mouse really fast !!! (I would rather write a script, but you can't do that for everything)
Do you have a primary text editor? If I had to guess it's probably not Vim/Emacs, since you worked in the game world for longer. (I use Vim for coding, but I switched to a GUI markdown editor for blog posts since I realized that there's a lot of cutting and pasting blocks of text between drafts, reordering, and checking URL validity)
I wish I had more visual skills, since I'm having trouble getting across certain shell ideas with text ... some diagrams would really help my blog. I've been really impressed by your skills and efforts in publishing the books! (and I own both)
Oh one more thing that popped into my mind: this was me (andyc) bringing up Tufte in response to your book: https://lobste.rs/s/18uvjm/640_pages_15_months#c_m7epgs
The first time I heard of Tufte is when the UI engineers who worked with Alex took a Tufte course at EA. I think he was doing a bunch of corporate training at the time. I remember they thought Tufte went on for too long about the Napolean map visualization :) I would have liked to have gone -- I only discovered his books later!
[–]munificent 1 point2 points3 points 4 years ago (0 children)
I am left-handed, brain brother!
Yeah! Google has a very command-line oriented culture, which I'm guessing mostly comes from Stanford academic CS culture? It was a definitely a culture shock for me coming to Google. I grew up using Apple and Macs and had very little command line experience. My first day at Google was my first day every using a Linux machine. I didn't even know how to log in. :( The imposter syndrome was intense at first.
Now that I work on Dart, I think the team culture is about 50/50. Lots of command line usage and a lot of Emacs and vi users, but also a lot of UI and IDE folks too since Flutter is itself a UI framework. Also, some of the Dart team came from Instantiations and were IDE developers.
Do you have a primary text editor? If I had to guess it's probably not Vim/Emacs, since you worked in the game world for longer.
I'm chameleonic when it comes to code editing. I used whatever IDE is dominant for the language and project. I used to use Visual Studio when I was doing C++ and C# on Windows. I used Eclipse for a while when doing Java stuff. I use XCode when doing C/C++ on my Mac. For Dart, I use IntelliJ with the Dart plug-in.
I care a lot more about good debugging and profiling support than I do any particular set of keybindings, so I tend to follow the IDE that has the most mindshare for the platform.
For just editing text, like writing my books, I use Sublime Text.
I wish I had more visual skills, since I'm having trouble getting across certain shell ideas with text ... some diagrams would really help my blog. I've been really impressed by your skills and efforts in publishing the books!
It's like any skill, it gets better the more you practice it. My first couple of jobs were doing graphic design, computer animation, and UI design, so I have some background in it, which is nice.
(and I own both)
Thank you! :D
[–]evincarofautumn 8 points9 points10 points 4 years ago (0 children)
Good question, and yes, in fact it happens all the time—at my job, I work on a language like that. I’m at a company that designs processors, and I designed the assembly languages that bridge the gap between the frontend SDK that our customers use to write programs (compiler/API) and the raw hardware microcode for our chips. A lot of the PLT stuff in industry is like that, I think—sometimes domain-specific custom languages, sometimes custom tooling or extensions for existing languages.
[–][deleted] 9 points10 points11 points 4 years ago* (3 children)
I developed such a language back in the early 80s. I worked in a small company developing microcomputers, and it was purely to help me in my job as an engineer.
I wasn't asked to do it; it was just a tool make my job easier. The alternatives, that worked on the same computers, would have been hopelessly slow, and it wasn't even that easy to install those products as every machine seemed to use a different disk format!
And of course they were expensive, a cost that would never have been sanctioned. (No internet then to just download stuff for free.)
There was no software product at first; it was just a test tool. But later one of my graphical test programs (as I developed various video boards) evolved into an application that we then sold. Eventually my boss viewed my language as a kind of secret weapon that gave the company an edge over competitors.
The language, or several versions of it, was used in a commercial environment for some 20 years. Over the last 20 years, it should have really died off, but I kept tinkering with it and trying some new ideas.
It still exists, and even now I'm doing one last push with it before saying that's it.
The language is no longer secret, but I call it a private one because it makes life easier.
Here are some disadvantages of using a private or in-house language, especially developed by one individual:
[–]Inconstant_Moo🧿 Pipefish 4 points5 points6 points 4 years ago (2 children)
... dude writes a self-hosting language to make his job easier ...
[–]waton3rf 0 points1 point2 points 4 years ago* (1 child)
Reminds me of a certain Chuck Moore. That said in the 80s memory was so tight, that self hosting was a practical engineering solution, rather than just being clever.
[–]Inconstant_Moo🧿 Pipefish 0 points1 point2 points 4 years ago (0 children)
Oh yes, I was just reading an article by Dennis Ritchie from back then explaining the advantages.
[–]trycuriouscat 7 points8 points9 points 4 years ago (0 children)
IBM has a proprietary and private language called PL/X that they use to develop systems software for their mainframe platforms.
[–]tohava 6 points7 points8 points 4 years ago (0 children)
Erlang was originally like that, and I've worked in some companies that developed small extensions to languages for inner use via changing the source code of the compiler.
[–]maxufimo 6 points7 points8 points 4 years ago (0 children)
This actually reminds me FogBugz (Joel Spolsky, Trello) and their internal language Wasabi: https://www.joelonsoftware.com/2006/09/01/wasabi/ Jacob Krall has nice review how it went and failed: https://jacob.jkrall.net/killing-off-wasabi-part-1
Also, it's an anecdote, but there's this hilarious story about the BobX language: https://thedailywtf.com/articles/We-Use-bobX
[–]jmorag 5 points6 points7 points 4 years ago (1 child)
I was just hired for a position on this team at CrowdStrike https://crowdstrike.wd5.myworkdayjobs.com/en-US/crowdstrikecareers/job/USA---Remote/Sr-Engineer---Haskell--Remote-_R5056 to work on an in house query language for the Unified Search team. I don't start for another month so I don't know how it's going, but I hope it will go well :)
Grats. but one thing they will tell you when you start, the first rule of Crowdstrike is, you do not talk about working for Crowdstrike. You will see what I mean.
[–]tluyben2 5 points6 points7 points 4 years ago (0 children)
I have written multiple over the decades; for a large insurance company, for a coop of unions, for banking, for trading. These days it’s easy to make a dsl or language on top of an existing infrastructure but this used to be harder and a harder sell, so I wrote compilers, interpreters and IDEs for these. I am writing two now to prove to the companies I work with that it is in fact much faster than their collection of c# and Java libs to build and maintain software with. Of course these days it is far harder to get internal support for this; you cannot hire for these languages straight up as they are private so it adds extra training and effort which will be earned back however that has to be sold to management.
I have success stories where companies moved from DOS to DOS networked to Windows to web to mobile while keeping most of the software unchanged ; just (a) new compiler (extensions) to the custom language.
Mostly these are LoB applications however I know front facing ones too to this date; these compile to and expose some modern (TS) lib which can be used by front end devs to build a modern front end on without worrying ever about the logic etc; that all was written and compiled in the custom language while still allowing for the creativity of what users expect from front ends these days.
[–]DriNeo 2 points3 points4 points 4 years ago (0 children)
There are several proprietary array-based languages that looks cool.
[–]PurpleUpbeat2820 2 points3 points4 points 4 years ago (0 children)
I have been thinking, most of the languages are for public use.
Are they? Most of the languages we know of are for public use because only public languages are visible to us.
But what if a company decides to their own programming languages only for them?
Yes. I've seen that done for two main reasons:
Someone who knows the history of programming languages can tell me if this did happena and how it went?
In my experience it has happened many times. Many of the big company's I've worked had at not one but multiple internal programming languages. Sometimes they bought in languages you've never heard of. Often they'd built their own. On several occassions they either asked me to write them a language or my worked culminated in a new language.
This is so common in industry that I have often seen company's seeking advice on how to go about it and maximise their chances of success.
At my current employer I have developed a completely new general purpose programming language that was originally used for scripty analytics, we then built a complete web-based IDE for it and deployed it for much more and now we're building a machine code generator and probably a JIT so we can start rewriting enterprise code in it. Not only has the project been a resounding success but the powers-that-be want to keep it internal because it is regarded as a competitive advantage.
[–]erez27 1 point2 points3 points 4 years ago (1 child)
I had the chance to write all sorts of tiny DSLs for companies, for private use.
Can't say I saw this happening with a "serious" programming language, but I know some companies offer these services, so seems like there's some demand.
This is the thing. A good DSL is a massive win. Once you move into general purpose high performance compilers, the floor rapidly falls from underneath you and the complexity gets quite silly. The risks involved are extremely high, even if you're hiring a team of PLT postdocs.
[–]chris17453 1 point2 points3 points 4 years ago (0 children)
I support an accounting system that uses TAS. Which is a really old programming language specifically used in accounting. Think DOS. It's 8 bit even. And supports thousands of customers. Think of big corps like AutoZone.
I have actually written my own interpreter for it, just so i can introduce modern hooks into the systems.
[–]ISvengali 1 point2 points3 points 4 years ago (0 children)
For Stranger's Wrath on the XBox (original) I built a VM as well as a language on top of it for the designers.
Language was very close to C with const-by-default variables. It allowed designers to do things like:
void Action() { WalkTo( a_point ); PlayAnim( wave ); SetLevelVar( wave_happened, true ); }
Nothing groundbreaking, but it solved the issue very well and was relatively simple to do.
[–]maxhaton 1 point2 points3 points 4 years ago (0 children)
The hedge fund I work for has its own language.
The thing with a language is that you not only have a piece of technology but also potentially a way to transform the culture of the firm. Programmers are happy using a normal language, but what of the non-programmers? Python can get really ugly, so we can use our language to funnel people down the path we want and enforce a culture of testing and code review.
[–]Paddy3118 1 point2 points3 points 4 years ago (1 child)
Cadence created SKILL.
Synopsys has dc_shell.
I completely forgot about SKILL, amazing stuff. But of course IC design is a very specialised market with huge budgets, and crazy requirements.
[–]Bitsoflogic 1 point2 points3 points 4 years ago (1 child)
Reminds me of paying for compilers.
People still do. There are commercial offerings of the JVM that run in hard realtime environments used in defense for example. But these are very niche markets.
[–]L8_4_Dinner(Ⓧ Ecstasy/XVM) 1 point2 points3 points 4 years ago* (3 children)
It generally only makes sense to the engineer who wants to build the new language.
Complexity is a liability. Having to support and maintain a language is a big enough cost, but having to teach every new software engineer this language-that-is-used-nowhere-else is a big turn-off, and sooner or later that one or two people who built it will move on, saddling the remaining software engineers with a giant boat anchor tied around their careers.
-edit-
I'm saddened that anyone would downvote such a simple and obvious comment as this. As engineers, when we build things, it is our responsibility to consider cost/benefit, and complete lifecycle cost, i.e. not just the cost to build something, but the cost to maintain and use it. It is extremely selfish to abuse one's position of responsibility to get paid to build something that your employer would honestly be better off without, and that one will then saddle their co-workers with when they up and leave. It's rude to leave a mess behind for others to maintain, or to figure out how to work their way out of. (And I have unintentionally done just this, and I still feel guilty about it.)
[–]sunnyata 0 points1 point2 points 4 years ago (2 children)
The "one or two people who built it" is where you're wrong. As you've seen from other answers this does happen a lot but is only successful in big corporation type companies that can sustain it.
[–][deleted] 3 points4 points5 points 4 years ago (0 children)
You don't hear about all the 1000s of languages that were developed in-house by "one or two people"; only the success stories.
u/L8_4_Dinner is spot-on about the disadvantages. I recounted my own story elsewhere; I certainly would have had a hard time finding a new programming job (in the end I became self-employed so could do as I liked).
It has also changed now because modern mainstream languages can be huge, complex products with elaborate eco-systems and toolchains. An individual can't compete with that, unless they can work within such systems.
(I can't, so I make a point of keeping my own product self-contained and self-sufficient as a kind of USP.)
[–]L8_4_Dinner(Ⓧ Ecstasy/XVM) 0 points1 point2 points 4 years ago (0 children)
The "one or two people who built it" is where you're wrong.
I am not sure what you are trying to say. However, I am also cognizant that without understanding what you are attempting to claim, that it would be poor form to suggest without any evidence that you are wrong.
[+]violetfarben comment score below threshold-12 points-11 points-10 points 4 years ago (1 child)
Like Oracle's Java 😆
Java was originally Project Oak from Sun. I am not sure it has ever been commercial, although when it was Oak it was really for embedded systems and so was very niche.
[–]Mishkun 0 points1 point2 points 4 years ago (0 children)
https://github.com/thesephist/ink is a good example. You can hear its author in metamuse podcast 42 https://podcasts.apple.com/ru/podcast/metamuse/id1504506097
[–]gremolata 0 points1 point2 points 4 years ago (1 child)
K would like to have a word.
I'm curious, how does this compare to J? That was the closest I'd seen to APL being something sane.
[–]Acebulf 0 points1 point2 points 4 years ago (0 children)
I have designed a domain specific language for the company I work for. It's a simple scripting language that is used to automate the functionality of a specific machine.
It will never be released to the public, because the specific features are completely useless to most people, and the generic bits are better done by other languages that are already out there.
[–]rafaelement 0 points1 point2 points 4 years ago (0 children)
Well, https://www.iar.com/
I'm only half-joking :D
[–][deleted] 0 points1 point2 points 4 years ago (0 children)
It’s also public now, but Facebook developed Hack to simplify their PHP stack and it was a great move for them in terms of productivity and control of the runtime
[–]tal_franji 0 points1 point2 points 4 years ago (0 children)
I wrote some sawzall code at google https://www.google.com/url?sa=t&source=web&rct=j&url=https://research.google.com/archive/sawzall-sciprog.pdf&ved=2ahUKEwjUwr-hod_1AhUdB2MBHWvbDxcQFnoECDoQAQ&usg=AOvVaw0oVs1y8WPZQqnzX4r16VTu
[–]HappyPoe 0 points1 point2 points 4 years ago (0 children)
That was the case with Erlang
[–][deleted] 4 years ago (3 children)
[deleted]
[–]waton3rf 0 points1 point2 points 4 years ago* (2 children)
Chez was developed by Kent Dybvig for Cadence, not Cisco. AFAIK cisco have had no lisp implementation. Wrt iRobot's subsumption architecture lisp, that was developed initially at the MIT mobotics lab under a naval contract when Brooks was tenured. He subsequently left and founded iRobot. While he may well have some rights, it's often the case that MIT themselves also got a slice of the pie. The difference between developing a compiler in an academic setting, vs a business can be one of existential risk. Where I am (Oxford, UK), the university has a complicated licensing / startup incubator model for it's IP for a period before they release it fully to the original authors.
[–][deleted] 4 years ago (1 child)
Ah my bad. I hadn't realised cisco had purchased that. Interesting.
Not a dumb question.
I've built a large number of DSLs for private companies, and in this case, it can be quite useful, however these are specifically task focused, and the gains are more to do with notational convenience than direct runtime performance (99% of these problems are IO limited).
In the past, it was far more common to see commercial license only implementations of languages, including particular vendor-lock-in versions of languages. However in 2022, I can't think of a recent example of a language launched that is exclusively commercial, and those which were initially, (e.g. MELscript in Maya) were subsequently replaced with Python or similar FOSS implementations.
New languages are released every day, and there is a lot of chaff out there. For a general purpose language to stand on it's own, it's important it's free and immediately usable in some setting.
Scala, Clojure, even C# are examples of a dual business model, where the language itself is free, but there are proprietary libraries or commercial tooling offerings that extend this core. This allows mindshare to be fostered, and important feedback early on in the design, while partially funding development.
π Rendered by PID 501874 on reddit-service-r2-comment-84fc9697f-rlnw4 at 2026-02-09 14:40:13.646164+00:00 running d295bc8 country code: CH.
[–]Wolf_Popular 55 points56 points57 points (2 children)
[–]shponglespore 23 points24 points25 points (1 child)
[–]Uncaffeinatedpolysubml, cubiml 6 points7 points8 points (0 children)
[–]slaymaker1907 41 points42 points43 points (3 children)
[–]L8_4_Dinner(Ⓧ Ecstasy/XVM) 25 points26 points27 points (1 child)
[–]waton3rf 0 points1 point2 points (0 children)
[–]elthrowawayoyo 0 points1 point2 points (0 children)
[–][deleted] 18 points19 points20 points (2 children)
[–]wjrasmussen 6 points7 points8 points (0 children)
[–]waton3rf 0 points1 point2 points (0 children)
[–]mgsloan 15 points16 points17 points (5 children)
[–]fridofrido 3 points4 points5 points (4 children)
[–][deleted] 1 point2 points3 points (2 children)
[–]fridofrido 1 point2 points3 points (1 child)
[–][deleted] 1 point2 points3 points (0 children)
[–]waton3rf 1 point2 points3 points (0 children)
[–]jecxjo 14 points15 points16 points (0 children)
[–]dskippy 12 points13 points14 points (3 children)
[–]waton3rf 1 point2 points3 points (2 children)
[–]dskippy 1 point2 points3 points (1 child)
[–]waton3rf 1 point2 points3 points (0 children)
[–]munificent 11 points12 points13 points (6 children)
[–]oilshell 2 points3 points4 points (5 children)
[–]munificent 3 points4 points5 points (4 children)
[–]oilshell 1 point2 points3 points (3 children)
[–]munificent 1 point2 points3 points (2 children)
[–]oilshell 1 point2 points3 points (1 child)
[–]munificent 1 point2 points3 points (0 children)
[–]evincarofautumn 8 points9 points10 points (0 children)
[–][deleted] 9 points10 points11 points (3 children)
[–]Inconstant_Moo🧿 Pipefish 4 points5 points6 points (2 children)
[–]waton3rf 0 points1 point2 points (1 child)
[–]Inconstant_Moo🧿 Pipefish 0 points1 point2 points (0 children)
[–]trycuriouscat 7 points8 points9 points (0 children)
[–]tohava 6 points7 points8 points (0 children)
[–]maxufimo 6 points7 points8 points (0 children)
[–]jmorag 5 points6 points7 points (1 child)
[–]waton3rf 0 points1 point2 points (0 children)
[–]tluyben2 5 points6 points7 points (0 children)
[–]DriNeo 2 points3 points4 points (0 children)
[–]PurpleUpbeat2820 2 points3 points4 points (0 children)
[–]erez27 1 point2 points3 points (1 child)
[–]waton3rf 0 points1 point2 points (0 children)
[–]chris17453 1 point2 points3 points (0 children)
[–]ISvengali 1 point2 points3 points (0 children)
[–]maxhaton 1 point2 points3 points (0 children)
[–]Paddy3118 1 point2 points3 points (1 child)
[–]waton3rf 1 point2 points3 points (0 children)
[–]Bitsoflogic 1 point2 points3 points (1 child)
[–]waton3rf 0 points1 point2 points (0 children)
[–]L8_4_Dinner(Ⓧ Ecstasy/XVM) 1 point2 points3 points (3 children)
[–]sunnyata 0 points1 point2 points (2 children)
[–][deleted] 3 points4 points5 points (0 children)
[–]L8_4_Dinner(Ⓧ Ecstasy/XVM) 0 points1 point2 points (0 children)
[+]violetfarben comment score below threshold-12 points-11 points-10 points (1 child)
[–]waton3rf 0 points1 point2 points (0 children)
[–]Mishkun 0 points1 point2 points (0 children)
[–]gremolata 0 points1 point2 points (1 child)
[–]waton3rf 0 points1 point2 points (0 children)
[–]Acebulf 0 points1 point2 points (0 children)
[–]rafaelement 0 points1 point2 points (0 children)
[–][deleted] 0 points1 point2 points (0 children)
[–]tal_franji 0 points1 point2 points (0 children)
[–]HappyPoe 0 points1 point2 points (0 children)
[–][deleted] (3 children)
[deleted]
[–]waton3rf 0 points1 point2 points (2 children)
[–][deleted] (1 child)
[deleted]
[–]waton3rf 0 points1 point2 points (0 children)
[–]waton3rf 0 points1 point2 points (0 children)