Need advice about which tool to choose?Ask the StackShare community!
Clojure vs Markdown: What are the differences?
Developers describe Clojure as "A dynamic programming language that targets the Java Virtual Machine". Clojure is designed to be a general-purpose language, combining the approachability and interactive development of a scripting language with an efficient and robust infrastructure for multithreaded programming. Clojure is a compiled language - it compiles directly to JVM bytecode, yet remains completely dynamic. Clojure is a dialect of Lisp, and shares with Lisp the code-as-data philosophy and a powerful macro system. On the other hand, Markdown is detailed as "Text-to-HTML conversion tool/syntax for web writers, by John Gruber". Markdown is two things: (1) a plain text formatting syntax; and (2) a software tool, written in Perl, that converts the plain text formatting to HTML.
Clojure and Markdown can be primarily classified as "Languages" tools.
"It is a lisp", "Concise syntax" and "Persistent data structures" are the key factors why developers consider Clojure; whereas "Easy formatting", "Widely adopted" and "Intuitive" are the primary reasons why Markdown is favored.
Clojure is an open source tool with 7.85K GitHub stars and 1.25K GitHub forks. Here's a link to Clojure's open source repository on GitHub.
Asana, Code School, and GoSquared are some of the popular companies that use Markdown, whereas Clojure is used by CircleCI, Groupon, and Soundcloud. Markdown has a broader approval, being mentioned in 756 company stacks & 718 developers stacks; compared to Clojure, which is listed in 95 company stacks and 80 developer stacks.
Basically, I am looking for a good language that compiles to Java and JavaScript(and can use their libraries/frameworks). These JVM languages seem good to me, but I have no interest in Android. Which programming language is the best of these? I am looking for one with high money and something functional.
Edit: Kotlin was originally on this list but I removed it since I had no interest in Android
Clojure is a Lisp dialect, so if you like Lisp that's probably the way to go. Scala is more popular and broadly used, and has a larger job market especially for data engineering. Both are functional but Scala is more interoperable with Java libraries, probably a big factor in its popularity. I prefer Scala for a number of reasons, but in terms of jobs Scala is the clear leader.
Scala has more momentum. It is good for back-end programming. The popular big data framework Spark is written in Scala. Spark is a marketable skill.
If you need to program something very dynamic like old school A.I., Clojure is attractive. You would chose Scala if prefer a statically typed language, and Clojure if you prefer a dynamically typed language.
It's not clear exactly what you mean by "high money", you mean financial support to the language, money paid for a job, economic health of the market the language is positioned on?
In any case, it's very hard to give any advice here, since you'd need to provide details on the intended usage, what sector, kind of product/service, team size, potential customer type... Both languages are very general purpose and decently supported, each have its own pros and cons, both are functional as approach, and neither is really mainstream.
AsciiDoc belongs to the family of lightweight markup languages, the most renowned of which is Markdown. AsciiDoc stands out from this group because it supports all the structural elements necessary for drafting articles, technical manuals, books, presentations and prose.
This includes, for example, admonitions, variables, the include statement, example blocks, footnotes, keyboard macro, equations and formular support (albeid only with asciidoctor and installed plugin iirc), automatic toc and header, description lists, actually usable tables, etc ...
In combination with Antora one can built the most awesome, versioned, and Dont-Repeat-Yourself but-also "Fully-Explain-without-just-Linking" documentation ever.
GitHub has built-in support for it, albeid not for it's include directive, though that can be dealt with by using CI to invoke asciidoctor-reducer or publishing a github page that has been rendered using the asciidoctor/antora renderer.
https://docs.checkmk.com/ uses Asciidoctor. Linus Torvalds once recommended Asciidoctor (1).
We’re a new startup so we need to be able to deliver quick changes as we find our product market fit. We’ve also got to ensure that we’re moving money safely, and keeping perfect records. The technologies we’ve chosen mix mature but well maintained frameworks like Django, with modern web-first and api-first front ends like GraphQL, NextJS, and Chakra. We use a little Golang sparingly in our backend to ensure that when we interact with financial services, we do so with statically compiled, strongly typed, and strictly limited and reviewed code.
You can read all about it in our linked blog post.
Pros of Clojure
- It is a lisp117
- Persistent data structures100
- Concise syntax100
- jvm-based language90
- Concurrency89
- Interactive repl81
- Code is data76
- Open source61
- Lazy data structures61
- Macros57
- Functional49
- Simplistic23
- Immutable by default22
- Excellent collections20
- Fast-growing community19
- Multiple host languages15
- Simple (not easy!)15
- Practical Lisp15
- Because it's really fun to use10
- Addictive10
- Community9
- Web friendly9
- Rapid development9
- It creates Reusable code9
- Minimalist8
- Programmable programming language6
- Java interop6
- Regained interest in programming5
- Compiles to JavaScript4
- Share a lot of code with clojurescript/use on frontend3
- EDN3
- Clojurescript1
Pros of Markdown
- Easy formatting345
- Widely adopted246
- Intuitive194
- Github integration132
- Great for note taking41
- Defacto GitHub lingo2
Sign up to add or upvote prosMake informed product decisions
Cons of Clojure
- Cryptic stacktraces11
- Need to wrap basically every java lib5
- Toxic community4
- Good code heavily relies on local conventions3
- Tonns of abandonware3
- Slow application startup3
- Usable only with REPL1
- Hiring issues1
- It's a lisp1
- Bad documented libs1
- Macros are overused by devs1
- Tricky profiling1
- IDE with high learning curve1
- Configuration bolierplate1
- Conservative community1
- Have no good and fast fmt0
Cons of Markdown
- Cannot centralise (HTML code needed)2
- Inconsistend flavours eg github, reddit, mmd etc1
- Limited syntax1
- Not suitable for longer documents1
- Non-extensible1
- No right indentation1
- No underline1
- Unable to indent tables1