Home Edit on GitHubHomeJulia DocumentationManualIntroductionGetting StartedVariablesIntegers and Floating-Point NumbersMathematical Operations and Elementary FunctionsComplex and Rational NumbersStringsFunctionsControl FlowScope of VariablesTypesMethodsConstructorsConversion and PromotionInterfacesModulesDocumentationMetaprogrammingMulti-dimensional ArraysLinear AlgebraNetworking and StreamsParallel ComputingDate and DateTimeRunning External ProgramsCalling C and Fortran CodeHandling Operating System VariationEnvironment VariablesInteracting With JuliaEmbedding JuliaPackagesProfilingStack TracesPerformance TipsWorkflow TipsStyle GuideFrequently Asked QuestionsNoteworthy Differences from other LanguagesUnicode InputStandard LibraryEssentialsCollections and Data StructuresMathematicsNumbersStringsArraysTasks and Parallel ComputingLinear AlgebraConstantsFilesystemI/O and NetworkPunctuationSorting and Related FunctionsPackage Manager FunctionsDates and TimeIteration utilitiesUnit TestingC InterfaceC Standard LibraryDynamic LinkerProfilingStackTracesSIMD SupportDeveloper DocumentationReflection and introspectionDocumentation of Julia's InternalsInitialization of the Julia runtimeJulia ASTsMore about typesMemory layout of Julia ObjectsEval of Julia codeCalling ConventionsHigh-level Overview of the Native-Code Generation ProcessJulia FunctionsBase.CartesianTalking to the compiler (the :meta mechanism)SubArraysSystem Image BuildingWorking with LLVMprintf() and stdio in the Julia runtimeBounds checkingProper maintenance and care of multi-threading locksArrays with custom indicesBase.LibGit2Module loadingDeveloping/debugging Julia's C codeReporting and analyzing crashes (segfaults)gdb debugging tipsUsing Valgrind with JuliaSanitizer support