Ich hab mir in der Adventszeit mit meinen Kollegen Gedanken darüber gemacht, wie wir Linux-Befehle für unsere Schülerinnen und Schüler besser zugänglich machen. Die Lebenswelt unserer Lernenden fordert an dieser Stelle häufig … Videos. Das ist aber so überhaupt nicht meine Art der Unterrichtsgestaltung. Ich hab zwar schon das ein oder andere Video erstellt, aber das skaliert nicht im Alltag für dutzende Themen.
Dabei fiel mir ein, dass ich schon vor drei Jahren mit asciinema experimentiert hatte. Allerdings ist das damals für mich eingeschlafen. Nun nahm ich gestern einen neuen Anlauf und hab drei Bash-Sessions aufgenommen. Das ist relativ einfach. Allerdings vertippte ich mich häufig bei der Eingabe und musste die Befehls-Sequenzen wiederholt aufnehmen. Und mit dem Endergebnis war ich immer noch nicht zufrieden.
Das war etwas frustrierend und ich dachte mir … das kann ich doch mit einem kleinen Bash-Skript lösen. Die Umsetzung und das Ergebnis beschreibe ich im folgenden Beitrag.
/ _` / __|/ __| | | '_ \ / _ \ '_ ` _ \ / _` |
| (_| \__ \ (__| | | | | | __/ | | | | | (_| |
\__,_|___/\___|_|_|_| |_|\___|_| |_| |_|\__,_|asciinema is a suite of tools for recording, streaming, and sharing terminal sessions. It is free and open-source software (FOSS), created by Marcin Kulik.
Its typical use cases include creating tutorials, demonstrating command-line tools, live coding, and sharing reproducible bug reports. It focuses on simplicity and interoperability, which makes it a popular choice among computer users working with the command-line, such as developers or system administrators.
__ _ ___ ___(_|_)_ __ ___ _ __ ___ __ _
/ _` / __|/ __| | | '_ \ / _ \ '_ ` _ \ / _` |
| (_| \__ \ (__| | | | | | __/ | | | | | (_| |
\__,_|___/\___|_|_|_| |_|\___|_| |_| |_|\__,_|cljfmt is a tool for detecting and fixing formatting errors in Clojure code.
Its defaults are based on the Clojure Style Guide, but it also has many customization options to suit a particular project or team.
It is not the goal of the project to provide a one-to-one mapping between a Clojure syntax tree and formatted text; rather the intent is to correct formatting errors with minimal changes to the existing structure of the text.
If you want format completely unstructured Clojure code, the zprint project may be more suitable.
A small library for explicit, intentful configuration.
- [[aero/aero "1.1.6"] - Clojars](https:// .org/aero)
Avoid switching between Clojure and bash scripts. Enjoy your parens on the command line.
The Cangjie programming language is a new-generation programming language oriented to full-scenario intelligence. It features native intelligence, being naturally suitable for all scenarios, high performance and strong security. It is mainly applied in scenarios such as native applications and service applications of HarmonyOS NEXT, providing developers with a good programming experience.
This topic documents the data format for Datomic datalog queries and rules. If you want to follow along at a REPL, most of the examples on this page work use the mbrainz-subset database and are in the Day of Datomic Cloud repository.
DF is a directed, labeled graph data format for representing information in the Web. This specification defines the syntax and semantics of the SPARQL query language for RDF. SPARQL can be used to express queries across diverse data sources, whether the data is stored natively as RDF or viewed as RDF via middleware. SPARQL contains capabilities for querying required and optional graph patterns along with their conjunctions and disjunctions. SPARQL also supports aggregation, subqueries, negation, creating values by expressions, extensible value testing, and constraining queries by source RDF graph. The results of SPARQL queries can be result sets or RDF graphs.

Getting started
The spec library (API docs) specifies the structure of data, validates or conforms it, and can generate data based on the spec.
Clojure is a dynamic language. Among other things this means that type annotations are not required for code to run. While Clojure has some support for type hints, they are not an enforcement mechanism, nor comprehensive, and are limited to communicating information to the compiler to aid in efficient code generation. Clojure gets runtime checking of a richer set of types by the JVM itself.
However it has always been a guiding principle of Clojure, widely valued and practiced by the community, to simply represent information as data. Thus important properties of Clojure systems are represented and conveyed by the shape and other predicative properties of the data, not captured or checked anywhere since the runtime types are indistinguishable heterogeneous maps and vectors.
Documentation strings can be used to communicate with human consumers, but they can’t be leveraged by programs or tests, i.e. they have minimal power. Users have turned to various libraries such as Schema and Herbert to get more powerful specifications.
This docs/ directory is the documentation “source of truth” that lives alongside the code and evolves with it.
- Start with SUMMARY.md as the navigation spine.
- Add pages incrementally; the structure is designed to work well with future tooling (mdBook, Zola, Docusaurus, etc.).
Fluree Server wraps the fluree/db library with an HTTP API server and consensus capabilities. While fluree/db can be used directly in applications for embedded database functionality, Fluree Server provides the infrastructure needed for multi-client environments requiring consistent transaction ordering, ledger state management, and distributed consensus.
The server can run as either a consensus-participating node for transaction processing or as a query-only node for horizontal scaling. Multiple servers can form a cluster for fault tolerance and performance.
Key Features:
- High Availability: Automatic failover and work redistribution when servers join or leave
- Guaranteed Ordering: Consistent transaction processing across all nodes
- Horizontal Scaling: Add query-only nodes for read performance
- Load Distribution: Automatic workload balancing across consensus nodes
- Duplicate Prevention: Built-in transaction deduplication
A graph database built for data that matters. Temporal, verifiable, standards-compliant.
Fluree stores data as RDF triples with complete history, integrated search, and fine-grained access control — in a single binary with no external dependencies.
Billions of triples on commodity hardware. Over 2M triples/second bulk import. Benchmark leader across 105 W3C SPARQL queries.
An addr-spec is a specific Internet identifier that contains a
locally interpreted string followed by the at-sign character ("@",
ASCII value 64) followed by an Internet domain. The locally
interpreted string is either a quoted-string or a dot-atom. If the
string can be represented as a dot-atom (that is, it contains no
characters other than atext characters or "." surrounded by atext
characters), then the dot-atom form SHOULD be used and the quoted-
string form SHOULD NOT be used. Comments and folding white space
SHOULD NOT be used around the "@" in the addr-spec.
CLJ Commons is a community-led project to build up the supporting infrastructure around Clojure to make it a better experience for people new to Clojure, as well as existing Clojurists.
Calva is an integrated, REPL powered, development environment for enjoyable and productive Clojure and ClojureScript programming in Visual Studio Code. It is feature rich and turnkey. A lot of effort has been put into making Calva a good choice if you are new to Clojure. Calva is open source and free to use.

Builds are programs. Let's start treating them that way.
Most build tools are declarative, and for a long time they worked well for us. The problem is that the increasing number of platform, framework, and library combinations have made it impossible for these tools to be both declarative and comprehensive. Instead of a special-purpose DSL, Boot supplies abstractions and libraries you can use to automate nearly any build scenario with the full power of the Clojure language. It's not a build tool - it's build tooling.

Leiningen is the easiest way to use Clojure. With a focus on project automation and declarative configuration, it gets out of your way and lets you focus on your code.
Install Leiningen with your package manager; for example sudo apt install leiningen

![]()
Clojure is a robust, practical, and fast programming language with a set of useful features that together form a simple, coherent, and powerful tool.