{
    "api": "YAML JSON TOON Database",
    "version": "1.0.0",
    "format": "json",
    "category": {
        "id": 333,
        "slug": "programming-languages",
        "name": "Programming Languages",
        "description": "Syntax, features, and comparisons of major programming languages.",
        "icon": "code",
        "created_at": 1783090350,
        "dataset_count": 12,
        "topic": {
            "overview": "Programming-language reference data compares languages by the ideas they are built on and the features they added: paradigms and typing disciplines, the concurrency models of Go and Rust, the modern features of C++, C#, JavaScript, Swift and TypeScript, the built-in vocabulary of Python and the metaprogramming of Ruby. Features are tied to versions, since most languages evolve continuously, and a feature that is idiomatic in one language can be unavailable or discouraged in another. A question about a language should always carry a version, because the answer for Python 2 and Python 3 or for ES5 and ES2024 differs.",
            "key_ideas": [
                {
                    "term": "Paradigm",
                    "meaning": "A style of structuring programs, such as procedural, object-oriented, functional or declarative. Most languages are multi-paradigm."
                },
                {
                    "term": "Static vs dynamic typing",
                    "meaning": "Static typing checks types before running, dynamic typing checks them at runtime. Gradual typing, as in TypeScript, adds static checks to a dynamic base."
                },
                {
                    "term": "Memory management",
                    "meaning": "How a language reclaims memory: manual, garbage collection, reference counting or ownership rules such as Rust's."
                },
                {
                    "term": "Concurrency model",
                    "meaning": "How a language handles simultaneous work: threads and locks, async\/await, goroutines and channels or actors."
                },
                {
                    "term": "Compiled vs interpreted",
                    "meaning": "Whether code is translated ahead of time to machine code, run by a virtual machine or interpreted directly. Many languages do a mix."
                },
                {
                    "term": "Language version",
                    "meaning": "A specific release, such as C++20 or ES2022. Feature availability and standard-library behavior are version-specific."
                },
                {
                    "term": "Standard library",
                    "meaning": "The functions and types that ship with a language, which shape what idiomatic code looks like."
                }
            ],
            "pitfalls": [
                "Quoting a feature without its version, so users try it on a runtime that lacks it.",
                "Comparing languages by a single benchmark or popularity ranking; fit depends on the problem and the team.",
                "Equating typing discipline with safety: static typing catches some errors and memory-safe languages prevent others, but neither guarantees correctness.",
                "Copying idioms between languages (for example exceptions in Go style or global state in Rust) without adapting them."
            ],
            "agent_tips": [
                "State the language version and runtime when giving code or recommending a feature.",
                "Prefer the language's own standard idiom and cite the official documentation when unsure.",
                "Run or reason through the code before presenting it; small syntax errors are common in generated snippets."
            ],
            "start_with": [
                "language-comparison-2026",
                "python-builtins"
            ]
        }
    },
    "datasets": [
        {
            "id": 2361,
            "slug": "csharp-dotnet-features",
            "title": "C# and .NET Modern Features",
            "description": "Modern C# features (C# 8-12) and .NET capabilities: nullable reference types, records, pattern matching, LINQ, async streams, minimal APIs.",
            "tags": "csharp,dotnet,nullable-reference-types,records,pattern-matching,linq,async-streams",
            "view_count": 52,
            "created_at": 1778695229,
            "entry_count": 8,
            "summary": "Modern C# and .NET features with version, description, example and notes: nullable reference types, records, pattern matching, LINQ, async streams, minimal APIs, primary constructors and source generators."
        },
        {
            "id": 2367,
            "slug": "date-time-interchange",
            "title": "Date and Time Interchange Patterns",
            "description": "Representing instants, civil dates, time zones, recurring schedules, and intervals without hidden assumptions.",
            "tags": "programming-languages,date time interchange,reference,engineering",
            "view_count": 44,
            "created_at": 1791798640,
            "entry_count": 10,
            "summary": "Representing instants, civil dates, time zones, recurring schedules, and intervals without hidden assumptions. Each row includes a practical application and a failure to check before using it."
        },
        {
            "id": 2390,
            "slug": "go-concurrency-patterns",
            "title": "Go Concurrency Patterns",
            "description": "Goroutines, channels, select, sync primitives, and common concurrency patterns in Go.",
            "tags": "go,golang,concurrency,goroutines,channels",
            "view_count": 46,
            "created_at": 1777673262,
            "entry_count": 8,
            "summary": "Go's concurrency constructs and patterns: goroutines, channels, buffered channels, select, WaitGroup, mutexes, worker pools and the context package, each with its keyword, a description, an example and notes."
        },
        {
            "id": 2419,
            "slug": "javascript-es6-features",
            "title": "JavaScript ES6+ Features Reference",
            "description": "Key JavaScript features from ES6 through ES2022: arrow functions, template literals, destructuring, spread, async\/await, optional chaining, nullish coalescing, and top-level await.",
            "tags": "javascript,es6,web,reference",
            "view_count": 37,
            "created_at": 1777673262,
            "entry_count": 20,
            "summary": "JavaScript features introduced from ES2015 onward, each with the version and an example: arrow functions, template literals, destructuring, spread, async\/await, optional chaining, nullish coalescing and top-level await, plus classes, modules, promises, generators, maps and sets, BigInt, private fields and newer array methods."
        },
        {
            "id": 2355,
            "slug": "cpp-modern-features",
            "title": "Modern C++ Features (C++11 through C++23)",
            "description": "Modern C++ features from C++11 to C++23: smart pointers, move semantics, lambdas, concepts, ranges, coroutines, and modules.",
            "tags": "cpp,c++,modern-cpp,smart-pointers,lambdas,concepts,ranges,coroutines",
            "view_count": 39,
            "created_at": 1778695229,
            "entry_count": 12,
            "summary": "Features added to C++ from C++11 through C++23, including smart pointers, move semantics, lambdas, auto, constexpr, structured bindings, concepts, ranges, coroutines and modules, each with its standard version, a description and an example."
        },
        {
            "id": 2422,
            "slug": "language-comparison-2026",
            "title": "Popular Programming Languages Comparison",
            "description": "Comparison of popular programming languages with paradigm, typing, and use cases.",
            "tags": "programming,comparison,languages",
            "view_count": 38,
            "created_at": 1777673262,
            "entry_count": 18,
            "summary": "A comparison of programming languages by paradigm, typing, first release year and typical use cases, covering Python, Rust, TypeScript, Go, Zig and PHP, extended with Java, C, C++, C#, JavaScript, Kotlin, Swift, Ruby, Dart, Julia, R and Scala."
        },
        {
            "id": 2469,
            "slug": "python-builtins",
            "title": "Python Built-in Functions",
            "description": "Common Python built-in functions: map, filter, zip, enumerate, sorted, isinstance with descriptions, categories, and usage examples.",
            "tags": "python,reference,builtins",
            "view_count": 47,
            "created_at": 1777673262,
            "entry_count": 24,
            "summary": "Python built-in functions grouped by purpose, from map and filter to zip, enumerate, sorted and isinstance, with the common everyday builtins added: len, range, sum, min, max, any, all, abs, round, reversed, type, getattr, hasattr, iter, next and others."
        },
        {
            "id": 2475,
            "slug": "ruby-language-essentials",
            "title": "Ruby Language Essentials",
            "description": "Core Ruby programming concepts: blocks, procs, lambdas, metaprogramming, gems, Rails conventions, and Ruby idioms.",
            "tags": "ruby,rails,blocks,procs,lambdas,metaprogramming,gems,idioms",
            "view_count": 41,
            "created_at": 1778695229,
            "entry_count": 8,
            "summary": "Ruby's essential language concepts: blocks, procs, lambdas, metaprogramming, mixins, Enumerable, singleton methods and method_missing, each with type, syntax, a description and an example."
        },
        {
            "id": 2476,
            "slug": "rust-language-features",
            "title": "Rust Language Features",
            "description": "Core Rust programming language concepts: ownership, borrowing, lifetimes, traits, and concurrency.",
            "tags": "rust,systems,programming,memory-safety,concurrency",
            "view_count": 39,
            "created_at": 1777673262,
            "entry_count": 12,
            "summary": "Core features of Rust by category: ownership, borrowing and lifetimes for memory safety, traits for abstraction, pattern matching, fearless concurrency, Result-based error handling and zero-cost abstractions, with examples."
        },
        {
            "id": 2499,
            "slug": "swift-language-features",
            "title": "Swift Language Features",
            "description": "Swift programming language features: optionals, protocol-oriented programming, generics, async\/await, SwiftUI, and memory management (ARC).",
            "tags": "swift,ios,optionals,protocols,generics,async-await,swiftui,arc",
            "view_count": 39,
            "created_at": 1778695229,
            "entry_count": 8,
            "summary": "Swift language features with the version they arrived, a description, syntax and notes: optionals, protocol-oriented programming, generics, result builders, async\/await, actors, property wrappers and automatic reference counting."
        },
        {
            "id": 2509,
            "slug": "typescript-type-system",
            "title": "TypeScript Type System",
            "description": "TypeScript's static type system: types, interfaces, generics, utility types, and advanced type manipulation.",
            "tags": "typescript,types,static-typing,generics,interfaces",
            "view_count": 45,
            "created_at": 1777673262,
            "entry_count": 12,
            "summary": "The TypeScript type system's main concepts, from primitive types, interfaces and generics to union and intersection types, type guards, utility types, discriminated unions, mapped and conditional types and template literal types, each with a description and example."
        },
        {
            "id": 2510,
            "slug": "unicode-text-handling",
            "title": "Unicode Text Handling Reference",
            "description": "Text boundaries, normalization, case handling, and encoding decisions for multilingual applications.",
            "tags": "programming-languages,unicode text handling,reference,engineering",
            "view_count": 46,
            "created_at": 1791798640,
            "entry_count": 10,
            "summary": "Text boundaries, normalization, case handling, and encoding decisions for multilingual applications. Each row includes a practical application and a failure to check before using it."
        }
    ]
}