Learning Julia: Build high-performance applications for scientific computing

Key FeaturesSet up Julia's environment and start building simple programsExplore the technical aspects of Julia and its potential when it comes to speed and data processingWrite efficient and high-quality code in JuliaBook DescriptionJulia is a highly appropriate language for scientific computing, but it comes with all the required capabilities of a general-purpose language. It allows us to achieve C/Fortran-like performance while maintaining the concise syntax of a scripting language such as Python. It is perfect for building high-performance and concurrent applications. From the basics of its syntax to learning built-in object types, this book covers it all.This book shows you how to write effective functions, reduce code redundancies, and improve code reuse. It will be helpful for new programmers who are starting out with Julia to explore its wide and ever-growing package ecosystem and also for experienced developers/statisticians/data scientists who want to add Julia to their skill-set.The book presents the fundamentals of programming in Julia and in-depth informative examples, using a step-by-step approach. You will be taken through concepts and examples such as doing simple mathematical operations, creating loops, metaprogramming, functions, collections, multiple dispatch, and so on.By the end of the book, you will be able to apply your skills in Julia to create and explore applications of any domain.What you will learnUnderstand Julia's ecosystem and create simple programsMaster the type system and create your own types in JuliaUnderstand Julia's type system, annotations, and conversionsDefine functions and understand meta-programming and multiple dispatchCreate graphics and data visualizations using JuliaBuild programs capable of networking and parallel computationDevelop real-world applications and use connections for RDBMS and NoSQLLearn to interact with other programming languages-C and Python-using JuliaAbout the AuthorAnshul Joshi is a data scientist with experience in recommendation systems, predictive modeling, neural networks, and high performance computing. His research interests encompass deep learning, artificial intelligence, and computational physics. Most of the time, he can be caught exploring GitHub or trying anything new he can get his hands on. You can also follow his personal blog.Rahul Lakhanpal is a technology and open source enthusiast. With diversified skills including systems engineering, web development, the cloud, and big data, he is language-agnostic and a firm believer in using the best tools and the right language for a particular job.Rahul is an active contributor to various community portals and loves to solve challenging real-world problems in his leisure time. He is active on Twitter and writes blogs as well.Table of ContentsUnderstanding Julia's ecosystemProgramming concepts with JuliaDefining FunctionsUnderstanding types and dispatchWorking with control flowInteroperability and metaprogrammingNumerical and scientific computation with JuliaData visualization and graphicsConnecting with databasesBest Practices (Julia's Internals)

Author: Anshul Joshi

Learn more