Mojo (programming language): Difference between revisions

Content deleted Content added
C++, etc, are not low-level
Line 43:
Mojo builds upon the [[MLIR (software)|MLIR]] compiler framework instead of directly on the lower level LLVM compiler framework that many languages like Julia, Swift, clang and Rust do.<ref>{{Cite web |last=Krill |first=Paul |date=2023-05-04 |title=Mojo language marries Python and MLIR for AI development |url=https://www.infoworld.com/article/3695588/mojo-language-marries-python-and-mlir-for-ai-development.html |access-date=2024-05-28 |website=InfoWorld |language=en}}</ref><ref>{{Cite web |date=2024-02-20 |title=Should Julia use MLIR in the future? |url=https://discourse.julialang.org/t/should-julia-use-mlir-in-the-future/110459 |access-date=2024-05-28 |website=Julia Programming Language |language=en}}</ref> MLIR is a newer compiler framework that allows Mojo to take advantage of higher level compiler passes not available in LLVM alone and allows Mojo to compile down and target more than just CPUs, including producing code that can run on GPUs, TPUs, ASICs and other accelerators. It can also often more effectively use certain types of CPU optimizations directly, like [[Single instruction, multiple data|SIMD]] without direct intervention by the developer like in many other languages.<ref>{{Cite web |title=Why Mojo🔥 {{!}} Modular Docs |url=https://docs.modular.com/mojo/why-mojo |access-date=2024-05-28 |website=docs.modular.com |language=en}}</ref><ref>https://llvm.org/devmtg/2023-10/slides/keynote/Mojo.pdf</ref> According to [[Jeremy Howard (entrepreneur)|Jeremy Howard]] of fast.ai, Mojo can be seen as "syntax sugar for MLIR" and for that reason Mojo is well optimized for applications like AI.<ref>{{Cite web |last=Howard |first=Jeremy |date=2023-05-04 |title=fast.ai - Mojo may be the biggest programming language advance in decades |url=https://www.fast.ai/posts/2023-05-03-mojo-launch.html?ref=blef.fr |access-date=2024-05-28 |website=fast.ai |language=en}}</ref>
 
== Origin and Developmentdevelopment Historyhistory ==
The Mojo programming language was created by Modular Inc, which was founded by [[Chris Lattner]], the original [[Software architect|architect]] of the [[Swift (programming language)|Swift]] programming language and [[LLVM]], and Tim Davis, a former [[Google]] employee.<ref name="claburn2023">{{cite web |url=https://www.theregister.com/2023/05/05/modular_struts_its_mojo_a/ |title=Modular finds its Mojo, a Python superset with C-level speed |first=Thomas |last=Claburn |date=2023-05-05 |accessdate=2023-08-08 |work=The Register }}</ref> Intention behind Mojo is to bridge the gap between [[Python (programming language)|Python]]’s ease of use and the fast performance required for cutting-edge AI applications.<ref>https://venturebeat.com/ai/mojo-rising-the-resurgence-of-ai-first-programming-languages/</ref>