SUPPORT THE WORK

GetWiki

Clojure

ARTICLE SUBJECTS
aesthetics  →
being  →
complexity  →
database  →
enterprise  →
ethics  →
fiction  →
history  →
internet  →
knowledge  →
language  →
licensing  →
linux  →
logic  →
method  →
news  →
perception  →
philosophy  →
policy  →
purpose  →
religion  →
science  →
sociology  →
software  →
truth  →
unix  →
wiki  →
ARTICLE TYPES
essay  →
feed  →
help  →
system  →
wiki  →
ARTICLE ORIGINS
critical  →
discussion  →
forked  →
imported  →
original  →
Clojure
[ temporary import ]
please note:
- the content below is remote from Wikipedia
- it has been imported raw for GetWiki
{{Short description|Dialect of the Lisp programming language on the Java platform}}









|| 1.0| 1.1| 1.2| 1.3| 1.4| 1.5| 1.5.1| 1.6| 1.7| 1.8| 1.9| 1.10| 1.10.1| 1.10.2| 1.10.3| 1.11.0| 1.11.1
factoids
name Clojure| logo = Clojure logo.svg| logo size = 120px



Multi-paradigm programming language>multi-paradigm:{{flatlist|
  • concurrentWEB,weblink Concurrent Programming, Clojure.org, 2019-07-07, WEB,weblink core.async, Hickey, Rich, ((contributors)), GitHub, 2019-07-07,
  • functionalWEB,weblink Functional Programming, Clojure.org, 2019-07-07,
  • logicWEB,weblink core.logic, Nolen, David, Hickey, Rich, GitHub, 2019-07-07,
  • macroWEB,weblink Macros, Clojure.org, 2019-07-07,
  • pipelineWEB,weblink Threading Macros Guide, Esterhazy, Paulus, Clojure.org, 2019-07-07,
  • }}
    Lisp (programming language)>Lisp| designer = Rich Hickey {edih}Garbage collection (computer science)>Garbage collection via a host (Java Virtual Machine, Common Language Runtime>CLR, a JavaScript runtime such as V8 (JavaScript engine) in case of ClojureScript or BEAM (Erlang virtual machine)>BEAM (see below)| dialects = ClojureScript, ClojureDart
    • C
    • C++WEB,weblink Rich Hickey Q&A, Fogus, Michael, 2011, CodeQuarterly.com,weblink" title="web.archive.org/web/20170111184835weblink">weblink 2017-01-11,
    • Common Lisp
    • Erlang
    • HaskellWEB,weblink Simple Made Easy, Hickey, Rich, 2011, YouTube, In one of the slides, Hickey compares Clojure protocols to Haskell typeclasses. Mirror URL:weblink
    • Java
    • ML
    • Prolog
    • RacketTHESIS, Bonnaire-Sergeant, Ambrose, A Practical Optional Type System for Clojure, The University of Western Australia, 2012,
    • RubyWEB,weblink Clojure Programming, OReilly.com, 2013-04-30,
    • Scheme
    • Wolfram LanguageWEB,weblink Clojure Bookshelf, Amazon.com, Hickey, Rich,weblink 2017-10-03, 2019-07-07,
    }}
    • Elixir
    • Hy
    • JanetWEB,weblink Janet Language, Rose, Calvin, ((contributors)), Janet-Lang.org, 2023-02-18,
    • LFE
    • PixieWEB,weblink Pixie, Baldridge, Timothy, PixieLang.org, 2019-07-07,
    • RhineWEB,weblink Rhine, Ramachandra, Ramkumar, GitHub, 2019-07-07,
    }}
    }}Eclipse Public License>Eclipse Publicweblink}}
    • .clj
    • .cljs
    • .cljr
    • .cljc
    • .cljd
    • .edn
    }}| wikibooks = Clojure Programming}}Clojure ({{IPAc-en|ˈ|k|l|oʊ|ʒ|ər}}, like closure)WEB,weblink The A-Z of Programming Languages: Clojure, Edwards, Kathryn, 2009-08-10, Computerworld.com.au,weblink 2019-08-26, WEB,weblink meaning and pronunciation of Clojure, Hickey, Rich, 2009-01-05, Google.com, is a dynamic and functional dialect of the Lisp programming language on the Java platform.WEB,weblink Clojure inventor Hickey now aims for Android, Krill, Paul, 2012-03-22, InfoWorld.com, WEB,weblink Clojure, Clojure.org, 2019-07-07, Like most other Lisps, Clojure's syntax is built on S-expressions that are first parsed into data structures by a reader before being compiled.WEB,weblink The Reader, Clojure.org, 2019-07-07, Clojure's reader supports literal syntax for maps, sets and vectors along with lists, and these are compiled to the mentioned structures directly. Clojure treats code as data and has a Lisp macro system.WEB,weblink Differences with other Lisps, Clojure.org, 2019-07-07, Clojure is a Lisp-1 and is not intended to be code-compatible with other dialects of Lisp, since it uses its own set of data structures incompatible with other Lisps. Clojure advocates immutability and immutable data structures and encourages programmers to be explicit about managing identity and its states.WEB,weblink Values and Change: Clojure's approach to Identity and State, Clojure.org, 2019-07-07, This focus on programming with immutable values and explicit progression-of-time constructs is intended to facilitate developing more robust, especially concurrent, programs that are simple and fast.WEB,weblink Rationale, Hickey, Rich, Clojure.org, 2019-07-07, WEB,weblink Expert to Expert: Rich Hickey and Brian Beckman – Inside Clojure, Torre, Charles, 2009-10-06, MSDN.com, While its type system is entirely dynamic, recent efforts have also sought the implementation of a dependent type system.WEB,weblink clojure/spec.alpha, 2017-04-26, GitHub, The language was created by Rich Hickey in the mid-2000s, originally for the Java platform; the language has since been ported to other platforms, such as the Common Language Runtime (.NET). Hickey continues to lead development of the language as its benevolent dictator for life.

    History

    (File:Rich Hickey.jpg|thumb|Rich Hickey, creator of Clojure)Rich Hickey is the creator of the Clojure language. Before Clojure, he developed dotLisp, a similar project based on the .NET platform,WEB,weblink [ANN] dotLisp: A Lisp dialect for .Net, Hickey, Rich, 2002-10-16, Google.com, and three earlier attempts to provide interoperability between Lisp and Java: a Java foreign language interface for Common Lisp (jfli),WEB,weblink jfli, Hickey, Rich, 2013-04-15, SourceForge.net, A Foreign Object Interface for Lisp (FOIL),WEB,weblink foil: Foreign Object Interface for Lisp, Hickey, Rich, 2013-04-03, SourceForge.net, and a Lisp-friendly interface to Java Servlets (Lisplets).WEB,weblink Lisplets, Hickey, Rich, 2013-03-07, SourceForge.net, Hickey spent about two and a half years working on Clojure before releasing it publicly in October 2007,JOURNAL, Hickey, Rich, 2020-06-12, A history of Clojure, Proceedings of the ACM on Programming Languages, 4, HOPL, 1–46, 10.1145/3386321, 219603760, free, much of that time working exclusively on Clojure with no outside funding. At the end of this time, Hickey sent an email announcing the language to some friends in the Common Lisp community.Clojure's name, according to Hickey, is a word play on the programming concept "closure" incorporating the letters C, L, and J for C#, Lisp, and Java respectively—three languages which had a major influence on Clojure's design.

    Design

    Rich Hickey developed Clojure because he wanted a modern Lisp for functional programming, symbiotic with the established Java platform, and designed for concurrency.WEB,weblink LinuxJournal.com, Economy Size Geek – Interview with Rich Hickey, Creator of Clojure, Elmendorf, Dirk, 2010-04-01, He has also stressed the importance of simplicity in programming language design and software architecture, advocating for loose coupling, polymorphism via protocols and type classes instead of inheritance, stateless functions that are namespaced instead of methods or replacing syntax with data.WEB, Simple Made Easy,weblink 2024-05-02, InfoQ, en, WEB, (iterate think thoughts): Advantages of Data Oriented Programming,weblink 2024-05-02, yogthos.net, WEB, talk-transcripts/Hickey_Rich/EffectivePrograms.md at master · matthiasn/talk-transcripts,weblink 2024-05-02, GitHub, en, Clojure's approach to state is characterized by the concept of identities, which are represented as a series of immutable states over time. Since states are immutable values, any number of workers can operate on them in parallel, and concurrency becomes a question of managing changes from one state to another. For this purpose, Clojure provides several mutable reference types, each having well-defined semantics for the transition between states.Clojure runs on the Java platform and as a result, integrates with Java and fully supports calling Java code from Clojure,WEB,weblink Clojure.org, Hosted on the JVM, 2019-07-07, and Clojure code can be called from Java, too.WEB,weblink Java Interop, Clojure.org, 2019-07-07, The community uses tools such as Clojure command-line interface (CLI) or Leiningen for project automation, providing support for Maven integration. These tools handle project package management and dependencies and are configured using Clojure syntax.As a Lisp dialect, Clojure supports functions as first-class objects, a read–eval–print loop (REPL), and a macro system. Clojure's Lisp macro system is very similar to that of Common Lisp with the exception that Clojure's version of the backquote (termed "syntax quote") qualifies symbols with their namespace. This helps prevent unintended name capture, as binding to namespace-qualified names is forbidden. It is possible to force a capturing macro expansion, but it must be done explicitly. Clojure does not allow user-defined reader macros, but the reader supports a more constrained form of syntactic extension.WEB,weblink GitHub, edn, Hickey, Rich, 2019-07-07, Clojure supports multimethodsWEB,weblink Clojure.org, Multimethods and Hierarchies, 2019-07-07, and for interface-like abstractions has a protocolWEB,weblink Clojure.org, Protocols, 2019-07-07, based polymorphism and data type system using records,WEB,weblink Clojure.org, Datatypes: deftype, defrecord and reify, 2019-07-07, providing high-performance and dynamic polymorphism designed to avoid the expression problem.Clojure has support for lazy sequences and encourages the principle of immutability and persistent data structures. As a functional language, emphasis is placed on recursion and higher-order functions instead of side-effect-based looping. Automatic tail call optimization is not supported as the JVM does not support it natively;WEB,weblink Stewardship: the Sobering Parts, YouTube.com, Goetz, Brian, 2014-11-20, WEB,weblink Oracle.com, tail calls in the VM, Rose, John, 2007-07-12, WEB,weblink Java.net, Some languages need to be able to perform tail calls, Rose, John, 2009-02-11, it is possible to do so explicitly by using the recur keyword.WEB,weblink Clojure.org, Special Forms, 2019-07-07, For parallel and concurrent programming Clojure provides software transactional memory,WEB,weblink Clojure.org, Refs and Transactions, 2019-07-07, a reactive agent system, and channel-based concurrent programming.WEB,weblink Clojure.org, Clojure core.async Channels, Hickey, Rich, 2013-06-28, Clojure 1.7 introduced reader conditionals by allowing the embedding of Clojure, ClojureScript and ClojureCLR code in the same namespace. Transducers were added as a method for composing transformations. Transducers enable higher-order functions such as map and fold to generalize over any source of input data. While traditionally these functions operate on sequences, transducers allow them to work on channels and let the user define their own models for transduction.WEB,weblink YouTube.com, Transducers, Hickey, Rich, 2014-09-17, WEB,weblink Cognitect.com, Transducers are Coming, Hickey, Rich, 2014-08-06, WEB,weblink YouTube.com, Inside Transducers, Hickey, Rich, 2014-11-20,

    Extensible Data Notation

    Extensible Data Notation, or edn,WEB,weblink edn-format.org, Official EDN Spec, 2022-04-27, is a subset of the Clojure language intended as a data transfer format. It can be used to serialize and deserialize Clojure data structures, and Clojure itself uses a superset of edn to represent programs.edn is used in a similar way to JSON or XML, but has a relatively large list of built-in elements, shown here with examples:
    • booleans: true, false
    • strings: "foo bar"
    • characters: c, tab
    • symbols: name
    • keywords: :key
    • integers: 123
    • floating point numbers: 3.14
    • lists: (a b 42)
    • vectors: [a b 42]
    • maps: {:a 1, "foo" :bar, [1 2 3] four}
    • sets: {a b [1 2 3]}
    • nil: nil (a null-like value)
    In addition to those elements, it supports extensibility through the use of tags, which consist of the character # followed by a symbol. When encountering a tag, the reader passes the value of the next element to the corresponding handler, which returns a data value. For example, this could be a tagged element: #myapp/Person {:first "Fred" :last "Mertz"}, whose interpretation will depend on the appropriate handler of the reader.This definition of extension elements in terms of the others avoids relying on either convention or context to convey elements not included in the base set.

    Alternative platforms

    The primary platform of Clojure is Java, but other target implementations exist. The most notable of these is ClojureScript,WEB,weblink ClojureScript.org, ClojureScript, 2019-07-06, which compiles to ECMAScript 3,WEB,weblink ClojureScript.org, ClojureScript – FAQ (for JavaScript developers), 2018-02-04, and ClojureCLR,WEB,weblink ClojureCLR, GitHub, 2012-06-28, a full port on the .NET platform, interoperable with its ecosystem.Other implementations of Clojure on different platforms include:
    • Babashka,WEB,weblink Babashka, Borkent, Michiel, Babashka.org, 2019-08-19, Native Clojure scripting language leveraging GraalVM native image and Small Clojure Interpreter
    • CljPerl,WEB,weblink A Lisp on Perl, Hu, Wei, MetaCPAN.org, 2019-07-06, Clojure on Perl
    • ClojureDart,{{Citation |title=What is ClojureDart? |date=2022-12-16 |url=https://github.com/Tensegritics/ClojureDart |website=GitHub |publisher=Tensegritics |access-date=2022-12-16}} Extend Clojure's reach to mobile & desktop apps by porting Clojure to Dart and Flutter
    • Clojerl,WEB,weblink GitHub, Clojerl, Facorro, Juan, 2019-07-06, Clojure on BEAM, the Erlang virtual machine
    • basilisp,WEB,weblink GitHub, basilisp, 2024-05-13, A Clojure-compatible(-ish) Lisp dialect targeting Python 3.8+
    • ClojureRS,WEB,weblink ClojureRS, GitHub, 2022-03-17, Clojure on Rust
    • Ferret,WEB,weblink Ferret, Akkaya, Nurullah, Ferret-Lang.org, 2019-07-06, compiles to self-contained C++11 that can run on microcontrollers
    • jank,WEB,weblink jank, Wilkerson, Jeaye, Jank-Lang.org, 2022-08-17, Native Clojure hosted in C++ on an LLVM-based JIT
    • Joker,WEB,weblink Joker, Bataev, Roman, Joker-Lang.org, 2019-07-06, an interpreter and linter written in Go
    • Las3r,WEB,weblink Laz3r, Cannon, Aemon, GitHub, 2019-07-06, a subset of Clojure that runs on the ActionScript Virtual Machine (the Adobe Flash Player platform)
    • Pixie,WEB,weblink Pixie, Baldridge, Timothy, PixieLang.org, 2019-07-06, Clojure-inspired Lisp dialect written in RPython
    • Rouge,WEB,weblink Rouge, Connor, Ashe, GitHub, 2019-07-06, Clojure on YARV in Ruby

    Tools

    Tooling for Clojure development has seen significant improvement over the years. The following is a list of some popular IDEs and text editors with plug-ins that add support for programming in Clojure:WEB,weblink Clojure.org, "State of Clojure 2019" Results, Miller, Alex, 2019-02-04,
    • Emacs, with CIDERWEB,weblink CIDER.mx, CIDER: The Clojure Interactive Development Environment that Rocks, Batsov, Bozhidar, ((contributors)), 2019-07-05,
    • IntelliJ IDEA, with CursiveWEB,weblink JetBrains.com, Cursive: Provides full Clojure and ClojureScript language support, Fleming, Colin, 2019-07-05, (a free license is available for non-commercial use)
    • Sublime Text, with Clojure Sublimed,WEB,weblink PackageControl.io, Clojure Sublimed, Prokopov, Nikita, 2023-02-18, or Tutkain,WEB,weblink FlowThing.me, Tutkain, Helenius, Eero, 2023-02-18,
    • Vim, with fireplace.vim,WEB,weblink VIM.org, fireplace.vim: Clojure REPL Support, Pope, Tim, 2019-07-05, WEB,weblink JUXT.pro, Clojure and Vim: An overview – It's very possible, Monroe, Dominic, 2016-12-13, vim-elin,WEB, Masashi, Iizuka, 2024-04-29, vim-elin: A Clojure development environment for Vim/Neovim, primarily written in Babashka.,weblink live,weblink 2024-05-02, 2024-05-02, GitHub, or Conjure (Neovim only)WEB,weblink GitHub, Neovim Clojure(Script) tooling over prepl, Caldwell, Oliver, 2019-11-09, WEB,weblink oli.me.uk, Getting started with Clojure, Neovim and Conjure in minutes, Caldwell, Oliver, 2019-11-06,
    • Visual Studio Code, with CalvaWEB,weblink VisualStudio.com, Calva: Clojure & ClojureScript Interactive Programming, Strömberg, Peter, 2019-07-05, or CloverWEB,weblink Clover, Szabo, Maurício, VisualStudio.com, 2021-01-28,
    • IDE-agnostic (using the Language Server Protocol for static analysis and/or linting): clj-kondo{{Citation |title=clj-kondo/clj-kondo |date=2024-04-30 |url=https://github.com/clj-kondo/clj-kondo |access-date=2024-05-02 |publisher=clj-kondo}} or clojure-lspWEB, Overview - Clojure LSP,weblink 2024-05-02, clojure-lsp.io,
    In addition to the tools provided by the community, the official Clojure command-line interface (CLI) toolsWEB,weblink Deps and CLI Guide, Miller, Alex, Clojure.org, 2019-07-08, have also become available on Linux, macOS, and Windows since Clojure 1.9.WEB,weblink Clojure 1.9, Miller, Alex, Cognitect.com, 2017-12-08,

    Development

    The development process is restricted to the Clojure core team, though issues are publicly visible at the Clojure JIRA project page.WEB,weblink Atlassian.net, Clojure, 2019-07-07, Anyone can ask questions or submit issues and ideas at ask.clojure.org.WEB,weblink Clojure Forum, 2020-03-20, clojure.org, If it's determined that a new issue warrants a JIRA ticket, a core team member will triage it and add it. JIRA issues are processed by a team of screeners and finally approved by Rich Hickey.WEB,weblink Open Source is Not About You, Hickey, Rich, 2018-11-26, GitHub, WEB,weblink Workflow, Clojure.org, 2019-07-07,

    Impact

    With continued interest in functional programming, Clojure's adoption by software developers using the Java platform has continued to increase. The language has also been recommended by software developers such as Brian Goetz,WEB,weblink Twitch.tv, Brian Goetz' favorite non-Java JVM language (Part 1 of 3), Goetz, Brian, 2020-05-24, WEB,weblink Twitch.tv, Brian Goetz' favorite non-Java JVM language (Part 2 of 3), Goetz, Brian, 2020-05-24, WEB,weblink Twitch.tv, Brian Goetz' favorite non-Java JVM language (Part 3 of 3), Goetz, Brian, 2020-05-24, Eric Evans,WEB,weblink YouTube.com, Modelling Time: Eric Evans: Domain-Driven Design Europe 2018, Evans, Eric, 2018-08-14, WEB,weblink Twitter.com, Eric Evans on Twitter, Evans, Eric, 2014-11-21, James Gosling,WEB,weblink YouTube.com, James Gosling meetup with London Java Community, 2016-10-11, Paul Graham,WEB,weblink Twitter.com, Paul Graham on Twitter, Graham, Paul, 2016-05-06, and Robert C. Martin.WEB,weblink CleanCoder.com, Why Clojure?, Martin, Robert, 2019-08-22, WEB,weblink Twitter.com, Unble Bob Martin on Twitter, Martin, Robert, 2018-11-29, WEB,weblink CleanCoders.com, Introduction To Functional Programming, Martin, Robert, 2018-08-01, WEB,weblink CleanCoder.com, Pragmatic Functional Programming, Martin, Robert, 2017-07-11, ThoughtWorks, while assessing functional programming languages for their Technology Radar,WEB,weblink Technology Radar: Frequently Asked Questions, ThoughtWorks.com, 2019-02-10, described Clojure as "a simple, elegant implementation of Lisp on the JVM" in 2010 and promoted its status to "ADOPT" in 2012.WEB,weblink Technology Radar: Clojure, ThoughtWorks.com, 2019-02-10, In the "JVM Ecosystem Report 2018" (which was claimed to be "the largest survey ever of Java developers"), that was prepared in collaboration by Snyk and Java Magazine, ranked Clojure as the 2nd most used programming language on the JVM for "main applications".WEB,weblink Snyk.io, JVM Ecosystem Report 2018, Maple, Simon, Binstock, Andrew, 2018-10-17, Clojure is used in industry by firmsWEB,weblink Clojure.org, Success Stories, 2018-10-27, such as Apple,WEB,weblink Twitter.com, Roman Liutikov on Twitter, Liutikov, Roman, 2017-12-17, WEB,weblink Apple.com, Jobs at Apple, 2019-07-06, Atlassian,WEB,weblink YouTube.com, Realtime Collaboration with Clojure, Borges, Leonardo, 2015-07-07, Funding Circle,WEB,weblink JUXT.pro, Clojure in London: Funding Circle – Lending some Clojure, Pither, Jon, 2016-10-04, Netflix,WEB,weblink TheNewStack.io, The New Stack Makers: Adrian Cockcroft on Sun, Netflix, Clojure, Go, Docker and More, Williams, Alex, 2014-08-03, Nubank,WEB,weblink Nubank adquire empresa norte-americana de tecnologia Cognitect, 23 July 2020, Puppet,WEB,weblink Puppet.com, A New Era of Application Services at Puppet Labs, Price, Chris, 2014-04-11, 2020-08-06, and WalmartWEB,weblink Cognitect.com, Walmart Runs Clojure at Scale, Phillips, Marc, 2015-07-14, as well as government agencies such as NASA.WEB,weblink GitHub, Common-Metadata-Repository, 2019-07-06, It has also been used for creative computing, including visual art, music, games, and poetry.WEB,weblink OReilly.com, Creative computing with Clojure, Meier, Carin, 2015-05-06, In the 2023 edition of Stack Overflow Developer Survey, Clojure was the fourth most admired in the category of programming and scripting languages, with 68.51% of the respondents who have worked with it last year saying they would like to continue using it. In the desired category, however it was marked as such by only 2.2% of the surveyed, whereas the highest scoring JavaScript was desired by 40.15% of the developers participating in the survey.WEB, Stack Overflow Developer Survey 2023,weblink 2024-05-02, Stack Overflow, en, It could possibly be attributed to limited professional opportunities for Clojure developers with just over 50 search results for "Clojure developer" at the U.S. section of Indeed, as of May 2024.WEB, 2024-05-02, "Clojure developer" search results at Indeed.com [Archived due to the mutability of the source],weblink 2024-05-02, Archive.is,

    Release history

    {| class="wikitable"! Version! Release date! Major features, improvements
    WEBSITE=BLOGSPOT.COM LAST=HICKEY DATE=2009-05-04, | First stable release
    WEBSITE=BLOGSPOT.COM LAST=HICKEY DATE=2009-12-31, | Futures
    WEBSITE=GOOGLE.COM LAST=HICKEY DATE=2010-08-19, | Protocols
    WEBSITE=GOOGLE.COM LAST=REDINGER DATE=2011-09-23, | Enhanced primitive support
    WEBSITE=GOOGLE.COM LAST=DIPERT DATE=2012-04-17, | Reader literals
    WEBSITE=GOOGLE.COM LAST=HALLOWAY DATE=2013-03-01, | Reducers
    WEBSITE=GOOGLE.COM LAST=HALLOWAY DATE=2013-03-10, | Fixing a memory leak
    WEBSITE=GOOGLE.COM LAST=MILLER DATE=2014-03-25, |Java API, improved hashing algorithms
    WEBSITE=CLOJURE.ORG LAST=MILLER DATE=2015-06-30, | Transducers, reader conditionals
    WEBSITE=CLOJURE.ORG LAST=MILLER DATE=2016-01-19, | Additional string functions, direct linking, socket server
    WEBSITE=CLOJURE.ORG LAST=MILLER DATE=2017-12-08, | Integration with spec, command-line tools
    WEBSITE=CLOJURE.ORG LAST=MILLER DATE=2018-12-17, | Improved error reporting, Java compatibility
    WEBSITE=CLOJURE.ORG LAST=MILLER DATE=2019-06-06, | Working around a Java performance regression and improving error reporting from clojure.main
    WEBSITE=CLOJURE.ORG LAST=MILLER DATE=2021-01-26, | Java interoperability/compatibility improvements and other important language fixes
    WEBSITE=CLOJURE.ORG LAST=MILLER DATE=2021-03-04, | prepl support for reader conditionals
    WEBSITE=CLOJURE.ORG LAST=MILLER DATE=2022-03-22, | New syntax for keyword argument invocation, new clojure.math namespace, namespace aliasing without loading, and new helper functions added to clojure.core
    WEBSITE=CLOJURE.ORG LAST=MILLER DATE=2022-04-05, | Rolling back unintended change in binary serialisation of objects of types clojure.lang.Keyword and clojure.lang.ArraySeq.
    c |1.11.2}}WEBSITE=CLOJURE.ORG LAST=MILLER DATE=2024-03-08, | Fix for CVE-2024-22871 Denial of Service vulnerability
    {{Versionshow=000100}}

    See also

    References

    {{Reflist|2}}

    Further reading

    External links

    • {{Official website}}
    {{Lisp programming language}}{{Lisp}}{{Java (software platform)}}{{Authority control}}

    - content above as imported from Wikipedia
    - "Clojure" does not exist on GetWiki (yet)
    - time: 7:14am EDT - Sat, May 18 2024
    [ this remote article is provided by Wikipedia ]
    LATEST EDITS [ see all ]
    GETWIKI 23 MAY 2022
    GETWIKI 09 JUL 2019
    Eastern Philosophy
    History of Philosophy
    GETWIKI 09 MAY 2016
    GETWIKI 18 OCT 2015
    M.R.M. Parrott
    Biographies
    GETWIKI 20 AUG 2014
    CONNECT