Enterprise
🦄 The Enterprise™ programming language
Install / Use
/learn @joaomilho/EnterpriseREADME
Enterpriseâ„¢
Extra! Extra! * Disruption Driven Development - Mastering Enterprise™ – the book is in the making!
<a href="https://www.linkedin.com/search/results/index/?keywords=Enterprise%E2%84%A2%20programming%20language&origin=GLOBAL_SEARCH_HEADER"><img src="https://img.shields.io/badge/linkedin-ready-0077B5.svg" /></a> <img src="https://img.shields.io/badge/build-failing-red.svg" /> <img src="https://img.shields.io/badge/coverage-0%25-red.svg" />
<img src="assets/logo.png" align="right" />Enterpriseâ„¢ is a non-deterministic-unnecessarily-statically-typedâ„¢ Turing-complete-ishâ„¢, Quantum-out-of-the-boxâ„¢ programming language.
Enterpriseâ„¢ is designed to create computer programs that disrupt markets.
But why?
Following on the footsteps of Rockstar, if we make Enterpriseâ„¢ a real thing, then recruiters and hiring managers won't be able to talk about 'enterprise developers' any more.
On top of that, articles about the "Best Programming Languages for Enterprise Development" will lose their meaning.
Enterpriseâ„¢ guide
Specs
Following are the specifications of the Enterpriseâ„¢ language.
Chapter 1: Comments
The most important bits in the Enterpriseâ„¢ are comments. There are 8 different types of comments in Enterpriseâ„¢. Some of them are found in languages not ready for corporate usage like:
line comment
// this is a boring line comment
The line comment is useful when you want to restate what the next line does. Here's an idiomatic example:
// adds one to counter
counter++;;;
block comment
/*
this is a block comment
*/
The block comment is useful when a comment is long, like explaining some implementation:
/*
The International Enterpriseâ„¢ Association only certifies code with a block
comment that exceeds three lines, so this comment guarantees our future
certification.
(line intentionally left blank, to ensure "exceeding" three lines)
*/
On top of these, Enterpriseâ„¢ adds:
copyright comment
/©
This code is property of ACMEâ„¢ studios 2017.
©/
Every Enterpriseâ„¢ program must begin with a copyright notice, else it will
not compile and fail with an UnexpectedNonDisruptiveOpenSourceException error.
It's customary to cover any non trivial implementation in Enterpriseâ„¢ with a copyright (and a comment). On top of that add an NDA comment (see below).
NDA comment
/©
This following code implements a "Web Dropdown Menu", copyright number 9283F3.
©/
/NDA
The following code can only be read if you signed NDA 375-1. If you happen to
read it by mistake, send a written letter to our legal department with two
attached copies immediately.
NDA/
passive aggressive comment
/?
This next bit is oh so lovely
?/
Things like irony may be a problem in communication. To solve this problem and ensure proper communication, Enterpriseâ„¢ adds a passive aggressive comment, so the reader must assume the opposite.
interview comment
Since Enterpriseâ„¢ will be widely used for job interviews, the interview comment is very handy to "explain how you reason" to your interviewer:
/¯\_(ツ)_/¯
...this could be done in O(1) if I had the time...
¯\_(ツ)_/¯/
time to market comment
/soon 1985-11-20
using a while here would be more performatic
soon/
If you can't write the best implementation Today, use an improve in the future comment, to ensure it will be done some day. Adding the current day in the comment is part of its syntax, so one doesn't lose track of oldest comments.
deadline comment
Deadline comments are extremely important to have our code disrupting the market on time, seizing all the opportunity costs. Deadline comments also have a date attached.
/deadline 1997-01-11
We need to ship this game before Xmas. No delays accepted.
deadline/
/deadline 1998-01-11
We need to ship this game before Xmas, we already lost the previous one.
deadline/
/deadline 1999-01-11
We need to ship this game before Xmas, this time for real.
deadline/
/deadline 2000-01-11
The board is extremely impatient. No excuses this time.
deadline/
/deadline 2002-01-11
Come on people, they just gave us a 2 years extension after that horrible
meeting. Let's not let 'em down this time.
deadline/
/deadline 2005-01-11
Ok... this game may not happen and we may throw this 8 year old effort in
the wastebin of History if we don't get this done. Blogs are making a joke of
us. Think about your families.
deadline/
/deadline 2011-01-11
I don't know what to say. This is the biggest delay in game History. We're a
laughingstock.
deadline/
/soon 2011-01-11
We delivered! But we probably need to refactor everything very soon if we're
to have a next release.
soon/
Chapter 2: Classes
naming
Classes are named with Hungarian Case. Hungarian Case is similar to Pascal Case, but is prefixed with one or more type characters (see more below). A class must end with an Enterpriseyâ„¢ suffix (these suffixes are copyrighted and any use in other languages may be investigated by our lawyers).
Type characters applicable to classes:
fdcfinal disruptive classfucfinal unnecessary class
Enterpriseyâ„¢ terms:
After the prefix, a class name may have any number of Enterpriseyâ„¢ terms. In Enterpriseâ„¢, differently from other languages, class names are not open to developers' "cre-a-ti-vi-ty". That's because naming is known to be a hard problem, and limiting the alternatives makes it so much more predictable. Also, forcing developers to comply with that list will boost communication, since they'll share a common lingo.
Here's the full list of accepted Enterpriseyâ„¢ terms:
|||||||| |-|-|-|-|-|-|-| |Accelerate|Acceleration|Account|Active|Activity|Agile|Agility| |Ajax|Algo|Analytics|Analyze|Analyzer|Ballpark|Bean| |Big|Bit|Bizmeth|Block|Boost|Bootstrap|Bootstraped| |Brand|Business|Buzz|Car|Chain|Chart|Clickthrough| |Cloud|Coin|Consumer|Content|Converge|Convergence|Coordinate| |Coordinator|Complex|Convert|Convertion|Cost|Costs|Critical| |Crypto|Currency|Customer|Cyber|Data|Deep|Delegate| |Delegator|Design|Dev|Develop|Development|Digital|Disrupt| |Disruptor|Disruptive|Diverse|Diversify|Diversifier|Diversity|Downsize| |Downsized|Drive|Driven|Driver|Economy|Economic|Employ| |Employee|Employer|Empowered|Engine|Enterprise|Entrepreneur|Entropy| |Equity|Evolution|Evolve|Evolving|Eyeball|Eyeballs|Facade| |Factory|Fast|Fee|Fizz|Flat|Founder|Founders| |Framework|Free|Future|Fuzzy|Generate|Generation|Generator| |Global|Gluten|Graph|Graphic|Group|Growth|Guideline| |Guidelines|Hack|Hacking|Hardware|Holistic|Human|Hyperlocal| |Immerse|Immersion|Immersive|Innovate|Innovative|Innovativity|Innovator| |Internet|Intranet|Invest|Investment|Item|Iterator|Java| |Lactose|Learn|Learning|Leverage|Line|List|Manage| |Management|Manager|Market|Marketing|Media|Mega|Merchant| |Message|Micro|Millenial|Mindshare|Mine|Mining|Mission| |Module|Momentum|Money|Nano|Network|New|Next| |Number|Nut|Object|Operation|Operator|Opportunity|Ops| |Order|Organic|Paradigm|Passionate|Pattern|Person|Pie| |Point|Policy|Portal|Product|Proof|Provable|Proxy| |Resource|Return|Roadmap|Scalable|Science|Self|Service| |Services|Share|Sharing|Simple|Skeuomorphic|Speed|Software| |Solution|Square|Startup|Streamline|Streamlined|Super|Sustainability| |Sustainable|Synergic|Synergy|System|Tax|Text|Time| |Trade|Trans|Upsize|Upsizer|User|Viral|Virality| |Viralize|Visual|Web|World|
On top of these terms, you can use any upcase char (A-Z) and number, like in "fdcVisualCRMWebDelegator" or "fdcViralB2BMicroServiceManager".
Finally, some articles are admitted:
["As", "To", "Of", "In", "Out", "On", "Off", "At", "Not", "Non", "With", "Without"]
This can be used to compose, as in fdcNextGenerationRoadmapAsAServiceProxy or
fdcProxyOfUserWithSustainableOrganicGlutenFreeFactory or
fdcTimeToMarketMomentumInnovator.
disruptive class
An Enterpriseâ„¢ program must start with the disruptive class. Since it's not
instantiable or extendable, every disruptive class is also a final class:
final disruptive class fdcMillenialUserManager {
}
A disruptive class does not have a constructor. It has only a main method
instead. Since the method can't be changed by implementors, it must be final
and immutable. And since it returns nothing, it must be void.
final disruptive class fdcMillenialUserManager {
final immutable void main () {
// here goes your code
}
}
unnecessary classes
Since all code in Enterpriseâ„¢ goes in the disruptive class, any other class you
declare, although syntactically correct, is strictly unnecessary. Because of that, they
must start with the unnecessary keyword. Since they can't be extended or
instantiated, they're also final. Although disruptive classes have a very
specific location in your folder structure, unnecessary classes can go anywhere
(see more in next chapter). Here's an example of an unnecessary class:
final unnecessary class fucNutFreeUserManager {}
These classes can have a constructor, so that if they were used, they could
receive params. Since constructors do not return, they must be void. Since
the methods can't be overridden – or used – they're also `final
Related Skills
node-connect
342.0kDiagnose OpenClaw node connection and pairing failures for Android, iOS, and macOS companion apps
prose
342.0kOpenProse VM skill pack. Activate on any `prose` command, .prose files, or OpenProse mentions; orchestrates multi-agent workflows.
frontend-design
84.7kCreate distinctive, production-grade frontend interfaces with high design quality. Use this skill when the user asks to build web components, pages, or applications. Generates creative, polished code that avoids generic AI aesthetics.
openai-whisper-api
342.0kTranscribe audio via OpenAI Audio Transcriptions API (Whisper).
