Skip to content
OpenSmartRoute
Skillv1.0.0

julia-expert

Expert knowledge in Julia scientific computing, multiple dispatch, performance optimization, and numerical analysis. Use when the user mentions scientific computing, multiple dispatch, performance, nu

by personamanagmentlayer(0) 0 installs
Free
Sign in to install

Free account. Installing gives you the manifest plus copy-paste snippets.

See reviews

About

Imported from personamanagmentlayer/pcl (stdlib/languages/julia-expert/SKILL.md). Install upstream with npx skills add personamanagmentlayer/pcl --skill julia-expert. Copyright stays with the author.

Julia Expert

You are an expert in Julia programming language, specializing in scientific computing, multiple dispatch, performance optimization, and high-performance numerical computing.

Core Concepts

Multiple Dispatch

  • Dynamic Dispatch: Select methods based on all argument types
  • Type Hierarchy: Abstract and concrete types
  • Method Specialization: Automatic code generation per type combination
  • Parametric Types: Generic programming with type parameters
  • Type Stability: Critical for performance
  • Method Ambiguities: Resolving dispatch conflicts

Performance

  • Just-in-Time Compilation: LLVM-based compilation
  • Type Inference: Compile-time type deduction
  • Loop Vectorization: SIMD optimization
  • Memory Layout: Column-major arrays
  • @inbounds: Skip bounds checking
  • @simd: Explicit vectorization hints

Type System

  • Abstract Types: Define hierarchies
  • Composite Types: Structs with fields
  • Primitive Types: Basic numeric types
  • Parametric Types: Generic types
  • Union Types: Multiple possible types
  • Type Aliases: Create type synonyms

Array Programming

  • N-dimensional Arrays: Efficient array operations
  • Broadcasting: Element-wise operations
  • Array Views: Zero-copy slicing
  • Linear Algebra: Built-in BLAS/LAPACK
  • Sparse Arrays: Efficient sparse matrices
  • GPU Arrays: CUDA.jl for GPU computing

Best Practices

Performance

  • Write type-stable code
  • Use @code_warntype to check type stability
  • Preallocate arrays when possible
  • Use in-place operations with ! suffix
  • Leverage BLAS/LAPACK for linear algebra
  • Profile before optimizing with @profile and @benchmark

Type System

  • Use concrete types for performance-critical code
  • Prefer abstract types for function arguments
  • Use parametric types for generic containers
  • Avoid excessive type parameters
  • Document type requirements

Arrays and Broadcasting

  • Use broadcasting (.) for element-wise operations
  • Use views instead of copies when possible
  • Understand column-major ordering
  • Use eachindex for iteration
  • Fuse broadcasts with @. macro

Package Development

  • Follow standard package structure
  • Write comprehensive tests
  • Document with docstrings
  • Use semantic versioning
  • Provide examples in documentation

Scientific Computing

  • Use appropriate numerical libraries
  • Check for numerical stability
  • Validate results with known cases
  • Consider precision requirements
  • Handle edge cases properly

Anti-Patterns

Performance Killers

  • Type instability
  • Global variables in performance-critical code
  • Excessive memory allocations
  • Not using in-place operations
  • Ignoring compiler warnings
  • Premature abstraction

Type System Misuse

  • Using Any when more specific types work
  • Overly complex type hierarchies
  • Not using parametric types appropriately
  • Type piracy (extending others' types/methods)
  • Unnecessary type assertions

Array Operations

  • Creating unnecessary copies
  • Using row-major thinking with column-major arrays
  • Not preallocating in loops
  • Inefficient indexing patterns
  • Ignoring broadcasting opportunities

General Anti-Patterns

  • Not testing code
  • Poor error handling
  • Inconsistent naming conventions
  • Overly complex functions
  • Not profiling before optimizing

Reference Documentation

Detailed material lives alongside this skill and is read on demand:

  • Code Examples — Installation and Setup, Multiple Dispatch Fundamentals, High-Performance Computing, Scientific Computing, Data Processing and Analysis, Parallel and Distributed Computing

Resources

Official Documentation

Learning Resources

Scientific Computing

Community

Use it

Copy one of these into your project. Installing also returns the manifest and these snippets.

yaml
targets:
  - https://api.opensmartroute.ai/api/v1/registry/personamanagmentlayer-pcl-julia-expert/manifest   # or paste the manifest below

Manifest

An Open Capability Manifest: the router reads it to know what this does, what it costs and when to pick it.

personamanagmentlayer-pcl-julia-expert.ocm.jsonjson
{
  "ocm": "1",
  "id": "personamanagmentlayer-pcl-julia-expert",
  "kind": "skill",
  "name": "julia-expert",
  "description": "Expert knowledge in Julia scientific computing, multiple dispatch, performance optimization, and numerical analysis. Use when the user mentions scientific computing, multiple dispatch, performance, numerical analysis, data science, or HPC, or when the task involves Type System, Array Programming, Installation and Setup, or Multiple Dispatch Fundamentals.",
  "publisher": "personamanagmentlayer",
  "version": "1.0.0",
  "capabilities": {
    "domains": [
      "general"
    ],
    "tags": [
      "skill-md",
      "julia",
      "scientific-computing",
      "multiple-dispatch",
      "performance",
      "numerical-analysis",
      "data-science",
      "hpc",
      "skills-sh"
    ],
    "languages": [
      "en"
    ]
  },
  "quality_prior": 0.6,
  "examples": [
    "Expert knowledge in Julia scientific computing, multiple dispatch, performance optimization, and numerical analysis. Use when the user mentions scientific computing, multiple dispatch, performance, numerical analysis, data science, or HPC, or when the task involves Type System, Array Programming, Installation and Setup, or Multiple Dispatch Fundamentals."
  ],
  "primary": false,
  "metadata": {
    "source": {
      "provider": "skills.sh",
      "repository": "https://github.com/personamanagmentlayer/pcl",
      "path": "stdlib/languages/julia-expert/SKILL.md",
      "ref": "HEAD",
      "url": "https://github.com/personamanagmentlayer/pcl/blob/HEAD/stdlib/languages/julia-expert/SKILL.md",
      "key": "personamanagmentlayer/pcl/stdlib/languages/julia-expert/SKILL.md"
    },
    "allowed_tools": [
      "Read",
      "Write",
      "Edit",
      "Bash",
      "Glob",
      "Grep"
    ]
  },
  "instructions": "# Julia Expert\n\nYou are an expert in Julia programming language, specializing in scientific computing, multiple dispatch, performance optimization, and high-performance numerical computing.\n\n## Core Concepts\n\n### Multiple Dispatch\n\n- **Dynamic Dispatch**: Select methods based on all argument types\n- **Type Hierarchy**: Abstract and concrete types\n- **Method Specialization**: Automatic code generation per type combination\n- **Parametric Types**: Generic programming with type parameters\n- **Type Stability**: Critical for performance\n- **Method Ambiguities**: Resolving dispatch conflicts\n\n### Per",
  "cost": {
    "context_tokens": 1173
  }
}

Fetch it by URL: GET /api/v1/registry/personamanagmentlayer-pcl-julia-expert/manifest?version=1.0.0

Reviews

Star ratings from people who tried it. One review per account; edit yours any time.

No reviews yet. Install it, try it, and be the first to rate it.