Valid HTML 4.0! Valid CSS!
%%% -*-BibTeX-*-
%%% ====================================================================
%%%  BibTeX-file{
%%%     author          = "Nelson H. F. Beebe",
%%%     version         = "1.39",
%%%     date            = "29 December 2023",
%%%     time            = "06:54:43 MST",
%%%     filename        = "julia.bib",
%%%     address         = "University of Utah
%%%                        Department of Mathematics, 110 LCB
%%%                        155 S 1400 E RM 233
%%%                        Salt Lake City, UT 84112-0090
%%%                        USA",
%%%     telephone       = "+1 801 581 5254",
%%%     FAX             = "+1 801 581 4148",
%%%     URL             = "https://www.math.utah.edu/~beebe",
%%%     checksum        = "06315 8079 37654 381106",
%%%     email           = "beebe at math.utah.edu, beebe at acm.org,
%%%                        beebe at computer.org (Internet)",
%%%     codetable       = "ISO/ASCII",
%%%     keywords        = "bibliography; BibTeX; Julia programming
%%%                        language",
%%%     license         = "public domain",
%%%     supported       = "yes",
%%%     docstring       = "This is a bibliography of publications about
%%%                        the Julia programming language.  The language
%%%                        has a Web site at
%%%
%%%                            https://julialang.org/
%%%
%%%                        that offers documentation and downloads.
%%%
%%%                        At version 1.39, the year coverage looked
%%%                        like this:
%%%
%%%                             2012 (   1)    2017 (  22)    2022 (  14)
%%%                             2013 (   1)    2018 (  29)    2023 (  15)
%%%                             2014 (   6)    2019 (  36)    2024 (   1)
%%%                             2015 (   9)    2020 (  36)
%%%                             2016 (  19)    2021 (  18)
%%%
%%%                             Article:         82
%%%                             Book:            30
%%%                             InCollection:     3
%%%                             InProceedings:   89
%%%                             MastersThesis:    1
%%%                             Proceedings:      2
%%%
%%%                             Total entries:  207
%%%
%%%                        Spelling has been verified with the UNIX
%%%                        spell and GNU ispell programs using the
%%%                        exception dictionary stored in the companion
%%%                        file with extension .sok.
%%%
%%%                        BibTeX citation tags are uniformly chosen as
%%%                        name:year:abbrev, where name is the family
%%%                        name of the first author or editor, year is a
%%%                        4-digit number, and abbrev is a 3-letter
%%%                        condensation of important title
%%%                        words. Citation tags were automatically
%%%                        generated by software developed for the
%%%                        BibNet Project.
%%%
%%%                        In this bibliography, entries are sorted
%%%                        first by ascending year, and within each
%%%                        year, alphabetically by author or editor, and
%%%                        then, if necessary, by the 3-letter
%%%                        abbreviation at the end of the BibTeX
%%%                        citation tag, using the bibsort -byyear
%%%                        utility.  Year order has been chosen to make
%%%                        it easier to identify the most recent work.
%%%
%%%                        The checksum field above contains a CRC-16
%%%                        checksum as the first value, followed by the
%%%                        equivalent of the standard UNIX wc (word
%%%                        count) utility output of lines, words, and
%%%                        characters.  This is produced by Robert
%%%                        Solovay's checksum utility.",
%%%  }
%%% ====================================================================
@Preamble{
  "\hyphenation{
    Ath-ina
    Aus-tin
    Bang-ert
    Gauch-er-and
    Krzysz-tof
    Pat-rick
    Szym-kat
    Tag-li-ani
  }" #
  "\ifx \undefined \booktitle \def \booktitle #1{{{\em #1}}} \fi" #
  "\ifx \undefined \circled   \def \circled #1{(#1)}\fi" #
  "\ifx \undefined \cprime    \def \cprime {$\mathsurround=0pt '$}\fi" #
  "\ifx \undefined \mathbb    \def \mathbb #1{{\bf #1}}\fi" #
  "\ifx \undefined \ocirc     \def \ocirc #1{{\accent'27#1}}\fi" #
  "\ifx \undefined \pkg       \def \pkg #1{{{\tt #1}}} \fi" #
  "\ifx \undefined \reg       \def \reg {\circled{R}}\fi" #
  "\ifx \undefined \TM        \def \TM {${}^{\sc TM}$} \fi" #
  "\def \toenglish #1\endtoenglish{[{\em English\/}: #1\unskip]} "
}

%%% ====================================================================
%%% Acknowledgement abbreviations:
@String{ack-nhfb = "Nelson H. F. Beebe,
                    University of Utah,
                    Department of Mathematics, 110 LCB,
                    155 S 1400 E RM 233,
                    Salt Lake City, UT 84112-0090, USA,
                    Tel: +1 801 581 5254,
                    FAX: +1 801 581 4148,
                    e-mail: \path|beebe@math.utah.edu|,
                            \path|beebe@acm.org|,
                            \path|beebe@computer.org| (Internet),
                    URL: \path|https://www.math.utah.edu/~beebe/|"}

@String{ack-njh =   "Nick Higham,
                    e-mail: \path|higham@vtx.ma.man.ac.uk|"}

%%% ====================================================================
%%% Institution abbreviations:
@String{inst-CSC                = "Center for Scientific Computing,
                                  Department of Mathematics, University of
                                  Utah"}
@String{inst-CSC:adr            = "Salt Lake City, UT 84112, USA"}

@String{inst-MATHWORKS          = "The MathWorks, Inc."}
@String{inst-MATHWORKS:adr      = "3 Apple Hill Drive, Natick, MA 01760-2098,
                                  USA"}

@String{inst-NPL                = "National Physical Laboratory"}
@String{inst-NPL:adr            = "Teddington, Middlesex TW11 0LW, UK"}

@String{inst-U-MANCHESTER       = "University of Manchester"}
@String{inst-U-MANCHESTER:adr   = "Manchester M13 9PL, England"}

@String{inst-MCCM               = "Manchester Centre for Computational Mathematics"}
@String{inst-MCCM:adr           = "Manchester, England"}

%%% ====================================================================
%%% Journal abbreviations:
@String{j-ACM-COMM-COMP-ALGEBRA = "ACM Communications in Computer Algebra"}

@String{j-ADV-ENG-SOFTWARE      = "Advances in Engineering Software"}

@String{j-BIOINFORMATICS        = "Bioinformatics"}

@String{j-BIT-NUM-MATH          = "BIT Numerical Mathematics"}

@String{j-COMP-ECONOMICS        = "Computational Economics"}

@String{j-COMP-PHYS-COMM        = "Computer Physics Communications"}

@String{j-COMP-SCI-REV          = "Computer Science Review"}

@String{j-COMPUT-MATH-APPL      = "Computers and Mathematics with Applications"}

@String{j-COMPUT-METH-PROG-BIOMED = "Computer Methods and Programs in
                                  Biomedicine"}

@String{j-COMPUT-SOFTW-BIG-SCI  = "Computing and Software for Big Science"}

@String{j-EMPIR-SOFTWARE-ENG    = "Empirical Software Engineering"}

@String{j-IEEE-ACCESS           = "IEEE Access"}

@String{j-IEEE-TRANS-PAR-DIST-SYS = "IEEE Transactions on Parallel and
                                    Distributed Systems"}

@String{j-IEEE-TRANS-SOFTW-ENG  = "IEEE Transactions on Software Engineering"}

@String{j-IEEE-TRANS-VLSI-SYST  = "IEEE Transactions on Very Large Scale
                                  Integration (VLSI) Systems"}

@String{j-INFORMS-J-COMPUT      = "INFORMS Journal on Computing"}

@String{j-INT-STAT-REV          = "International Statistical Review =
                                   Revue Internationale de Statistique"}

@String{j-J-COMPUT-SCI          = "Journal of Computational Science"}

@String{j-J-OPEN-RES-SOFT       = "Journal of Open Research Software"}

@String{j-J-OPEN-SOURCE-SOFT    = "Journal of Open Source Software"}

@String{j-J-PAR-DIST-COMP       = "Journal of Parallel and Distributed
                                  Computing"}

@String{j-J-RES-NATL-INST-STAND-TECHNOL = "Journal of research of the National
                                  Institute of Standards and Technology"}

@String{j-J-STAT-SOFT           = "Journal of Statistical Software"}

@String{j-NUMER-ALGORITHMS      = "Numerical Algorithms"}

@String{j-PACMPL                = "Proceedings of the ACM on Programming
                                   Languages (PACMPL)"}

@String{j-PLOS-ONE              = "PLoS One"}

@String{j-SIAM-J-SCI-COMP       = "SIAM Journal on Scientific Computing"}

@String{j-SIAM-REVIEW           = "SIAM Review"}

@String{j-SIGADA-LETTERS        = "ACM SIGADA Ada Letters"}

@String{j-SOFTWAREX             = "SoftwareX"}

@String{j-TOMS                  = "ACM Transactions on Mathematical Software"}

@String{j-TOPLAS                = "ACM Transactions on Programming
                                  Languages and Systems"}

%%% ====================================================================
%%% Publisher abbreviations:
@String{pub-ACADEMIC            = "Academic Press"}
@String{pub-ACADEMIC:adr        = "New York, USA"}

@String{pub-ACM                 = "ACM Press"}
@String{pub-ACM:adr             = "New York, NY 10036, USA"}

@String{pub-APRESS              = "Apress"}
@String{pub-APRESS:adr          = "Berkeley, CA, USA"}

@String{pub-IEEE                = "IEEE Computer Society Press"}
@String{pub-IEEE:adr            = "1109 Spring Street, Suite 300,
                                  Silver Spring, MD 20910, USA"}

@String{pub-ORA-MEDIA           = "O'Reilly Media, Inc."}
@String{pub-ORA-MEDIA:adr       = "1005 Gravenstein Highway North,
                                   Sebastopol, CA 95472, USA"}

@String{pub-PACKT               = "Packt Publishing"}
@String{pub-PACKT:adr           = "Birmingham, UK"}

@String{pub-SV                  = "Spring{\-}er-Ver{\-}lag"}
@String{pub-SV:adr              = "Berlin, Germany~/ Heidelberg,
                                  Germany~/ London, UK~/ etc."}

%%% ====================================================================
%%% Series abbreviations:
@String{ser-LNCS                = "Lecture Notes in Computer Science"}

%%% ====================================================================
%%% Bibliography entries, sorted by year, and then by citation label,
%%% with ``bibsort -byyear'':
@Article{Bezanson:2012:JFD,
  author =       "Jeff Bezanson and Stefan Karpinski and Viral B. Shah
                 and Alan Edelman",
  title =        "{Julia}: a Fast Dynamic Language for Technical
                 Computing",
  journal =      "arXiv.org",
  volume =       "??",
  number =       "??",
  pages =        "1--27",
  day =          "25",
  month =        sep,
  year =         "2012",
  bibdate =      "Thu Apr 08 07:54:32 2021",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/julia.bib",
  URL =          "https://arxiv.org/abs/1209.5145;
                 https://arxiv.org/pdf/1209.5145.pdf",
  abstract =     "Dynamic languages have become popular for scientific
                 computing. They are generally considered highly
                 productive, but lacking in performance. This paper
                 presents Julia, a new dynamic language for technical
                 computing, designed for performance from the beginning
                 by adapting and extending modern programming language
                 techniques. A design based on generic functions and a
                 rich type system simultaneously enables an expressive
                 programming model and successful type inference,
                 leading to good performance for a wide range of
                 programs. This makes it possible for much of the Julia
                 library to be written in Julia itself, while also
                 incorporating best-of-breed C and Fortran libraries.",
  acknowledgement = ack-nhfb,
}

@InProceedings{Shah:2013:NAA,
  author =       "Viral B. Shah and Alan Edelman and Stefan Karpinski
                 and Jeff Bezanson and Jeremy Kepner",
  editor =       "{IEEE}",
  booktitle =    "{2013 IEEE High Performance Extreme Computing
                 Conference (HPEC)}",
  title =        "Novel algebras for advanced analytics in {Julia}",
  publisher =    pub-IEEE,
  address =      pub-IEEE:adr,
  pages =        "1--4",
  year =         "2013",
  DOI =          "https://doi.org/10.1109/HPEC.2013.6670347",
  bibdate =      "Mon Dec 18 08:06:55 2023",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/julia.bib",
  acknowledgement = ack-nhfb,
}

@InProceedings{Bezanson:2014:AOU,
  author =       "Jeff Bezanson and Jiahao Chen and Stefan Karpinski and
                 Viral Shah and Alan Edelman",
  booktitle =    "{Proceedings of ACM SIGPLAN International Workshop on
                 Libraries, Languages, and Compilers for Array
                 Programming}",
  title =        "Array Operators Using Multiple Dispatch",
  publisher =    pub-ACM,
  address =      pub-ACM:adr,
  month =        jun,
  year =         "2014",
  DOI =          "https://doi.org/10.1145/2627373.2627383",
  bibdate =      "Thu Apr 8 08:02:29 2021",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/julia.bib",
  acknowledgement = ack-nhfb,
  keywords =     "Julia programming language",
}

@InProceedings{Chen:2014:PPP,
  author =       "J. Chen and A. Edelman",
  booktitle =    "{2014 First Workshop for High Performance Technical
                 Computing in Dynamic Languages}",
  title =        "Parallel Prefix Polymorphism Permits Parallelization,
                 Presentation Proof",
  publisher =    pub-IEEE,
  address =      pub-IEEE:adr,
  pages =        "47--56",
  year =         "2014",
  DOI =          "https://doi.org/10.1109/HPTCDL.2014.9",
  bibdate =      "Thu Apr 8 07:17:08 2021",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/julia.bib",
  acknowledgement = ack-nhfb,
  keywords =     "Julia programming language",
}

@InProceedings{Heitzinger:2014:JNH,
  author =       "Clemens Heitzinger and Gerhard Tulzer",
  editor =       "{IEEE}",
  booktitle =    "{2014 First Workshop for High Performance Technical
                 Computing in Dynamic Languages}",
  title =        "{Julia} and the Numerical Homogenization of {PDEs}",
  publisher =    pub-IEEE,
  address =      pub-IEEE:adr,
  pages =        "36--40",
  year =         "2014",
  DOI =          "https://doi.org/10.1109/HPTCDL.2014.8",
  bibdate =      "Mon Dec 18 08:06:55 2023",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/julia.bib",
  acknowledgement = ack-nhfb,
}

@InProceedings{Knopp:2014:EMT,
  author =       "Tobias Knopp",
  editor =       "{IEEE}",
  booktitle =    "{2014 First Workshop for High Performance Technical
                 Computing in Dynamic Languages}",
  title =        "Experimental Multi-threading Support for the {Julia}
                 Programming Language",
  publisher =    pub-IEEE,
  address =      pub-IEEE:adr,
  pages =        "1--5",
  year =         "2014",
  DOI =          "https://doi.org/10.1109/HPTCDL.2014.11",
  bibdate =      "Mon Dec 18 08:06:55 2023",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/julia.bib",
  acknowledgement = ack-nhfb,
  keywords =     "Julia programming language",
}

@InProceedings{Olver:2014:PFI,
  author =       "S. Olver and A. Townsend",
  booktitle =    "{2014 First Workshop for High Performance Technical
                 Computing in Dynamic Languages}",
  title =        "A Practical Framework for Infinite-Dimensional Linear
                 Algebra",
  publisher =    pub-IEEE,
  address =      pub-IEEE:adr,
  pages =        "57--62",
  year =         "2014",
  DOI =          "https://doi.org/10.1109/HPTCDL.2014.10",
  bibdate =      "Thu Apr 8 07:17:08 2021",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/julia.bib",
  acknowledgement = ack-nhfb,
  keywords =     "Julia programming language",
}

@InProceedings{Udell:2014:COJ,
  author =       "Madeleine Udell and Karanveer Mohan and David Zeng and
                 Jenny Hong and Steven Diamond and Stephen Boyd",
  editor =       "{IEEE}",
  booktitle =    "{2014 First Workshop for High Performance Technical
                 Computing in Dynamic Languages}",
  title =        "Convex Optimization in {Julia}",
  publisher =    pub-IEEE,
  address =      pub-IEEE:adr,
  pages =        "18--28",
  year =         "2014",
  DOI =          "https://doi.org/10.1109/HPTCDL.2014.5",
  bibdate =      "Mon Dec 18 08:06:55 2023",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/julia.bib",
  acknowledgement = ack-nhfb,
  keywords =     "Julia programming language",
}

@Book{Balbaert:2015:GSJ,
  editor =       "Ivo Balbaert and Kevin Colaco and Neeshma Ramakrishnan
                 and Rashmi Sawant",
  title =        "Getting started with {Julia} programming: enter the
                 exciting world of {Julia}, a high-performance language
                 for technical computing",
  publisher =    pub-PACKT,
  address =      pub-PACKT:adr,
  pages =        "214",
  year =         "2015",
  ISBN =         "1-78328-479-X, 1-78328-480-3 (e-book)",
  ISBN-13 =      "978-1-78328-479-5, 978-1-78328-480-1 (e-book)",
  LCCN =         "QA297 .B353 2015eb",
  bibdate =      "Thu Apr 8 10:48:12 MDT 2021",
  bibsource =    "fsz3950.oclc.org:210/WorldCat;
                 https://www.math.utah.edu/pub/tex/bib/julia.bib",
  series =       "Community Experience Distilled",
  URL =          "http://public.ebookcentral.proquest.com/choice/publicfullrecord.aspx?p=1973847;
                 http://site.ebrary.com/id/11025933;
                 http://www.vlebooks.com/vleweb/product/openreader?id=none\%26isbn=9781783284801",
  abstract =     "This book is for you if you are a data scientist or
                 working on any technical or scientific computation
                 projects. The book assumes you have a basic working
                 knowledge of high-level dynamic languages such as
                 MATLAB, R, Python, or Ruby.",
  acknowledgement = ack-nhfb,
  subject =      "Numerical analysis; Computer programs; Mathematical
                 analysis; Reference; Questions and Answers; Computer
                 programs.",
  tableofcontents = "Preface \\
                 The Rationale for Julia \\
                 1: Installing the Julia Platform \\
                 Installing Julia \\
                 Windows version \\
                 usable from Windows XP SP2 onwards \\
                 Ubuntu version \\
                 OS X \\
                 Building from source \\
                 Working with Julia's shell \\
                 Startup options and Julia scripts \\
                 Packages \\
                 Adding a new package \\
                 Installing and working with Julia Studio \\
                 Installing and working with IJulia \\
                 Installing Sublime-IJulia \\
                 Installing Juno \\
                 Other editors and IDEs \\
                 How Julia works \\
                 Summary \\
                 2: Variables, Types, and Operations \\
                 Variables, naming conventions, and comments \\
                 Types \\
                 Integers \\
                 Floating point numbers \\
                 Elementary mathematical functions and operations \\
                 Rational and complex numbers \\
                 Characters \\
                 Strings \\
                 Formatting numbers and strings \\
                 Regular expressions \\
                 Ranges and arrays \\
                 Other ways to create arrays \\
                 Some common functions for arrays \\
                 How to convert an array of chars to a string \\
                 Dates and times \\
                 Scope and constants \\
                 Summary \\
                 3: Functions \\
                 Defining functions \\
                 Optional and keyword arguments \\
                 Anonymous functions \\
                 First-class functions and closures \\
                 Recursive functions \\
                 Map, filter, and list comprehensions \\
                 Generic functions and multiple dispatch \\
                 Summary \\
                 4: Control Flow \\
                 Conditional evaluation \\
                 Repeated evaluation \\
                 The for loop \\
                 The while loop \\
                 The break statement \\
                 The continue statement \\
                 Exception handling \\
                 Scope revisited \\
                 Tasks \\
                 Summary \\
                 5: Collection Types \\
                 Matrices \\
                 Tuples \\
                 Dictionaries \\
                 Keys and values \\
                 looping \\
                 Sets \\
                 Making a set of tuples \\
                 Example project \\
                 word frequency \\
                 Summary \\
                 6: More on Types, Methods, and Modules \\
                 Type annotations and conversions \\
                 Type conversions and promotions \\
                 The type hierarchy \\
                 subtypes and supertypes \\
                 Concrete and abstract types \\
                 User-defined and composite types \\
                 When are two values or objects equal or identical? \\
                 Multiple dispatch example \\
                 Types and collections \\
                 inner constructors \\
                 Type unions \\
                 Parametric types and methods \\
                 Standard modules and paths \\
                 Summary \\
                 7: Metaprogramming in Julia \\
                 Expressions and symbols \\
                 Eval and interpolation \\
                 Defining macros \\
                 Built-in macros \\
                 Testing \\
                 Debugging \\
                 Benchmarking \\
                 Starting a task \\
                 Reflection capabilities \\
                 Summary \\
                 8: I/O, Networking, and Parallel Computing \\
                 Basic input and output \\
                 Working with files \\
                 Reading and writing CSV files \\
                 Using DataFrames \\
                 Other file formats \\
                 Working with TCP sockets and servers \\
                 Interacting with databases \\
                 Parallel operations and computing \\
                 Creating processes \\
                 Using low-level communications \\
                 Parallel loops and maps \\
                 Distributed arrays \\
                 Summary \\
                 9: Running External Programs \\
                 Running shell commands \\
                 Interpolation \\
                 Pipelining \\
                 Calling C and FORTRAN \\
                 Calling Python \\
                 Performance tips \\
                 Tools to use \\
                 Summary \\
                 10: The Standard Library and Packages \\
                 Digging deeper into the standard library \\
                 Julia's package manager",
}

@InProceedings{Dogaru:2015:UPJ,
  author =       "Ioana Dogaru and Radu Dogaru",
  editor =       "{IEEE}",
  booktitle =    "{2015 20th International Conference on Control Systems
                 and Computer Science}",
  title =        "Using {Python} and {Julia} for Efficient
                 Implementation of Natural Computing and Complexity
                 Related Algorithms",
  publisher =    pub-IEEE,
  address =      pub-IEEE:adr,
  pages =        "599--604",
  year =         "2015",
  DOI =          "https://doi.org/10.1109/CSCS.2015.37",
  bibdate =      "Mon Dec 18 08:06:55 2023",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/julia.bib;
                 https://www.math.utah.edu/pub/tex/bib/python.bib",
  acknowledgement = ack-nhfb,
  keywords =     "Julia programming language",
}

@InProceedings{Edelman:2015:JFA,
  author =       "Alan Edelman",
  editor =       "{IEEE}",
  booktitle =    "{2015 IEEE International Parallel and Distributed
                 Processing Symposium}",
  title =        "{Julia}: a fresh approach to parallel programming",
  publisher =    pub-IEEE,
  address =      pub-IEEE:adr,
  pages =        "517--517",
  year =         "2015",
  DOI =          "https://doi.org/10.1109/IPDPS.2015.122",
  bibdate =      "Mon Dec 18 08:06:55 2023",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/julia.bib",
  acknowledgement = ack-nhfb,
  keywords =     "Julia programming language",
}

@InProceedings{Edelman:2015:JI,
  author =       "Alan Edelman",
  editor =       "{IEEE}",
  booktitle =    "{2015 IEEE International Parallel and Distributed
                 Processing Symposium Workshop}",
  title =        "{Julia} Introduction",
  publisher =    pub-IEEE,
  address =      pub-IEEE:adr,
  pages =        "1271--1271",
  year =         "2015",
  DOI =          "https://doi.org/10.1109/IPDPSW.2015.181",
  bibdate =      "Mon Dec 18 08:06:55 2023",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/julia.bib",
  acknowledgement = ack-nhfb,
  keywords =     "Julia programming language",
}

@Article{Lubin:2015:COR,
  author =       "Miles Lubin and Iain Dunning",
  title =        "Computing in Operations Research Using {Julia}",
  journal =      j-INFORMS-J-COMPUT,
  volume =       "27",
  number =       "2",
  pages =        "238--248",
  month =        "Spring",
  year =         "2015",
  CODEN =        "????",
  DOI =          "https://doi.org/10.1287/ijoc.2014.0623",
  ISSN =         "1091-9856 (print), 1526-5528 (electronic)",
  ISSN-L =       "1091-9856",
  MRclass =      "68N15 (90-04)",
  MRnumber =     "3347876",
  bibdate =      "Mon Apr 9 08:21:37 MDT 2018",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/informs-j-comput.bib;
                 https://www.math.utah.edu/pub/tex/bib/julia.bib",
  URL =          "https://pubsonline.informs.org/doi/abs/10.1287/ijoc.2014.0623",
  acknowledgement = ack-nhfb,
  ajournal =     "INFORMS J. Comput.",
  fjournal =     "INFORMS Journal on Computing",
  journal-URL =  "https://pubsonline.informs.org/journal/ijoc",
  keywords =     "Julia programming language",
  onlinedate =   "March 16, 2015",
}

@InProceedings{Ovsyak:2015:AMA,
  author =       "V. Ovsyak and O. Ovsyak and D. Bui and J. Petruszka",
  booktitle =    "{2015 IEEE 13th International Scientific Conference on
                 Informatics}",
  title =        "Algebraic models of application of computer systems
                 and information technologies",
  publisher =    pub-IEEE,
  address =      pub-IEEE:adr,
  pages =        "189--194",
  year =         "2015",
  DOI =          "https://doi.org/10.1109/Informatics.2015.7377831",
  bibdate =      "Thu Apr 8 07:17:08 2021",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/julia.bib",
  acknowledgement = ack-nhfb,
  keywords =     "Julia programming language",
}

@InProceedings{Przigoda:2015:VDD,
  author =       "N. Przigoda and J. Stoppe and J. Seiter and R. Wille
                 and R. Drechsler",
  booktitle =    "{2015 Euromicro Conference on Digital System Design}",
  title =        "Verification-Driven Design Across Abstraction Levels:
                 a Case Study",
  publisher =    pub-IEEE,
  address =      pub-IEEE:adr,
  pages =        "375--382",
  year =         "2015",
  DOI =          "https://doi.org/10.1109/DSD.2015.88",
  bibdate =      "Thu Apr 8 07:17:08 2021",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/julia.bib",
  acknowledgement = ack-nhfb,
  keywords =     "Julia programming language",
}

@Book{Sherrington:2015:MJD,
  author =       "Malcolm Sherrington",
  title =        "Mastering {Julia}: develop your analytical and
                 programming skills further in {Julia} to solve complex
                 data processing problems",
  publisher =    pub-PACKT,
  address =      pub-PACKT:adr,
  pages =        "xiv + 385",
  year =         "2015",
  ISBN =         "1-78355-331-6 (paperback), 1-78355-332-4 (e-book)",
  ISBN-13 =      "978-1-78355-331-0 (paperback), 978-1-78355-332-7
                 (e-book)",
  LCCN =         "QA76.7 .S547 2015; QA76.73.J8 S54 2015",
  bibdate =      "Thu Apr 8 10:58:21 MDT 2021",
  bibsource =    "fsz3950.oclc.org:210/WorldCat;
                 https://www.math.utah.edu/pub/tex/bib/julia.bib",
  abstract =     "This hands-on guide is aimed at practitioners of data
                 science. The book assumes some previous skills with
                 Julia and skills in coding in a scripting language such
                 as Python or R, or a compiled language such as C or
                 Java.",
  acknowledgement = ack-nhfb,
  tableofcontents = "Preface \\
                 1: The Julia Environment \\
                 Introduction \\
                 Philosophy \\
                 Role in data science and big data \\
                 Comparison with other languages \\
                 Features \\
                 Getting started \\
                 Julia sources \\
                 Building from source \\
                 Installing on CentOS \\
                 Mac OS X and Windows \\
                 Exploring the source stack \\
                 Juno \\
                 IJulia \\
                 A quick look at some Julia \\
                 Julia via the console \\
                 Installing some packages \\
                 A bit of graphics creating more realistic graphics with
                 Winston \\
                 My benchmarks \\
                 Package management \\
                 Listing, adding, and removing \\
                 Choosing and exploring packages \\
                 Statistics and mathematics \\
                 Graphics \\
                 Web and networking \\
                 Database and specialist packages \\
                 How to uninstall Julia \\
                 Adding an unregistered package \\
                 What makes Julia special \\
                 Parallel processing \\
                 Multiple dispatch \\
                 Homoiconic macros \\
                 Interlanguage cooperation \\
                 Summary \\
                 2: Developing in Julia \\
                 Integers, bits, bytes, and bools \\
                 Integers \\
                 Logical and arithmetic operators \\
                 Booleans \\
                 Arrays \\
                 Operations on matrices \\
                 Elemental operations \\
                 A simple Markov chain \\
                 cat and mouse \\
                 Char and strings \\
                 Characters \\
                 Strings \\
                 Unicode support \\
                 Regular expressions \\
                 Byte array literals \\
                 Version literals \\
                 An example \\
                 Real, complex, and rational numbers \\
                 Reals \\
                 Operators and built-in functions \\
                 Special values \\
                 BigFloats \\
                 Rationals \\
                 Complex numbers \\
                 Juliasets \\
                 Composite types \\
                 More about matrices \\
                 Vectorized and devectorized code \\
                 Multidimensional arrays \\
                 Broadcasting \\
                 Sparse matrices \\
                 Data arrays and data frames \\
                 Dictionaries, sets, and others \\
                 Dictionaries \\
                 Sets \\
                 Other data structures \\
                 Summary \\
                 3: Types and Dispatch \\
                 Functions \\
                 First-class objects \\
                 Passing arguments \\
                 Default and optional arguments \\
                 Variable argument list \\
                 Named parameters \\
                 Scope \\
                 The Queen's problem \\
                 Julia's type system \\
                 A look at the rational type \\
                 A vehicle datatype \\
                 Typealias and unions \\
                 Enumerations (revisited) \\
                 Multiple dispatch \\
                 Parametric types \\
                 Conversion and promotion \\
                 Conversion \\
                 Promotion \\
                 A fixed vector module \\
                 Summary \\
                 4: Interoperability \\
                 Interfacing with other programming environments \\
                 Calling C and Fortran \\
                 Mapping C types \\
                 Calling a Fortran routine \\
                 Calling curl to retrieve a web page \\
                 Python \\
                 Some others to watch \\
                 The Julia API \\
                 Calling API from C \\
                 Metaprogramming \\
                 Symbols \\
                 Macros \\
                 Testing \\
                 Error handling \\
                 The enum macro \\
                 Tasks \\
                 Parallel operations \\
                 Distributed arrays \\
                 A simple MapReduce \\
                 Executing commands \\
                 Running commands \\
                 Working with the filesystem \\
                 Redirection and pipes \\
                 Perl one-liners \\
                 Summary \\
                 5: Working with Data \\
                 Basic I/O \\
                 Terminal I/O \\
                 Disk files \\
                 Text processing \\
                 Binary files \\
                 Structured datasets \\
                 CSV and DLM files \\
                 HDF5 \\
                 XML files \\
                 DataFrames and RDatasets \\
                 The DataFrames package \\
                 DataFrames \\
                 RDatasets \\
                 Subsetting, sorting, and joining data \\
                 Statistics \\
                 Simple statistics \\
                 Samples and estimations \\
                 Pandas \\
                 Selected topics \\
                 Time series \\
                 Distributions \\
                 Kernel density \\
                 Hypothesis testing \\
                 GLM \\
                 Summary",
}

@InProceedings{Wang:2015:IDF,
  author =       "Yi Wang and Meilin Liu and Huiping Li and Shu Liang
                 and Qunsheng Cao",
  editor =       "{IEEE}",
  booktitle =    "{2015 IEEE International Symposium on Antennas and
                 Propagation \& USNC\slash URSI National Radio Science
                 Meeting}",
  title =        "Implementation of {DG-fem} with dynamic {Julia}
                 language for accurate {EM} simulation",
  publisher =    pub-IEEE,
  address =      pub-IEEE:adr,
  pages =        "1850--1851",
  year =         "2015",
  DOI =          "https://doi.org/10.1109/APS.2015.7305314",
  bibdate =      "Mon Dec 18 08:06:55 2023",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/julia.bib",
  acknowledgement = ack-nhfb,
}

@Book{Balbaert:2016:JHP,
  author =       "Ivo Balbaert and Avik Sengupta and Malcolm
                 Sherrington",
  title =        "{Julia}: high performance programming: learning path:
                 leverage the power of {Julia} to design and develop
                 high performing programs",
  publisher =    pub-PACKT,
  address =      pub-PACKT:adr,
  pages =        "697",
  year =         "2016",
  ISBN =         "1-78712-570-X, 1-78712-610-2 (e-book)",
  ISBN-13 =      "978-1-78712-570-4, 978-1-78712-610-7 (e-book)",
  LCCN =         "QA76.7 .B353 2016",
  bibdate =      "Thu Apr 8 16:55:30 MDT 2021",
  bibsource =    "fsz3950.oclc.org:210/WorldCat;
                 https://www.math.utah.edu/pub/tex/bib/julia.bib",
  series =       "Learning path",
  abstract =     "Leverage the power of Julia to design and develop high
                 performing programs About This Book Get to know the
                 best techniques to create blazingly fast programs with
                 Julia Stand out from the crowd by developing code that
                 runs faster than your peers' code Complete an extensive
                 data science project through the entire cycle from ETL
                 to analytics and data visualization Who This Book Is
                 For This learning path is for data scientists and for
                 all those who work in technical and scientific
                 computation projects. It will be great for Julia
                 developers who are interested in high-performance
                 technical computing. This learning path assumes that
                 you already have some basic working knowledge of
                 Julia's syntax and high-level dynamic languages such as
                 MATLAB, R, Python, or Ruby. What You Will Learn Set up
                 your Julia environment to achieve the highest
                 productivity Solve your tasks in a high-level dynamic
                 language and use types for your data only when needed
                 Apply Julia to tackle problems concurrently and in a
                 distributed environment Get a sense of the
                 possibilities and limitations of Julia's performance
                 Use Julia arrays to write high performance code Build a
                 data science project through the entire cycle of ETL,
                 analytics, and data visualization Display graphics and
                 visualizations to carry out modeling and simulation in
                 Julia Develop your own packages and contribute to the
                 Julia Community In Detail In this learning path, you
                 will learn to use an interesting and dynamic
                 programming language - Julia! You will get a chance to
                 tackle your numerical and data problems with Julia.
                 You'll begin the journey by setting up a running Julia
                 platform before exploring its various built-in types.
                 We'll then move on to the various functions and
                 constructs in Julia. We'll walk through the two
                 important collection types - arrays and matrices in
                 Julia. You will dive into how Julia uses type
                 information to achieve its performance goals, and how
                 to use multiple dispatch to help the compiler emit high
                 performance machine code. You will see how Julia's
                 design makes code fast, and you'll see its distributed
                 computing capabilities. By the end of this learning
                 path, you will see how data works using simple
                 statistics and analytics, and you'll discover its high
                 and dynamic performance - its real strength, which
                 makes it particularly useful in highly intensive
                 computing tasks. This learning path combines some of
                 the best that Packt has to offer in one complete,
                 curated package.",
  acknowledgement = ack-nhfb,
  keywords =     "Closures and anonymous functions.",
  subject =      "Programming languages; Julia; Computer programming;
                 COMPUTERS; General.; Computer programming.",
  tableofcontents = "Preface \\
                 Table of Contents \\
                 Module 1: Getting Started with Julia \\
                 The Rationale for Julia \\
                 The scope of Julia \\
                 Julia's place among the other programming languages \\
                 A comparison with other languages for the data
                 scientist \\
                 Useful links \\
                 Summary \\
                 1: Installing the Julia Platform \\
                 Installing Julia \\
                 Working with Julia's shell \\
                 Startup options and Julia scripts \\
                 Packages \\
                 Installing and working with Julia Studio \\
                 Installing and working with IJulia \\
                 Installing Sublime-IJulia \\
                 Installing Juno \\
                 Other editors and IDEs \\
                 How Julia works \\
                 Summary \\
                 2: Variables, Types, and Operations \\
                 Variables, naming conventions, and comments \\
                 Types \\
                 Integers \\
                 Floating point numbers \\
                 Elementary mathematical functions and operations \\
                 Rational and complex numbers \\
                 Characters \\
                 Strings \\
                 Regular expressions \\
                 Ranges and arrays \\
                 Dates and times \\
                 Scope and constants \\
                 Summary \\
                 3: Functions \\
                 Defining functions \\
                 Optional and keyword arguments \\
                 Anonymous functions \\
                 First-class functions and closures \\
                 Recursive functions \\
                 Map, filter, and list comprehensions \\
                 Generic functions and multiple dispatch \\
                 Summary \\
                 4: Control Flow \\
                 Conditional evaluation \\
                 Repeated evaluation \\
                 Exception handling \\
                 Scope revisited \\
                 Tasks \\
                 Summary \\
                 5: Collection Types \\
                 Matrices \\
                 Tuples \\
                 Dictionaries \\
                 Sets \\
                 Example project \\
                 word frequency \\
                 Summary \\
                 6: More on Types, Methods, and Modules \\
                 Type annotations and conversions \\
                 The type hierarchy \\
                 subtypes and supertypes \\
                 User-defined and composite types \\
                 Types and collections \\
                 inner constructors \\
                 Type unions \\
                 Parametric types and methods \\
                 Standard modules and paths \\
                 Summary \\
                 7: Metaprogramming in Julia \\
                 Expressions and symbols \\
                 Eval and interpolation \\
                 Defining macros \\
                 Built-in macros \\
                 Reflection capabilities \\
                 Summary \\
                 8: I/O, Networking, and Parallel Computing \\
                 Basic input and output \\
                 Working with files \\
                 Using DataFrames \\
                 Working with TCP sockets and servers \\
                 Interacting with databases \\
                 Parallel operations and computing \\
                 Summary \\
                 9: Running External Programs \\
                 Running shell commands \\
                 Calling C and FORTRAN \\
                 Calling Python \\
                 Performance tips \\
                 Summary \\
                 10: The Standard Library and Packages \\
                 Digging deeper into the standard library \\
                 Julia's package manager \\
                 Publishing a package \\
                 Graphics in Julia \\
                 Using Gadfly on data \\
                 Summary \\
                 Appendix: List of Macros and Packages \\
                 Macros \\
                 List of packages \\
                 Module 2: Julia High Performance \\
                 1: Julia is Fast \\
                 Julia \\
                 fast and dynamic \\
                 Designed for speed \\
                 How fast can Julia be? \\
                 Summary \\
                 2: Analyzing Julia Performance \\
                 Timing Julia code \\
                 The Julia profiler \\
                 Analyzing memory allocation \\
                 Statistically accurate benchmarking \\
                 Summary \\
                 3: Types in Julia \\
                 The Julia type system \\
                 Type-stability \\
                 Kernel methods \\
                 Types in storage locations \\
                 Summary \\
                 4: Functions and Macros \\
                 Structuring Julia Code for High Performance \\
                 Using globals \\
                 Inlining",
}

@InCollection{Bohm:2016:BPC,
  author =       "Janko B{\"o}hm and Wolfram Decker and Claus Fieker and
                 Santiago Laplagne and Gerhard Pfister",
  booktitle =    "{Mathematical Software --- ICMS 2016}",
  title =        "Bad Primes in Computational Algebraic Geometry",
  publisher =    "Springer International Publishing",
  address =      "Cham, Switzerland",
  pages =        "93--101",
  year =         "2016",
  DOI =          "https://doi.org/10.1007/978-3-319-42432-3_12",
  bibdate =      "Thu Apr 8 08:02:29 2021",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/julia.bib",
  acknowledgement = ack-nhfb,
  keywords =     "Julia programming language",
}

@InProceedings{Chan:2016:PAB,
  author =       "Jose Juan Mijares Chan and Yuyin Mao and Ying Ying Liu
                 and Parimala Thulasiraman and Ruppa K. Thulasiram",
  booktitle =    "{Parallel Processing and Applied Mathematics}",
  title =        "Parallel Ant Brood Graph Partitioning in {Julia}",
  publisher =    pub-SV,
  address =      pub-SV:adr,
  pages =        "??--??",
  year =         "2016",
  DOI =          "https://doi.org/10.1007/978-3-319-32152-3_17",
  bibdate =      "Fri Apr 9 07:54:52 MDT 2021",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/julia.bib",
  URL =          "http://link.springer.com/chapter/10.1007/978-3-319-32152-3_17",
  acknowledgement = ack-nhfb,
}

@InProceedings{Chen:2016:JID,
  author =       "Alexander Chen and Alan Edelman and Jeremy Kepner and
                 Vijay Gadepally and Dylan Hutchison",
  editor =       "{IEEE}",
  booktitle =    "{2016 IEEE High Performance Extreme Computing
                 Conference (HPEC)}",
  title =        "{Julia} implementation of the {Dynamic Distributed
                 Dimensional Data Model}",
  publisher =    pub-IEEE,
  address =      pub-IEEE:adr,
  pages =        "1--7",
  month =        sep,
  year =         "2016",
  DOI =          "https://doi.org/10.1109/HPEC.2016.7761626",
  bibdate =      "Mon Dec 18 08:06:55 2023",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/julia.bib",
  acknowledgement = ack-nhfb,
  keywords =     "Julia programming language",
}

@Article{Creel:2016:NJM,
  author =       "Michael Creel",
  title =        "A Note on {Julia} and {MPI}, with Code Examples",
  journal =      j-COMP-ECONOMICS,
  volume =       "48",
  number =       "3",
  pages =        "??--??",
  month =        "",
  year =         "2016",
  CODEN =        "CNOMEL",
  DOI =          "https://doi.org/10.1007/s10614-015-9516-5",
  ISSN =         "",
  ISSN-L =       "0927-7099",
  bibdate =      "Fri Apr 9 07:54:52 MDT 2021",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/julia.bib;
                 https://www.math.utah.edu/pub/tex/bib/pvm.bib",
  URL =          "http://link.springer.com/article/10.1007/s10614-015-9516-5",
  acknowledgement = ack-nhfb,
  fjournal =     "Computational Economics",
}

@InProceedings{Elmqvist:2016:SMP,
  author =       "Hilding Elmqvist and Toivo Henningsson and Martin
                 Otter",
  booktitle =    "{Leveraging Applications of Formal Methods,
                 Verification and Validation: Discussion, Dissemination,
                 Applications}",
  title =        "Systems Modeling and Programming in a Unified
                 Environment Based on {Julia}",
  publisher =    pub-SV,
  address =      pub-SV:adr,
  pages =        "198--217",
  year =         "2016",
  DOI =          "https://doi.org/10.1007/978-3-319-47169-3_15",
  bibdate =      "Fri Apr 9 07:54:52 MDT 2021",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/julia.bib",
  URL =          "http://link.springer.com/chapter/10.1007/978-3-319-47169-3_15",
  acknowledgement = ack-nhfb,
}

@InProceedings{Fourie:2016:NBS,
  author =       "D. Fourie and J. Leonard and M. Kaess",
  booktitle =    "{2016 IEEE/RSJ International Conference on Intelligent
                 Robots and Systems (IROS)}",
  title =        "A nonparametric belief solution to the {Bayes} tree",
  publisher =    pub-IEEE,
  address =      pub-IEEE:adr,
  pages =        "2189--2196",
  year =         "2016",
  DOI =          "https://doi.org/10.1109/IROS.2016.7759343",
  bibdate =      "Thu Apr 8 07:17:08 2021",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/julia.bib",
  acknowledgement = ack-nhfb,
  keywords =     "Julia programming language",
}

@Article{Frost:2016:PGJ,
  author =       "Simon D. W. Frost",
  title =        "\pkg{Gillespie.jl}: Stochastic Simulation Algorithm in
                 {Julia}",
  journal =      j-J-OPEN-SOURCE-SOFT,
  volume =       "1",
  number =       "3",
  pages =        "42:1--42:1",
  month =        jul,
  year =         "2016",
  CODEN =        "????",
  DOI =          "https://doi.org/10.21105/joss.00042",
  ISSN =         "2475-9066",
  ISSN-L =       "2475-9066",
  bibdate =      "Thu Sep 13 08:09:35 MDT 2018",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/joss.bib;
                 https://www.math.utah.edu/pub/tex/bib/julia.bib",
  URL =          "http://joss.theoj.org/papers/10.21105/joss.00042",
  acknowledgement = ack-nhfb,
  fjournal =     "Journal of Open Source Software",
  journal-URL =  "http://joss.theoj.org/;
                 https://github.com/openjournals/joss-papers/",
  onlinedate =   "30 July 2016",
  ORCID-numbers = "Simon DW Frost / 0000-0002-5207-9879",
}

@Article{Gonzalez:2016:CMC,
  author =       "J. D. Gonzalez and E. F. Lavia and S. Blanc",
  title =        "A Computational Method to Calculate the Exact Solution
                 for Acoustic Scattering by Fluid Spheroids",
  journal =      "{Acta Acustica} united with {Acustica}",
  volume =       "102",
  number =       "6",
  pages =        "1061--1071",
  month =        nov,
  year =         "2016",
  DOI =          "https://doi.org/10.3813/aaa.919019",
  bibdate =      "Thu Apr 8 08:02:29 2021",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/julia.bib",
  acknowledgement = ack-nhfb,
  keywords =     "Julia programming language",
}

@Book{Joshi:2016:JDS,
  author =       "Anshul Joshi",
  title =        "{Julia} for data science: explore the world of data
                 science from scratch with {Julia} by your side",
  publisher =    pub-PACKT,
  address =      pub-PACKT:adr,
  pages =        "339",
  year =         "2016",
  ISBN =         "1-78355-386-3 (e-book), 1-78528-969-1",
  ISBN-13 =      "978-1-78355-386-0 (e-book), 978-1-78528-969-9",
  LCCN =         "QA76.73.J8; T55.4-60.8",
  bibdate =      "Fri Apr 9 05:20:49 MDT 2021",
  bibsource =    "fsz3950.oclc.org:210/WorldCat;
                 https://www.math.utah.edu/pub/tex/bib/julia.bib",
  abstract =     "Explore the world of data science from scratch with
                 Julia by your side About This Book An in-depth
                 exploration of Julia's growing ecosystem of packages
                 Work with the most powerful open-source libraries for
                 deep learning, data wrangling, and data visualization
                 Learn about deep learning using \pkg{Mocha.jl} and give
                 speed and high performance to data analysis on large
                 data sets Who This Book Is For This book is aimed at
                 data analysts and aspiring data scientists who have a
                 basic knowledge of Julia or are completely new to it.
                 The book also appeals to those competent in R and
                 Python and wish to adopt Julia to improve their skills
                 set in Data Science. It would be beneficial if the
                 readers have a good background in statistics and
                 computational mathematics. What You Will Learn Apply
                 statistical models in Julia for data-driven decisions
                 Understanding the process of data munging and data
                 preparation using Julia Explore techniques to visualize
                 data using Julia and D3 based packages Using Julia to
                 create self-learning systems using cutting edge machine
                 learning algorithms Create supervised and unsupervised
                 machine learning systems using Julia. Also, explore
                 ensemble models Build a recommendation engine in Julia
                 Dive into Julia's deep learning framework and build a
                 system using Mocha.jl In Detail Julia is a fast and
                 high performing language that's perfectly suited to
                 data science with a mature package ecosystem and is now
                 feature complete. It is a good tool for a data science
                 practitioner. There was a famous post at Harvard
                 Business Review that Data Scientist is the sexiest job
                 of the 21st century.
                 (https://hbr.org/2012/10/data-scientist-the-sexiest-job-of-the-21st-century).
                 This book will help you get familiarised with Julia's
                 rich ecosystem, which is continuously evolving,
                 allowing you to stay on top of your game. This book
                 contains the essentials of data science and gives a
                 high-level overview of advanced statistics and
                 techniques. You will dive in and will work on
                 generating insights by performing inferential
                 statistics, and will reveal hidden patterns and trends
                 using data mining. This has the practical coverage of
                 statistics and machine learning. You will develop
                 knowledge to build statistical models and machine
                 learning systems in Julia with attractive
                 visualizations. You will then delve into the world of
                 Deep learning in Julia and will understand the
                 framework, \pkg{Mocha.jl} with which you can create
                 artificial neural networks and implement deep
                 learning.",
  acknowledgement = ack-nhfb,
  subject =      "Julia (Computer program language); Data structures
                 (Computer science); Information visualization;
                 COMPUTERS / Data Modeling and Design; Data structures
                 (Computer science); Information visualization; Julia
                 (Computer program language)",
  tableofcontents = "Preface \\
                 1: The Groundwork \\
                 Julia's Environment \\
                 Julia is different \\
                 Setting up the environment \\
                 Installing Julia (Linux) \\
                 Installing Julia (Mac) \\
                 Installing Julia (Windows) \\
                 Exploring the source code \\
                 Using REPL \\
                 Using Jupyter Notebook \\
                 Package management \\
                 Pkg.status() \\
                 package status \\
                 Pkg.add() -{\`E}adding packages \\
                 Working with unregistered packages \\
                 Pkg.update() -{\`E}package update \\
                 METADATA repository \\
                 Developing packages \\
                 Creating a new package \\
                 Parallel computation using Julia \\
                 Julia's key feature \\
                 multiple dispatch \\
                 Methods in multiple dispatch \\
                 Ambiguities \\
                 method definitions \\
                 Facilitating language interoperability \\
                 Calling Python code in Julia \\
                 Summary \\
                 References \\
                 2: Data Munging \\
                 What is data munging? \\
                 The data munging process \\
                 What is a DataFrame? \\
                 The NA data type and its importance \\
                 DataArray series-like data structure \\
                 DataFrames tabular data structures \\
                 Installation and using DataFrames.jl \\
                 Writing the data to a file \\
                 Working with DataFrames \\
                 Understanding DataFrames joins \\
                 The Split-Apply-Combine strategy \\
                 Reshaping the data \\
                 Sorting a datasetFormula \\
                 a special data type for mathematical expressions \\
                 Pooling data \\
                 Web scraping \\
                 Summary \\
                 References \\
                 3: Data Exploration \\
                 Sampling \\
                 Population \\
                 Weight vectors \\
                 Inferring column types \\
                 Basic statistical summaries \\
                 Calculating the mean of the array or dataframe \\
                 Scalar statistics \\
                 Standard deviations and variances \\
                 Measures of variation \\
                 Z-scores \\
                 Entropy \\
                 Quantiles \\
                 Modes \\
                 Summary of datasets \\
                 Scatter matrix and covariance \\
                 Computing deviations \\
                 Rankings \\
                 Counting functions \\
                 Histograms \\
                 Correlation analysis \\
                 Summary \\
                 References \\
                 4: Deep Dive into Inferential Statistics \\
                 Installation \\
                 Understanding the sampling distribution \\
                 Understanding the normal distribution \\
                 Parameter estimation \\
                 Type hierarchy in \pkg{Distributions.jl} \\
                 Understanding Sampleable \\
                 Representing probabilistic distributions \\
                 Univariate distributions \\
                 Retrieving parameters \\
                 Statistical functions \\
                 Evaluation of probability \\
                 Sampling in Univariate distributions \\
                 Understanding Discrete Univariate distributions and
                 types \\
                 Bernoulli distribution \\
                 Binomial distribution \\
                 Continuous distributions \\
                 Cauchy distribution \\
                 Chi distribution \\
                 Chi-square distribution \\
                 Truncated distributions \\
                 Truncated normal distributions \\
                 Understanding multivariate distributions \\
                 Multinomial distribution \\
                 Multivariate normal distribution \\
                 Dirichlet distribution \\
                 Understanding matrixvariate distributions \\
                 Wishart distribution \\
                 Inverse-Wishart distribution \\
                 Distribution fitting \\
                 Distribution selection \\
                 Symmetrical distributions \\
                 Skew distributions to the right \\
                 Skew distributions to the left \\
                 Maximum Likelihood Estimation \\
                 Sufficient statistics \\
                 Maximum-a-Posteriori estimation \\
                 Confidence interval \\
                 Interpreting the confidence intervals \\
                 Usage \\
                 Understanding z-score",
}

@Book{Kwon:2016:JPO,
  author =       "Changhyun Kwon",
  title =        "{Julia} programming for operations research: a primer
                 on computing",
  publisher =    "CreateSpace Independent Publishing Platform",
  address =      "North Charleston, SC, USA",
  pages =        "x + 236",
  year =         "2016",
  ISBN =         "1-5333-2879-X, 1-63462-196-4",
  ISBN-13 =      "978-1-5333-2879-3, 978-1-63462-196-0",
  LCCN =         "QA76.73.J85 K86 2016",
  bibdate =      "Thu Apr 8 16:52:30 MDT 2021",
  bibsource =    "fsz3950.oclc.org:210/WorldCat;
                 https://www.math.utah.edu/pub/tex/bib/julia.bib",
  abstract =     "This book is neither a textbook in numerical methods,
                 a comprehensive introductory book to Julia programming,
                 a textbook on numerical optimization, a complete manual
                 of optimization solvers, nor an introductory book to
                 computational science and engineering --- it is a
                 little bit of all.",
  acknowledgement = ack-nhfb,
  subject =      "Julia (Computer program language); Mathematical
                 models; Computer simulation; Julia (Computer program
                 language); Object-oriented programming (Computer
                 science); Computer simulation.; Dynamic programming.",
  tableofcontents = "1. Introduction and installation \\
                 2. Simple linear optimization \\
                 3. Basics of the Julia language \\
                 4. Selected topics in numerical methods \\
                 5. The simplex method \\
                 6. Network optimization problems \\
                 7. General optimization problems \\
                 8. Monte Carlo methods \\
                 9. Lagrangian relaxation \\
                 10. Parameters in optimization solvers \\
                 11. Useful and related packages",
}

@InProceedings{Maidens:2016:PDP,
  author =       "J. Maidens and A. Packard and M. Arcak",
  booktitle =    "{2016 IEEE 55th Conference on Decision and Control
                 (CDC)}",
  title =        "Parallel dynamic programming for optimal experiment
                 design in nonlinear systems",
  publisher =    pub-IEEE,
  address =      pub-IEEE:adr,
  pages =        "2894--2899",
  year =         "2016",
  DOI =          "https://doi.org/10.1109/CDC.2016.7798700w",
  bibdate =      "Thu Apr 8 07:17:08 2021",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/julia.bib",
  acknowledgement = ack-nhfb,
  keywords =     "Julia programming language",
}

@InProceedings{OMalley:2016:TJH,
  author =       "Daniel O'Malley and Velimir V. Vesselinov",
  editor =       "{IEEE}",
  booktitle =    "{2016 IEEE High Performance Extreme Computing
                 Conference (HPEC)}",
  title =        "{ToQ.jl}: a high-level programming language for
                 {D-Wave} machines based on {Julia}",
  publisher =    pub-IEEE,
  address =      pub-IEEE:adr,
  pages =        "1--7",
  year =         "2016",
  DOI =          "https://doi.org/10.1109/HPEC.2016.7761616",
  bibdate =      "Mon Dec 18 08:06:55 2023",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/julia.bib",
  acknowledgement = ack-nhfb,
  keywords =     "Julia programming language",
}

@Book{Rohit:2016:JC,
  author =       "Jalem Raj Rohit",
  title =        "{Julia} Cookbook",
  publisher =    pub-PACKT,
  address =      pub-PACKT:adr,
  pages =        "v + 157",
  year =         "2016",
  ISBN =         "1-78588-201-5, 1-78588-363-1 (e-book)",
  ISBN-13 =      "978-1-78588-201-2, 978-1-78588-363-7 (e-book)",
  LCCN =         "QA76.73.J8; T55.4-60.8",
  bibdate =      "Thu Apr 8 11:05:21 MDT 2021",
  bibsource =    "fsz3950.oclc.org:210/WorldCat;
                 https://www.math.utah.edu/pub/tex/bib/julia.bib",
  URL =          "http://sbiproxy.uqac.ca/login?url=https://international.scholarvox.com/book/88843406",
  abstract =     "Over 40 recipes to get you up and running with
                 programming using Julia. About This Book Follow a
                 practical approach to learn Julia programming the easy
                 way Get an extensive coverage of Julia's packages for
                 statistical analysis This recipe-based approach will
                 help you get familiar with the key concepts in Julia.
                 Who This Book Is For: This book is for data scientists
                 and data analysts who are familiar with the basics of
                 the Julia language. Prior experience of working with
                 high-level languages such as MATLAB, Python, R, or Ruby
                 is expected. What You Will Learn Extract and handle
                 your data with Julia Uncover the concepts of
                 metaprogramming in Julia Conduct statistical analysis
                 with \pkg{StatsBase.jl} and \pkg{Distributions.jl}.
                 Build your data science models Find out how to
                 visualize your data with Gadfly Explore big data
                 concepts in Julia. In Detail Want to handle everything
                 that Julia can throw at you and get the most of it
                 every day? This practical guide to programming with
                 Julia for performing numerical computation will make
                 you more productive and able work with data more
                 efficiently. The book starts with the main features of
                 Julia to help you quickly refresh your knowledge of
                 functions, modules, and arrays. We'll also show you how
                 to utilize the Julia language to identify, retrieve,
                 and transform data sets so you can perform data
                 analysis and data manipulation. Later on, you'll see
                 how to optimize data science programs with parallel
                 computing and memory allocation. You'll get familiar
                 with the concepts of package development and networking
                 to solve numerical problems using the Julia platform.
                 This book includes recipes on identifying and
                 classifying data science problems, data modelling, data
                 analysis, data manipulation, meta-programming,
                 multidimensional arrays, and parallel computing. By the
                 end of the book, you will acquire the skills to work
                 more effectively with your data. Style and approach
                 This book has a recipe-based approach to help you grasp
                 the concepts of Julia programming.",
  acknowledgement = ack-nhfb,
  subject =      "Julia (Computer program language); Programming
                 languages (Electronic computers); Julia (Computer
                 program language); Programming languages (Electronic
                 computers)",
  tableofcontents = "About the Author \\
                 About the Reviewer \\
                 www.PacktPub.com \\
                 Table of Contents \\
                 Preface \\
                 1: Extracting and Handling Data \\
                 Introduction \\
                 Why should we use Julia for data science? \\
                 Handling data with CSV files \\
                 Getting ready \\
                 How to do it and Handling data with TSV files \\
                 Getting ready \\
                 How to do it and Working with databases in Julia \\
                 Getting ready \\
                 How to do it and MySQL \\
                 PostgreSQL \\
                 There's more and MySQL \\
                 PostgreSQL \\
                 SQLite \\
                 Interacting with the Web \\
                 Getting ready \\
                 How to do it and GET request \\
                 There's more and \ldots{} \\
                 2: Metaprogramming \\
                 Introduction \\
                 Representation of a Julia program \\
                 Getting ready \\
                 How to do it and How it works \\
                 There's more \\
                 Symbols and expressions \\
                 Symbols \\
                 Getting ready \\
                 How to do it and How it works \\
                 There's more \\
                 Quoting \\
                 How to do it and How it works \\
                 Interpolation \\
                 How to do it and How it works \\
                 There's more \\
                 The Eval function \\
                 Getting ready \\
                 How to do it and How it works \\
                 Macros \\
                 Getting ready \\
                 How to do it and How it works \\
                 Metaprogramming with DataFrames \\
                 Getting ready \\
                 How to do it and How it works \\
                 3: Statistics with Julia \\
                 Introduction \\
                 Basic statistics concepts \\
                 Getting ready \\
                 How to do it and How it works \\
                 Descriptive statistics \\
                 Getting ready \\
                 How to do it and How it works \\
                 Deviation metrics \\
                 Getting ready \\
                 How to do it and How it works \\
                 Sampling \\
                 Getting ready \\
                 How to do it and How it works \\
                 Correlation analysis \\
                 Getting ready \\
                 How to do it and How it works \\
                 4: Building Data Science Models \\
                 Introduction \\
                 Dimensionality reduction \\
                 Getting ready \\
                 How to do it and How it works \\
                 Linear discriminant analysis \\
                 Getting ready \\
                 How to do it and How it works \\
                 Data preprocessing \\
                 Getting ready \\
                 How to do it and How it works \\
                 Linear regression \\
                 Getting ready \\
                 How to do it and How it works \\
                 Classification Getting ready \\
                 How to do it and How it works \\
                 Performance evaluation and model selection \\
                 Getting ready \\
                 How to do it and How it works \\
                 Cross validation \\
                 Getting ready \\
                 How to do it and How it works \\
                 Distances \\
                 Getting ready \\
                 How to do it and How it works \\
                 Distributions \\
                 Getting ready \\
                 How to do it and How it works \\
                 Time series analysis \\
                 Getting ready \\
                 How to do it and How it works \\
                 5: Working with Visualizations \\
                 Introduction \\
                 Plotting basic arrays \\
                 Getting ready \\
                 How to do it and How it works \\
                 Plotting dataframes \\
                 Getting ready \\
                 How to do it and How it works \\
                 Plotting functions \\
                 Getting ready \\
                 How to do it and how it works \\
                 Exploratory data analytics through plots \\
                 Getting ready \\
                 How to do it and How it works \\
                 Line plots \\
                 Getting ready \\
                 How to do it and How it works \\
                 Scatter plots \\
                 Getting ready \\
                 How to do it and How it works \\
                 Histograms \\
                 Getting ready \\
                 How to do it and How it works \\
                 Aesthetic customizations \\
                 Getting ready \\
                 How to do it and How it works \\
                 6: Parallel Computing \\
                 Introduction \\
                 Basic concepts of parallel computing \\
                 Getting ready \\
                 How to do it and How it works \\
                 Data movement \\
                 Getting ready \\
                 How to do it and How it works \\
                 Parallel maps and loop operations \\
                 Getting ready",
}

@InProceedings{Rong:2016:SCD,
  author =       "H. Rong and J. Park and L. Xiang and T. A. Anderson
                 and M. Smelyanskiy",
  booktitle =    "{2016 International Conference on Parallel
                 Architecture and Compilation Techniques (PACT)}",
  title =        "{Sparso}: Context-driven optimizations of sparse
                 linear algebra",
  publisher =    pub-IEEE,
  address =      pub-IEEE:adr,
  pages =        "247--259",
  year =         "2016",
  DOI =          "https://doi.org/10.1145/2967938.2967943",
  bibdate =      "Thu Apr 8 07:17:08 2021",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/julia.bib",
  acknowledgement = ack-nhfb,
  keywords =     "Julia programming language",
}

@Book{Sengupta:2016:JHP,
  author =       "Avik Sengupta",
  title =        "{Julia} high performance: design and develop high
                 performing programs with {Julia}",
  publisher =    pub-PACKT,
  address =      pub-PACKT:adr,
  pages =        "115",
  year =         "2016",
  ISBN =         "1-78588-091-8, 1-78588-782-3 (e-book)",
  ISBN-13 =      "978-1-78588-091-9, 978-1-78588-782-6 (e-book)",
  LCCN =         "QA76.76.D47",
  bibdate =      "Fri Apr 9 05:31:56 MDT 2021",
  bibsource =    "fsz3950.oclc.org:210/WorldCat;
                 https://www.math.utah.edu/pub/tex/bib/julia.bib",
  series =       "Community experience distilled",
  URL =          "http://proquest.tech.safaribooksonline.de/9781785880919",
  abstract =     "Design and develop high performing programs with
                 Julia. About This Book Learn to code high reliability
                 and high performance programs Stand out from the crowd
                 by developing code that runs faster than your peers'
                 codes This book is intended for developers who are
                 interested in high performance technical programming.
                 Who This Book Is For This book is for beginner and
                 intermediate Julia programmers who are interested in
                 high performance technical computing. You will have a
                 basic familiarity with Julia syntax, and have written
                 some small programs in the language. What You Will
                 Learn Discover the secrets behind Julia's speed Get a
                 sense of the possibilities and limitations of Julia's
                 performance Analyze the performance of Julia programs
                 Measure the time and memory taken by Julia programs
                 Create fast machine code using Julia's type information
                 Define and call functions without compromising Julia's
                 performance Understand number types in Julia Use Julia
                 arrays to write high performance code Get an overview
                 of Julia's distributed computing capabilities. In
                 Detail Julia is a high performance, high-level dynamic
                 language designed to address the requirements of
                 high-level numerical and scientific computing. Julia
                 brings solutions to the complexities faced by
                 developers while developing elegant and high performing
                 code. Julia High Performance will take you on a journey
                 to understand the performance characteristics of your
                 Julia programs, and enables you to utilize the promise
                 of near C levels of performance in Julia. You will
                 learn to analyze and measure the performance of Julia
                 code, understand how to avoid bottlenecks, and design
                 your program for the highest possible performance. In
                 this book, you will also see how Julia uses type
                 information to achieve its performance goals, and how
                 to use multiple dispatch to help the compiler to emit
                 high performance machine code. Numbers and their arrays
                 are obviously the key structures in scientific
                 computing --- you will see how Julia's design makes
                 them fast. The last chapter will give you a taste of
                 Julia's distributed computing capabilities. Style and
                 approach This is a hands-on manual that will give you
                 good explanations about the important concepts related
                 to Julia programming.",
  acknowledgement = ack-nhfb,
  subject =      "Application software; Programming languages
                 (Electronic computers); Development; Programming
                 languages (Electronic computers); Application software;
                 Programming languages (Electronic computers)",
  tableofcontents = "Preface \\
                 1: Julia is Fast \\
                 Julia \\
                 fast and dynamic \\
                 Designed for speed \\
                 JIT and LLVM \\
                 Types \\
                 How fast can Julia be? \\
                 Summary \\
                 2: Analyzing Julia Performance \\
                 Timing Julia code \\
                 Tic and Toc \\
                 The @time macro \\
                 The @timev macro \\
                 The Julia profiler \\
                 Using the profiler \\
                 ProfileView \\
                 Analyzing memory allocation \\
                 Using the memory allocation tracker \\
                 Statistically accurate benchmarking \\
                 Using Benchmarks.jl \\
                 Summary \\
                 3: Types in Julia \\
                 The Julia type system \\
                 Using types \\
                 Multiple dispatch \\
                 Abstract types \\
                 Julia's type hierarchy \\
                 Composite and immutable types \\
                 Type parameters \\
                 Type inference \\
                 Type-stability \\
                 Definitions \\
                 Fixing type-instability \\
                 Performance pitfalls \\
                 Identifying type-stability \\
                 Loop variables \\
                 Kernel methods \\
                 Types in storage locations \\
                 Arrays \\
                 Composite types \\
                 Parametric composite types \\
                 Summary \\
                 4: Functions and Macros \\
                 Structuring Julia Code for High Performance \\
                 Using globals \\
                 The trouble with globals \\
                 Fixing performance issues with globals \\
                 Inlining \\
                 Default inlining \\
                 Controlling inlining \\
                 Disabling inlining \\
                 Closures and anonymous functions \\
                 FastAnonymous \\
                 Using macros for performance \\
                 The Julia compilation process \\
                 Using macros \\
                 Evaluating a polynomial \\
                 Horner's method \\
                 The Horner macro \\
                 Generated functions \\
                 Using generated functions \\
                 Using generated functions for performance \\
                 Using named parameters \\
                 Summary \\
                 5: Fast Numbers \\
                 Numbers in Julia \\
                 Integers \\
                 Integer overflow \\
                 BigInt \\
                 The floating point \\
                 Unchecked conversions for unsigned integers \\
                 Trading performance for accuracy \\
                 The fastmath macro \\
                 The K-B-N summation \\
                 Subnormal numbers \\
                 Subnormal numbers to zero \\
                 Summary \\
                 6: Fast Arrays \\
                 Array internals in Julia \\
                 Array representation and storage \\
                 Column-wise storage \\
                 Bound checking \\
                 Removing the cost of bound checking \\
                 Configuring bound checks at startup \\
                 Allocations and in-place operations \\
                 Preallocating function output \\
                 Mutating versions \\
                 Array views \\
                 SIMD parallelization \\
                 Yeppp! \\
                 Writing generic library functions with arrays \\
                 Summary \\
                 7: Beyond the Single Processor \\
                 Parallelism in Julia \\
                 Starting a cluster \\
                 Communication between Julia processes \\
                 Programming parallel tasks \\
                 @everywhere \\
                 @spawn \\
                 Parallel for \\
                 Parallel map \\
                 Distributed arrays \\
                 Shared arrays \\
                 Threading \\
                 Summary \\
                 Index",
}

@InProceedings{Spoto:2016:JSA,
  author =       "Fausto Spoto",
  booktitle =    "{Static Analysis}",
  title =        "The {Julia} Static Analyzer for {Java}",
  publisher =    pub-SV,
  address =      pub-SV:adr,
  pages =        "39--57",
  year =         "2016",
  DOI =          "https://doi.org/10.1007/978-3-662-53413-7_3",
  bibdate =      "Fri Apr 9 07:54:52 MDT 2021",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/java2010.bib;
                 https://www.math.utah.edu/pub/tex/bib/julia.bib",
  URL =          "http://link.springer.com/chapter/10.1007/978-3-662-53413-7_3",
  acknowledgement = ack-nhfb,
}

@InProceedings{Vidhyaa:2016:HED,
  author =       "V. G. Vidhyaa and S. A. Rajalakshmi and R. Raghavan
                 and G. S. V. {Venu Gopal} and R. Gandhiraj",
  booktitle =    "{2016 International Conference on Communication and
                 Signal Processing (ICCSP)}",
  title =        "{Huffman} encoding and decoding algorithm using
                 {IJulia}",
  publisher =    pub-IEEE,
  address =      pub-IEEE:adr,
  pages =        "0587--0591",
  year =         "2016",
  DOI =          "https://doi.org/10.1109/ICCSP.2016.7754207",
  bibdate =      "Thu Apr 8 07:17:08 2021",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/julia.bib",
  acknowledgement = ack-nhfb,
  keywords =     "Julia programming language",
}

@Book{Voulgaris:2016:JDS,
  author =       "Zacharias Voulgaris",
  title =        "{Julia} for data science",
  publisher =    "Technics Publications LLC",
  address =      "Basking Ridge, NJ, USA",
  pages =        "x + 350",
  year =         "2016",
  ISBN =         "1-63462-130-1 (print), 1-63462-131-X (Kindle),
                 1-63462-132-8 (ePub)",
  ISBN-13 =      "978-1-63462-130-4 (print), 978-1-63462-131-1 (Kindle),
                 978-1-63462-132-8 (ePub)",
  LCCN =         "QA76.73.J8 V68 2016",
  bibdate =      "Thu Apr 8 10:55:28 MDT 2021",
  bibsource =    "fsz3950.oclc.org:210/WorldCat;
                 https://www.math.utah.edu/pub/tex/bib/julia.bib",
  acknowledgement = ack-nhfb,
  subject =      "Julia (Computer program language); Programming
                 languages (Electronic computers); Application software;
                 Development; Development; Julia (Computer program
                 language); Programming languages (Electronic
                 computers)",
}

@Article{Bassen:2017:JCM,
  author =       "David M. Bassen and Michael Vilkhovoy and Mason Minot
                 and Jonathan T. Butcher and Jeffrey D. Varner",
  title =        "{JuPOETs}: a constrained multiobjective optimization
                 approach to estimate biochemical model ensembles in the
                 {Julia} programming language",
  journal =      "{BMC} Systems Biology",
  volume =       "11",
  number =       "1",
  month =        jan,
  year =         "2017",
  CODEN =        "BSBMCC",
  DOI =          "https://doi.org/10.1186/s12918-016-0380-2",
  ISSN =         "1752-0509",
  ISSN-L =       "1752-0509",
  bibdate =      "Thu Apr 8 11:13:46 2021",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/julia.bib",
  URL =          "http://link.springer.com/article/10.1186/s12918-016-0380-2",
  acknowledgement = ack-nhfb,
}

@Article{Bezanson:2017:JFA,
  author =       "Jeff Bezanson and Alan Edelman and Stefan Karpinski
                 and Viral B. Shah",
  title =        "{Julia}: a Fresh Approach to Numerical Computing",
  journal =      j-SIAM-REVIEW,
  volume =       "59",
  number =       "1",
  pages =        "65--98",
  month =        "????",
  year =         "2017",
  CODEN =        "SIREAD",
  DOI =          "https://doi.org/10.1137/141000671",
  ISSN =         "0036-1445 (print), 1095-7200 (electronic)",
  ISSN-L =       "0036-1445",
  bibdate =      "Fri Mar 10 06:16:32 MST 2017",
  bibsource =    "http://epubs.siam.org/toc/siread/59/1;
                 https://www.math.utah.edu/pub/tex/bib/julia.bib;
                 https://www.math.utah.edu/pub/tex/bib/siamreview.bib",
  acknowledgement = ack-nhfb,
  fjournal =     "SIAM Review",
  journal-URL =  "http://epubs.siam.org/sirev",
  onlinedate =   "January 2017",
}

@InProceedings{Blas:2017:STD,
  author =       "M. J. Blas and F. Hauque and S. Re and M. Castellaro",
  booktitle =    "{2017 XLIII Latin American Computer Conference
                 (CLEI)}",
  title =        "A support tool designed as didactic material for
                 teaching and learning programming",
  publisher =    pub-IEEE,
  address =      pub-IEEE:adr,
  pages =        "1--10",
  year =         "2017",
  DOI =          "https://doi.org/10.1109/CLEI.2017.8226382",
  bibdate =      "Thu Apr 8 07:17:08 2021",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/julia.bib",
  acknowledgement = ack-nhfb,
  keywords =     "Julia programming language",
}

@Article{Datseris:2017:PDJ,
  author =       "George Datseris",
  title =        "\pkg{DynamicalBilliards.jl}: An easy-to-use, modular
                 and extendable {Julia} package for {Dynamical Billiard}
                 systems in two dimensions",
  journal =      j-J-OPEN-SOURCE-SOFT,
  volume =       "2",
  number =       "19",
  pages =        "458:1--458:4",
  month =        nov,
  year =         "2017",
  CODEN =        "????",
  DOI =          "https://doi.org/10.21105/joss.00458",
  ISSN =         "2475-9066",
  ISSN-L =       "2475-9066",
  bibdate =      "Thu Sep 13 08:09:35 MDT 2018",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/joss.bib;
                 https://www.math.utah.edu/pub/tex/bib/julia.bib",
  URL =          "http://joss.theoj.org/papers/10.21105/joss.00458",
  acknowledgement = ack-nhfb,
  fjournal =     "Journal of Open Source Software",
  journal-URL =  "http://joss.theoj.org/;
                 https://github.com/openjournals/joss-papers/",
  onlinedate =   "19 November 2017",
  ORCID-numbers = "George Datseris / 0000-0002-6427-2385",
}

@Article{Dunning:2017:JML,
  author =       "Iain Dunning and Joey Huchette and Miles Lubin",
  title =        "{JuMP}: a Modeling Language for Mathematical
                 Optimization",
  journal =      j-SIAM-REVIEW,
  volume =       "59",
  number =       "2",
  pages =        "295--320",
  month =        jan,
  year =         "2017",
  CODEN =        "SIREAD",
  DOI =          "https://doi.org/10.1137/15m1020575",
  ISSN =         "0036-1445 (print), 1095-7200 (electronic)",
  ISSN-L =       "0036-1445",
  bibdate =      "Thu Apr 8 08:02:29 2021",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/julia.bib",
  acknowledgement = ack-nhfb,
  fjournal =     "SIAM Review",
  journal-URL =  "http://epubs.siam.org/sirev",
  keywords =     "Julia programming language",
}

@InProceedings{Edelman:2017:MOE,
  author =       "Alan Edelman",
  editor =       "{IEEE}",
  booktitle =    "{2017 IEEE International Conference on Big Data (Big
                 Data)}",
  title =        "A more open efficient future for {AI} development and
                 data science with an introduction to {Julia}",
  publisher =    pub-IEEE,
  address =      pub-IEEE:adr,
  pages =        "2--2",
  year =         "2017",
  DOI =          "https://doi.org/10.1109/BigData.2017.8257901",
  bibdate =      "Mon Dec 18 08:06:55 2023",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/julia.bib",
  acknowledgement = ack-nhfb,
  keywords =     "Julia programming language",
}

@InProceedings{Fieker:2017:NH,
  author =       "Claus Fieker and William Hart and Tommy Hofmann and
                 Fredrik Johansson",
  booktitle =    "{Proceedings of the 2017 ACM on International
                 Symposium on Symbolic and Algebraic Computation}",
  title =        "{Nemo\slash Hecke}",
  publisher =    pub-ACM,
  address =      pub-ACM:adr,
  month =        jul,
  year =         "2017",
  DOI =          "https://doi.org/10.1145/3087604.3087611",
  bibdate =      "Thu Apr 8 08:02:29 2021",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/julia.bib",
  acknowledgement = ack-nhfb,
  keywords =     "Julia programming language",
}

@Article{Heirendt:2017:PDJ,
  author =       "Laurent Heirendt and Ines Thiele and Ronan M. T.
                 Fleming",
  title =        "\pkg{DistributedFBA.jl}: High-level, high-performance
                 flux balance analysis in {Julia}",
  journal =      j-BIOINFORMATICS,
  pages =        "1--3",
  month =        jan,
  year =         "2017",
  DOI =          "https://doi.org/10.1093/bioinformatics/btw838",
  ISSN =         "1367-4803 (print), 1367-4811 (electronic)",
  ISSN-L =       "1367-4803",
  bibdate =      "Fri Apr 9 06:05:36 2021",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/julia.bib",
  acknowledgement = ack-nhfb,
  fjournal =     "Bioinformatics",
  journal-URL =  "http://bioinformatics.oxfordjournals.org/",
}

@InProceedings{Hylton:2017:PEC,
  author =       "A. Hylton and G. Henselman-Petrusek and J. Sang and R.
                 Short",
  booktitle =    "{2017 IEEE 36th International Performance Computing
                 and Communications Conference (IPCCC)}",
  title =        "Performance enhancement of a computational persistent
                 homology package",
  publisher =    pub-IEEE,
  address =      pub-IEEE:adr,
  pages =        "1--8",
  year =         "2017",
  DOI =          "https://doi.org/10.1109/PCCC.2017.8280468",
  bibdate =      "Thu Apr 8 07:17:08 2021",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/julia.bib",
  acknowledgement = ack-nhfb,
  keywords =     "Julia programming language",
}

@Article{Jacobsen:2017:GSJ,
  author =       "Robert Dahl Jacobsen and Morten Nielsen and Morten
                 Grud Rasmussen",
  title =        "Generalized Sampling in {Julia}",
  journal =      j-J-OPEN-RES-SOFT,
  volume =       "5",
  number =       "1",
  pages =        "12--??",
  day =          "20",
  month =        apr,
  year =         "2017",
  CODEN =        "????",
  DOI =          "https://doi.org/10.5334/jors.157",
  ISSN =         "2049-9647",
  ISSN-L =       "2049-9647",
  bibdate =      "Sat Sep 8 10:03:50 MDT 2018",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/jors.bib;
                 https://www.math.utah.edu/pub/tex/bib/julia.bib",
  URL =          "https://openresearchsoftware.metajnl.com/articles/10.5334/jors.157/",
  acknowledgement = ack-nhfb,
  fjournal =     "Journal of Open Research Software",
  journal-URL =  "https://openresearchsoftware.metajnl.com/issue/archive/",
}

@Article{Lauwens:2017:PRC,
  author =       "Ben Lauwens",
  title =        "\pkg{ResumableFunctions}: {C\#} sharp style generators
                 for {Julia}",
  journal =      j-J-OPEN-SOURCE-SOFT,
  volume =       "2",
  number =       "18",
  pages =        "400:1--400:2",
  month =        oct,
  year =         "2017",
  CODEN =        "????",
  DOI =          "https://doi.org/10.21105/joss.00400",
  ISSN =         "2475-9066",
  ISSN-L =       "2475-9066",
  bibdate =      "Thu Sep 13 08:09:35 MDT 2018",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/csharp.bib;
                 https://www.math.utah.edu/pub/tex/bib/joss.bib;
                 https://www.math.utah.edu/pub/tex/bib/julia.bib",
  URL =          "http://joss.theoj.org/papers/10.21105/joss.00400",
  acknowledgement = ack-nhfb,
  fjournal =     "Journal of Open Source Software",
  journal-URL =  "http://joss.theoj.org/;
                 https://github.com/openjournals/joss-papers/",
  onlinedate =   "31 October 2017",
  ORCID-numbers = "Ben Lauwens / 0000-0003-0761-6265",
}

@InProceedings{Milechin:2017:DED,
  author =       "Lauren Milechin and Vijay Gadepally and Siddharth
                 Samsi and Jeremy Kepner and Alexander Chen and Dylan
                 Hutchison",
  booktitle =    "{2017 IEEE High Performance Extreme Computing
                 Conference (HPEC)}",
  title =        "{D4M 3.0}: Extended database and language
                 capabilities",
  publisher =    pub-IEEE,
  address =      pub-IEEE:adr,
  pages =        "1--6",
  month =        sep,
  year =         "2017",
  DOI =          "https://doi.org/10.1109/hpec.2017.8091083",
  bibdate =      "Thu Apr 8 08:02:29 2021",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/julia.bib",
  acknowledgement = ack-nhfb,
  keywords =     "Julia programming language",
}

@InProceedings{Moore:2017:ITI,
  author =       "D. G. Moore and G. Valentini and S. I. Walker and M.
                 Levin",
  booktitle =    "{2017 IEEE Symposium Series on Computational
                 Intelligence (SSCI)}",
  title =        "{Inform}: a toolkit for information-theoretic analysis
                 of complex systems",
  publisher =    pub-IEEE,
  address =      pub-IEEE:adr,
  pages =        "1--8",
  year =         "2017",
  DOI =          "https://doi.org/10.1109/SSCI.2017.8285197",
  bibdate =      "Thu Apr 8 07:17:08 2021",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/julia.bib",
  acknowledgement = ack-nhfb,
  keywords =     "Julia programming language",
}

@Book{Nagar:2017:BJP,
  author =       "Sandeep Nagar",
  title =        "Beginning {Julia} Programming: For Engineers and
                 Scientists",
  publisher =    pub-APRESS,
  address =      pub-APRESS:adr,
  pages =        "xxi + 351 + 20 + 18",
  year =         "2017",
  DOI =          "https://doi.org/10.1007/978-1-4842-3171-5",
  ISBN =         "1-4842-3170-8, 1-4842-3171-6",
  ISBN-13 =      "978-1-4842-3170-8, 978-1-4842-3171-5",
  LCCN =         "QA76.7-76.73; QA76.76.C65",
  bibdate =      "Thu Apr 8 10:39:19 MDT 2021",
  bibsource =    "fsz3950.oclc.org:210/WorldCat;
                 https://www.math.utah.edu/pub/tex/bib/julia.bib",
  URL =          "http://www.springerlink.com/content/978-1-4842-3171-5",
  abstract =     "Get started with Julia for engineering and numerical
                 computing, especially data science, machine learning,
                 and scientific computing applications. This book
                 explains how Julia provides the functionality,
                 ease-of-use and intuitive syntax of R, Python, MATLAB,
                 SAS, or Stata combined with the speed, capacity, and
                 performance of C, C++, or Java. You'll learn the OOP
                 principles required to get you started, then how to do
                 basic mathematics with Julia. Other core functionality
                 of Julia that you'll cover, includes working with
                 complex numbers, rational and irrational numbers,
                 rings, and fields. Beginning Julia Programming takes
                 you beyond these basics to harness Julia's powerful
                 features for mathematical functions in Julia, arrays
                 for matrix operations, plotting, and more. Along the
                 way, you also learn how to manage strings, write
                 functions, work with control flows, and carry out I/O
                 to implement and leverage the mathematics needed for
                 your data science and analysis projects. ``Julia walks
                 like Python and runs like C''. This phrase explains why
                 Julia is quickly growing as the most favored option for
                 data analytics and numerical computation. After reading
                 and using this book, you'll have the essential
                 knowledge and skills to build your first Julia-based
                 application. You will: Obtain core skills in Julia
                 Apply Julia in engineering and science applications
                 Work with mathematical functions in Julia Use arrays,
                 strings, functions, control flow, and I/O in Julia
                 Carry out plotting and display basic graphics .",
  acknowledgement = ack-nhfb,
  subject =      "Computer science; Computer programming; Programming
                 languages (Electronic computers); Mathematical logic;
                 Programming Languages, Compilers, Interpreters;
                 Mathematical Logic and Formal Languages; Big Data;
                 Programming Techniques; Inform{\'a}tica; Logic,
                 Symbolic and mathematical; Computer programming;
                 Computer science.; Logic, Symbolic and mathematical;
                 Programming languages (Electronic computers)",
  tableofcontents = "1. Introduction \\
                 2. Object Oriented Programming \\
                 3. Basic Mathematics with Julia \\
                 4. Complex Numbers \\
                 5. Rational and Irrational numbers \\
                 6. Mathematical Functions \\
                 7. Arrays \\
                 8. Arrays for Matrix Operations \\
                 9. Strings \\
                 10. Functions \\
                 11. Control Flow \\
                 12. Input Output \\
                 13. Plotting",
}

@InProceedings{Nagar:2017:BMJ,
  author =       "Sandeep Nagar",
  booktitle =    "{Beginning Julia Programming}",
  title =        "Basic Math with {Julia}",
  publisher =    pub-SV,
  address =      pub-SV:adr,
  pages =        "??--??",
  year =         "2017",
  DOI =          "https://doi.org/10.1007/978-1-4842-3171-5_3",
  bibdate =      "Fri Apr 9 07:54:52 MDT 2021",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/julia.bib",
  URL =          "http://link.springer.com/chapter/10.1007/978-1-4842-3171-5_3",
  acknowledgement = ack-nhfb,
}

@Article{Pastell:2017:PWJ,
  author =       "Matti Pastell",
  title =        "\pkg{Weave.jl}: Scientific Reports Using {Julia}",
  journal =      j-J-OPEN-SOURCE-SOFT,
  volume =       "2",
  number =       "11",
  pages =        "204:1--204:1",
  month =        mar,
  year =         "2017",
  CODEN =        "????",
  DOI =          "https://doi.org/10.21105/joss.00204",
  ISSN =         "2475-9066",
  ISSN-L =       "2475-9066",
  bibdate =      "Thu Sep 13 08:09:35 MDT 2018",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/joss.bib;
                 https://www.math.utah.edu/pub/tex/bib/julia.bib;
                 https://www.math.utah.edu/pub/tex/bib/litprog.bib",
  URL =          "http://joss.theoj.org/papers/10.21105/joss.00204",
  acknowledgement = ack-nhfb,
  fjournal =     "Journal of Open Source Software",
  journal-URL =  "http://joss.theoj.org/;
                 https://github.com/openjournals/joss-papers/",
  onlinedate =   "22 March 2017",
  ORCID-numbers = "Matti Pastell / 0000-0002-5810-4801",
}

@InProceedings{Poulding:2017:ART,
  author =       "S. Poulding and R. Feldt",
  booktitle =    "{2017 IEEE International Conference on Software
                 Testing, Verification and Validation (ICST)}",
  title =        "Automated Random Testing in Multiple Dispatch
                 Languages",
  publisher =    pub-IEEE,
  address =      pub-IEEE:adr,
  pages =        "333--344",
  year =         "2017",
  DOI =          "https://doi.org/10.1109/ICST.2017.37",
  bibdate =      "Thu Apr 8 07:17:08 2021",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/julia.bib",
  acknowledgement = ack-nhfb,
  keywords =     "Julia programming language",
}

@Article{Rackauckas:2017:PDJ,
  author =       "Christopher Rackauckas and Qing Nie",
  title =        "\pkg{DifferentialEquations.jl} --- A Performant and
                 Feature-Rich Ecosystem for Solving Differential
                 Equations in {Julia}",
  journal =      j-J-OPEN-RES-SOFT,
  volume =       "5",
  number =       "1",
  pages =        "15--??",
  day =          "25",
  month =        may,
  year =         "2017",
  CODEN =        "????",
  DOI =          "https://doi.org/10.5334/jors.151",
  ISSN =         "2049-9647",
  ISSN-L =       "2049-9647",
  bibdate =      "Sat Sep 8 10:03:50 MDT 2018",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/jors.bib;
                 https://www.math.utah.edu/pub/tex/bib/julia.bib",
  URL =          "https://openresearchsoftware.metajnl.com/articles/10.5334/jors.151/",
  acknowledgement = ack-nhfb,
  fjournal =     "Journal of Open Research Software",
  journal-URL =  "https://openresearchsoftware.metajnl.com/issue/archive/",
}

@Article{Ruthotto:2017:JFJ,
  author =       "Lars Ruthotto and Eran Treister and Eldad Haber",
  title =        "{jInv} --- a Flexible {Julia} Package for {PDE}
                 Parameter Estimation",
  journal =      j-SIAM-J-SCI-COMP,
  volume =       "39",
  number =       "5",
  pages =        "S702--S722",
  month =        "????",
  year =         "2017",
  CODEN =        "SJOCE3",
  DOI =          "https://doi.org/10.1137/16M1081063",
  ISSN =         "1064-8275 (print), 1095-7197 (electronic)",
  ISSN-L =       "1064-8275",
  bibdate =      "Fri Jan 12 07:30:22 MST 2018",
  bibsource =    "http://epubs.siam.org/toc/sjoce3/39/5;
                 https://www.math.utah.edu/pub/tex/bib/julia.bib;
                 https://www.math.utah.edu/pub/tex/bib/siamjscicomput.bib",
  acknowledgement = ack-nhfb,
  fjournal =     "SIAM Journal on Scientific Computing",
  journal-URL =  "http://epubs.siam.org/sisc",
  onlinedate =   "January 2017",
}

@InProceedings{Serrano:2017:MIP,
  author =       "E. Serrano and J. G. Blas and J. Carretero and M.
                 Abella and M. Desco",
  booktitle =    "{2017 17th IEEE/ACM International Symposium on
                 Cluster, Cloud and Grid Computing (CCGRID)}",
  title =        "Medical Imaging Processing on a Big Data Platform
                 Using {Python}: Experiences with Heterogeneous and
                 Homogeneous Architectures",
  publisher =    pub-IEEE,
  address =      pub-IEEE:adr,
  pages =        "830--837",
  year =         "2017",
  DOI =          "https://doi.org/10.1109/CCGRID.2017.56",
  bibdate =      "Thu Apr 8 07:17:08 2021",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/julia.bib;
                 https://www.math.utah.edu/pub/tex/bib/python.bib",
  acknowledgement = ack-nhfb,
  keywords =     "Julia programming language",
}

@Article{Sinaie:2017:PMP,
  author =       "Sina Sinaie and Viet Ha Nguyen and Chi Thanh Nguyen
                 and St{\'e}phane Bordas",
  title =        "Programming the material point method in {Julia}",
  journal =      j-ADV-ENG-SOFTWARE,
  volume =       "105",
  number =       "??",
  pages =        "17--29",
  month =        mar,
  year =         "2017",
  CODEN =        "AESODT",
  DOI =          "https://doi.org/10.1016/j.advengsoft.2017.01.008",
  ISSN =         "0965-9978 (print), 0141-1195 (electronic)",
  ISSN-L =       "0965-9978",
  bibdate =      "Fri Apr 09 05:58:14 2021",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/julia.bib",
  URL =          "https://www.sciencedirect.com/science/article/pii/S0965997816302769",
  abstract =     "This article presents the implementation of the
                 material point method (MPM) using Julia. Julia is an
                 open source, multi-platform, high-level,
                 high-performance dynamic programming language for
                 technical computing, with syntax that is familiar to
                 Matlab and Python programmers. MPM is a hybrid
                 particle-grid approach that combines the advantages of
                 Eulerian and Lagrangian methods and is suitable for
                 complex solid mechanics problems involving contact,
                 impact and large deformations. We will show that a
                 Julia based MPM code, which is short, compact and
                 readable and uses only Julia built in features,
                 performs much better (with speed up of up to 8) than a
                 similar Matlab based MPM code for large strain solid
                 mechanics simulations. We share our experiences of
                 implementing MPM in Julia and demonstrate that Julia is
                 a very interesting platform for rapid development in
                 the field of scientific computing.",
  acknowledgement = ack-nhfb,
  fjournal =     "Advances in Engineering Software",
  journal-URL =  "https://www.sciencedirect.com/journal/advances-in-engineering-software",
  keywords =     "Julia, Material point method (MPM), High-performance
                 dynamic programming language, Technical computing",
}

@InProceedings{Thankachan:2017:IPO,
  author =       "R. V. Thankachan and E. R. Hein and B. P. Swenson and
                 J. P. Fairbanks",
  booktitle =    "{2017 IEEE High Performance Extreme Computing
                 Conference (HPEC)}",
  title =        "Integrating productivity-oriented programming
                 languages with high-performance data structures",
  publisher =    pub-IEEE,
  address =      pub-IEEE:adr,
  pages =        "1--8",
  year =         "2017",
  DOI =          "https://doi.org/10.1109/HPEC.2017.8091068",
  bibdate =      "Thu Apr 8 07:17:08 2021",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/julia.bib",
  acknowledgement = ack-nhfb,
  keywords =     "Julia programming language",
}

@InProceedings{Ahmadi:2018:PET,
  author =       "Shervin Parvini Ahmadi and Anders Hansson",
  editor =       "{IEEE}",
  booktitle =    "{2018 22nd International Conference on System Theory,
                 Control and Computing (ICSTCC)}",
  title =        "Parallel Exploitation for Tree-Structured Coupled
                 Quadratic Programming in {Julia}",
  publisher =    pub-IEEE,
  address =      pub-IEEE:adr,
  pages =        "597--602",
  year =         "2018",
  DOI =          "https://doi.org/10.1109/ICSTCC.2018.8540646",
  bibdate =      "Mon Dec 18 08:06:55 2023",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/julia.bib",
  acknowledgement = ack-nhfb,
}

@Book{Balbaert:2018:JP,
  author =       "Ivo Balbaert",
  title =        "{Julia 1.0} Programming",
  publisher =    pub-PACKT,
  address =      pub-PACKT:adr,
  pages =        "iv + 184",
  year =         "2018",
  ISBN =         "1-78899-909-6",
  ISBN-13 =      "978-1-78899-909-0",
  LCCN =         "QA76.73.J85 2018",
  bibdate =      "Thu Apr 8 11:10:55 MDT 2021",
  bibsource =    "fsz3950.oclc.org:210/WorldCat;
                 https://www.math.utah.edu/pub/tex/bib/julia.bib",
  URL =          "http://international.scholarvox.com/book/88863229",
  abstract =     "Enter the exciting world of Julia, a high-performance
                 language for technical computing Key Features Leverage
                 Julia's high speed and efficiency for your applications
                 Work with Julia in a multi-core, distributed, and
                 networked environment Apply Julia to tackle problems
                 concurrently and in a distributed environment Book
                 Description The release of Julia 1.0 is now ready to
                 change the technical world by combining the high
                 productivity and ease of use of Python and R with the
                 lightning-fast speed of C++. Julia 1.0 programming
                 gives you a head start in tackling your numerical and
                 data problems. You will begin by learning how to set up
                 a running Julia platform, before exploring its various
                 built-in types. With the help of practical examples,
                 this book walks you through two important collection
                 types: arrays and matrices. In addition to this, you
                 will be taken through how type conversions and
                 promotions work. In the course of the book, you will be
                 introduced to the homo-iconicity and metaprogramming
                 concepts in Julia. You will understand how Julia
                 provides different ways to interact with an operating
                 system, as well as other languages, and then you'll
                 discover what macros are. Once you have grasped the
                 basics, you'll study what makes Julia suitable for
                 numerical and scientific computing, and learn about the
                 features provided by Julia. By the end of this book,
                 you will also have learned how to run external
                 programs. This book covers all you need to know about
                 Julia in order to leverage its high speed and
                 efficiency for your applications. What you will learn
                 Set up your Julia environment to achieve high
                 productivity Create your own types to extend the
                 built-in type system Visualize your data in Julia with
                 plotting packages Explore the use of built-in macros
                 for testing and debugging, among other uses Apply Julia
                 to tackle problems concurrently Integrate Julia with
                 other languages such as C, Python, and MATLAB Who this
                 book is for Julia 1.0 Programming is for you if you are
                 a statistician or data scientist who wants a crash
                 course in the Julia programming language while building
                 big data applications. A basic knowledge of mathematics
                 is needed to understand the various methods that are
                 used or created during the course of the book to
                 exploit the capabilities that Julia is designed with.
                 Downloading the example code for this book You can
                 download the example code files for all Packt books you
                 have purchased from your account at
                 http://www.PacktPub.com.",
  acknowledgement = ack-nhfb,
}

@Article{Bezanson:2018:JDP,
  author =       "Jeff Bezanson and Jiahao Chen and Benjamin Chung and
                 Stefan Karpinski and Viral B. Shah and Jan Vitek and
                 Lionel Zoubritzky",
  title =        "{Julia}: dynamism and performance reconciled by
                 design",
  journal =      j-PACMPL,
  volume =       "2",
  number =       "OOPSLA",
  pages =        "120:1--120:23",
  month =        oct,
  year =         "2018",
  DOI =          "https://doi.org/10.1145/3276490",
  ISSN =         "2475-1421",
  bibdate =      "Sat Aug 8 07:56:30 MDT 2020",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/julia.bib;
                 https://www.math.utah.edu/pub/tex/bib/pacmpl.bib;
                 https://www.math.utah.edu/pub/tex/bib/python.bib",
  URL =          "https://dl.acm.org/doi/abs/10.1145/3276490",
  abstract =     "Julia is a programming language for the scientific
                 community that combines features of productivity
                 languages, such as Python or MATLAB, with
                 characteristics of performance-oriented languages, such
                 as C++ or Fortran. Julia's productivity features
                 include: dynamic typing, automatic memory management,
                 rich type annotations, and multiple dispatch. At the
                 same time, Julia allows programmers to control memory
                 layout and leverages a specializing just-in-time
                 compiler to eliminate much of the overhead of those
                 features. This paper details the design choices made by
                 the creators of Julia and reflects on the implications
                 of those choices for performance and usability.",
  acknowledgement = ack-nhfb,
  articleno =    "120",
  fjournal =     "Proceedings of the ACM on Programming Languages",
  journal-URL =  "https://pacmpl.acm.org/",
}

@InProceedings{Biel:2018:DSA,
  author =       "Martin Biel and Mikael Johansson",
  editor =       "{IEEE}",
  booktitle =    "{2018 IEEE\slash ACM Parallel Applications Workshop,
                 Alternatives To MPI (PAW-ATM)}",
  title =        "Distributed {L}-shaped Algorithms in {Julia}",
  publisher =    pub-IEEE,
  address =      pub-IEEE:adr,
  pages =        "57--69",
  year =         "2018",
  DOI =          "https://doi.org/10.1109/PAW-ATM.2018.00011",
  bibdate =      "Mon Dec 18 08:06:55 2023",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/julia.bib",
  acknowledgement = ack-nhfb,
  keywords =     "Julia programming language",
}

@Article{Blankrot:2018:PPS,
  author =       "Boaz Blankrot and Clemens Heitzinger",
  title =        "\pkg{ParticleScattering}: Solving and optimizing
                 multiple-scattering problems in {Julia}",
  journal =      j-J-OPEN-SOURCE-SOFT,
  volume =       "3",
  number =       "25",
  pages =        "691:1--691:3",
  month =        may,
  year =         "2018",
  CODEN =        "????",
  DOI =          "https://doi.org/10.21105/joss.00691",
  ISSN =         "2475-9066",
  ISSN-L =       "2475-9066",
  bibdate =      "Thu Sep 13 08:09:35 MDT 2018",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/joss.bib;
                 https://www.math.utah.edu/pub/tex/bib/julia.bib",
  URL =          "http://joss.theoj.org/papers/10.21105/joss.00691",
  acknowledgement = ack-nhfb,
  fjournal =     "Journal of Open Source Software",
  journal-URL =  "http://joss.theoj.org/;
                 https://github.com/openjournals/joss-papers/",
  onlinedate =   "14 May 2018",
  ORCID-numbers = "Boaz Blankrot / 0000-0003-3364-9298; Clemens
                 Heitzinger / 0000-0003-1613-5164",
}

@Book{Bornemann:2018:NLA,
  author =       "Folkmar Bornemann",
  title =        "Numerical Linear Algebra: a Concise Introduction with
                 {MATLAB} and {Julia}",
  publisher =    "Springer International Publishing",
  address =      "Cham, Switzerland",
  pages =        "x + 153",
  year =         "2018",
  DOI =          "https://doi.org/10.1007/978-3-319-74222-9",
  ISBN =         "3-319-74221-3, 3-319-74222-1 (e-book)",
  ISBN-13 =      "978-3-319-74221-2 (print), 978-3-319-74222-9
                 (e-book)",
  ISSN =         "1615-2085",
  LCCN =         "QA184-205; QA297-299.4",
  bibdate =      "Thu Apr 8 17:01:32 MDT 2021",
  bibsource =    "fsz3950.oclc.org:210/WorldCat;
                 https://www.math.utah.edu/pub/tex/bib/julia.bib;
                 https://www.math.utah.edu/pub/tex/bib/matlab.bib",
  series =       "Springer Undergraduate Mathematics Series",
  abstract =     "This book offers an introduction to the
                 algorithmic-numerical thinking using basic problems of
                 linear algebra. By focusing on linear algebra, it
                 ensures a stronger thematic coherence than is otherwise
                 found in introductory lectures on numerics. The book
                 highlights the usefulness of matrix partitioning
                 compared to a component view, leading not only to a
                 clearer notation and shorter algorithms, but also to
                 significant runtime gains in modern computer
                 architectures. The algorithms and accompanying
                 numerical examples are given in the programming
                 environment MATLAB, and additionally - in an appendix -
                 in the future-oriented, freely accessible programming
                 language Julia. This book is suitable for a two-hour
                 lecture on numerical linear algebra from the second
                 semester of a bachelor's degree in mathematics.",
  acknowledgement = ack-nhfb,
  subject =      "Mathematics; Matrix theory; Algebra; Numerical
                 analysis; Linear and Multilinear Algebras, Matrix
                 Theory; Matem{\'a}ticas; Algebra.; Mathematics.;
                 Numerical analysis.",
  tableofcontents = "Intro \\
                 Preface \\
                 Student's Laboratory \\
                 Contents \\
                 I: Computing with Matrices \\
                 1 What is Numerical Analysis? \\
                 2 Matrix Calculus \\
                 3 MATLAB \\
                 4 Execution Times \\
                 5 Triangular Matrices \\
                 6 Unitary Matrices \\
                 II: Matrix Factorization \\
                 7 Triangular Decomposition \\
                 8 Cholesky Decomposition \\
                 9 QR Decomposition \\
                 III: Error Analysis \\
                 10 Error Measures \\
                 11 Conditioning of a Problem \\
                 12 Machine Numbers \\
                 13 Stability of an Algorithm \\
                 14 Three Exemplary Error Analyses \\
                 15 Error Analysis of Linear Systems of Equations \\
                 IV: Least Squares \\
                 16 Normal Equation17 Orthogonalization \\
                 V: Eigenvalue Problems \\
                 18 Basic Concepts \\
                 19 Perturbation Theory \\
                 20 Power Iteration \\
                 21 QR Algorithm \\
                 Appendix \\
                 A MATLAB: A Very Short Introduction \\
                 General Commands \\
                 Matrices \\
                 Functions \\
                 Control Flow \\
                 Logic Functions \\
                 Componentwise Operations \\
                 B Julia: A Modern Alternative to MATLAB \\
                 C Norms: Recap and Supplement \\
                 D The Householder Method for QR Decomposition \\
                 E For the Curious, the Connoisseur, and the Capable \\
                 Model Backwards Analysis of Iterative Refinement \\
                 Global Convergence of the QR Algorithm without Shifts
                 \\
                 Local Convergence of the QR Algorithm with Shifts \\
                 A Stochastic Upper Bound of the Spectral Norm \\
                 F More Exercises \\
                 Computer Matrices \\
                 Matrix Factorization \\
                 Error Analysis \\
                 Least Squares \\
                 Elgenvalue Problems \\
                 Notation \\
                 Index",
}

@InProceedings{Breiding:2018:PHJ,
  author =       "Paul Breiding and Sascha Timme",
  booktitle =    "{Mathematical Software ICMS 2018}",
  title =        "\pkg{HomotopyContinuation.jl}: a Package for Homotopy
                 Continuation in {Julia}",
  publisher =    pub-SV,
  address =      pub-SV:adr,
  pages =        "??--??",
  year =         "2018",
  DOI =          "https://doi.org/10.1007/978-3-319-96418-8_54",
  bibdate =      "Fri Apr 9 07:54:52 MDT 2021",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/julia.bib",
  URL =          "http://link.springer.com/chapter/10.1007/978-3-319-96418-8_54",
  acknowledgement = ack-nhfb,
}

@InProceedings{Coffrin:2018:PJO,
  author =       "C. Coffrin and R. Bent and K. Sundar and Y. Ng and M.
                 Lubin",
  booktitle =    "{2018 Power Systems Computation Conference (PSCC)}",
  title =        "{PowerModels}. {JL}: An Open-Source Framework for
                 Exploring Power Flow Formulations",
  publisher =    pub-IEEE,
  address =      pub-IEEE:adr,
  pages =        "1--8",
  year =         "2018",
  DOI =          "https://doi.org/10.23919/PSCC.2018.8442948",
  bibdate =      "Thu Apr 8 07:17:08 2021",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/julia.bib",
  acknowledgement = ack-nhfb,
  keywords =     "Julia programming language",
}

@Book{Dan:2018:LJE,
  author =       "Toomey Dan",
  title =        "Learning {Jupyter 5}: explore interactive computing
                 using {Python}, {Java}, {JavaScript}, {R}, {Julia}, and
                 {JupyterLab}",
  publisher =    pub-PACKT,
  address =      pub-PACKT:adr,
  pages =        "282",
  year =         "2018",
  ISBN =         "1-78913-740-3, 1-78913-744-6",
  ISBN-13 =      "978-1-78913-740-8, 978-1-78913-744-6",
  LCCN =         "Q183.9; QA76.9.I52 .T666 2018",
  bibdate =      "Fri Apr 9 05:38:17 MDT 2021",
  bibsource =    "fsz3950.oclc.org:210/WorldCat;
                 https://www.math.utah.edu/pub/tex/bib/java2010.bib;
                 https://www.math.utah.edu/pub/tex/bib/julia.bib;
                 https://www.math.utah.edu/pub/tex/bib/python.bib;
                 https://www.math.utah.edu/pub/tex/bib/s-plus.bib",
  acknowledgement = ack-nhfb,
  tableofcontents = "Preface \\
                 1: Introduction to Jupyter \\
                 First look at Jupyter \\
                 Installing Jupyter \\
                 Notebook structure \\
                 Notebook workflow \\
                 Basic Notebook operations \\
                 File operations \\
                 Duplicate \\
                 Rename \\
                 Delete \\
                 Upload \\
                 New text file \\
                 New folder \\
                 New Python 3 \\
                 Security in Jupyter \\
                 Security digest \\
                 Trust options \\
                 Configuration options for Jupyter \\
                 Summary \\
                 2: Jupyter Python Scripting \\
                 Basic Python in Jupyter \\
                 Python data access in Jupyter \\
                 Python pandas in Jupyter \\
                 Python graphics in Jupyter \\
                 Python random numbers in Jupyter \\
                 Summary \\
                 3: Jupyter R Scripting \\
                 Adding R scripting to your installation \\
                 Adding R scripts to Jupyter on macOS \\
                 Adding R scripts to Jupyter on Windows \\
                 Adding R packages to Jupyter \\
                 R limitations in Jupyter \\
                 Basic R in Jupyter \\
                 R dataset access \\
                 R visualizations in Jupyter \\
                 R 3D graphics in Jupyter \\
                 R 3D scatterplot in Jupyter \\
                 R cluster analysis \\
                 R forecasting \\
                 R machine learning \\
                 Dataset \\
                 Summary \\
                 4: Jupyter Julia Scripting \\
                 Adding Julia scripting to your installation \\
                 Adding Julia scripts to Jupyter \\
                 Adding Julia packages to Jupyter \\
                 Basic Julia in Jupyter \\
                 Julia limitations in Jupyter \\
                 Standard Julia capabilities \\
                 Julia visualizations in Jupyter \\
                 Julia Gadfly scatterplot \\
                 Julia Gadfly histogram \\
                 Julia Winston plotting \\
                 Julia Vega plotting \\
                 Julia PyPlot plotting \\
                 Julia parallel processing \\
                 Julia control flow \\
                 Julia regular expressions \\
                 Julia unit testing \\
                 Summary \\
                 5: Jupyter Java Coding \\
                 Adding the Java kernel to your installation \\
                 Installing Java 9 or later \\
                 A Jupyter environment is required \\
                 Configuring IJava \\
                 Downloading the IJava project from GitHub \\
                 Building and installing the kernel \\
                 Available options \\
                 Jupyter Java console \\
                 Jupyter Java output \\
                 Java Optional \\
                 Java compiler errors \\
                 Java lambdas \\
                 Java Collections \\
                 Java streams \\
                 Java summary statistics \\
                 Summary \\
                 6: Jupyter JavaScript Coding \\
                 Adding JavaScript scripting to your installation \\
                 Adding JavaScript scripts to Jupyter on macOS or
                 Windows \\
                 JavaScript Hello World Jupyter Notebook \\
                 Adding JavaScript packages to Jupyter \\
                 Basic JavaScript in Jupyter \\
                 JavaScript limitations in Jupyter \\
                 Node.js d3 package \\
                 Node.js stats-analysis package \\
                 Node.js JSON handling \\
                 Node.js canvas package \\
                 Node.js plotly package \\
                 Node.js asynchronous threadsNode.js decision-tree
                 package \\
                 Summary \\
                 7: Jupyter Scala \\
                 Installing the Scala kernel \\
                 Scala data access in Jupyter \\
                 Scala array operations \\
                 Scala random numbers in Jupyter \\
                 Scala closures \\
                 Scala higher-order functions \\
                 Scala pattern matching \\
                 Scala case classes \\
                 Scala immutability \\
                 Scala collections \\
                 Named arguments \\
                 Scala traits \\
                 Summary \\
                 8: Jupyter and Big Data \\
                 Apache Spark \\
                 Installing Spark on macOS \\
                 Windows install \\
                 First Spark script \\
                 Spark word count \\
                 Sorted word count \\
                 Estimate pi \\
                 Log file examination \\
                 Spark primes \\
                 Spark text file analysis",
}

@Article{Datseris:2018:PDJ,
  author =       "George Datseris",
  title =        "\pkg{DynamicalSystems.jl}: A {Julia} software library
                 for chaos and nonlinear dynamics",
  journal =      j-J-OPEN-SOURCE-SOFT,
  volume =       "3",
  number =       "23",
  pages =        "598:1--598:5",
  month =        mar,
  year =         "2018",
  CODEN =        "????",
  DOI =          "https://doi.org/10.5334/jors.151",
  ISSN =         "2475-9066",
  ISSN-L =       "2475-9066",
  bibdate =      "Thu Sep 13 08:09:35 MDT 2018",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/joss.bib;
                 https://www.math.utah.edu/pub/tex/bib/julia.bib",
  URL =          "http://joss.theoj.org/papers/10.21105/joss.00598",
  acknowledgement = ack-nhfb,
  fjournal =     "Journal of Open Source Software",
  journal-URL =  "http://joss.theoj.org/;
                 https://github.com/openjournals/joss-papers/",
  onlinedate =   "14 March 2018",
  ORCID-numbers = "George Datseris / 0000-0002-6427-2385",
}

@Article{Gawron:2018:PQJ,
  author =       "Piotr Gawron and Dariusz Kurzyk and {\L}ukasz Pawela",
  editor =       "Nicholas Chancellor",
  title =        "\pkg{QuantumInformation.jl} --- a {Julia} package for
                 numerical computation in quantum information theory",
  journal =      j-PLOS-ONE,
  volume =       "13",
  number =       "12",
  pages =        "e0209358",
  month =        dec,
  year =         "2018",
  CODEN =        "POLNCL",
  DOI =          "https://doi.org/10.1371/journal.pone.0209358",
  ISSN =         "1932-6203",
  bibdate =      "Thu Apr 8 08:02:29 2021",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/julia.bib",
  acknowledgement = ack-nhfb,
  fjournal =     "PLoS One",
  journal-URL =  "http://www.plosone.org/",
  keywords =     "Julia programming language",
}

@Article{Hoffimann:2018:PGJ,
  author =       "J{\'u}lio Hoffimann",
  title =        "\pkg{GeoStats.jl} --- High-performance geostatistics
                 in {Julia}",
  journal =      j-J-OPEN-SOURCE-SOFT,
  volume =       "3",
  number =       "24",
  pages =        "692:1--692:4",
  month =        apr,
  year =         "2018",
  CODEN =        "????",
  DOI =          "https://doi.org/10.21105/joss.00692",
  ISSN =         "2475-9066",
  ISSN-L =       "2475-9066",
  bibdate =      "Thu Sep 13 08:09:35 MDT 2018",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/joss.bib;
                 https://www.math.utah.edu/pub/tex/bib/julia.bib",
  URL =          "http://joss.theoj.org/papers/10.21105/joss.00692",
  acknowledgement = ack-nhfb,
  fjournal =     "Journal of Open Source Software",
  journal-URL =  "http://joss.theoj.org/;
                 https://github.com/openjournals/joss-papers/",
  onlinedate =   "25 April 2018",
  ORCID-numbers = "J{\'u}lio Hoffimann / 0000-0003-2789-297X",
}

@InCollection{Humenberger:2018:AJT,
  author =       "Andreas Humenberger and Maximilian Jaroschek and Laura
                 Kov{\'a}cs",
  booktitle =    "{Lecture Notes in Computer Science}",
  title =        "\pkg{Aligator.jl} --- a {Julia} Package for Loop
                 Invariant Generation",
  publisher =    "Springer International Publishing",
  address =      "Cham, Switzerland",
  pages =        "111--117",
  year =         "2018",
  DOI =          "https://doi.org/10.1007/978-3-319-96812-4_10",
  bibdate =      "Thu Apr 8 08:02:29 2021",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/julia.bib",
  acknowledgement = ack-nhfb,
  keywords =     "Julia programming language",
}

@InProceedings{Humenberger:2018:PAJ,
  author =       "Andreas Humenberger and Maximilian Jaroschek and Laura
                 Kov{\'a}cs",
  booktitle =    "{Intelligent Computer Mathematics}",
  title =        "\pkg{Aligator.jl} --- a {Julia} Package for Loop
                 Invariant Generation",
  publisher =    pub-SV,
  address =      pub-SV:adr,
  pages =        "??--??",
  year =         "2018",
  DOI =          "https://doi.org/10.1007/978-3-319-96812-4_10",
  bibdate =      "Fri Apr 9 07:54:52 MDT 2021",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/julia.bib",
  URL =          "http://link.springer.com/chapter/10.1007/978-3-319-96812-4_10",
  acknowledgement = ack-nhfb,
}

@Article{Innes:2018:PFE,
  author =       "Mike Innes",
  title =        "\pkg{Flux}: Elegant machine learning with {Julia}",
  journal =      j-J-OPEN-SOURCE-SOFT,
  volume =       "3",
  number =       "25",
  pages =        "602:1--602:1",
  month =        may,
  year =         "2018",
  CODEN =        "????",
  DOI =          "https://doi.org/10.21105/joss.00602",
  ISSN =         "2475-9066",
  ISSN-L =       "2475-9066",
  bibdate =      "Thu Sep 13 08:09:35 MDT 2018",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/joss.bib;
                 https://www.math.utah.edu/pub/tex/bib/julia.bib",
  URL =          "http://joss.theoj.org/papers/10.21105/joss.00602",
  acknowledgement = ack-nhfb,
  fjournal =     "Journal of Open Source Software",
  journal-URL =  "http://joss.theoj.org/;
                 https://github.com/openjournals/joss-papers/",
  onlinedate =   "03 May 2018",
  ORCID-numbers = "Mike Innes / 0000-0003-0788-0242",
}

@Book{Kaminski:2018:JPC,
  author =       "Bogumi{\l} Kami{\'n}ski and Przemys{\l}aw Szufel",
  title =        "{Julia 1.0} Programming Cookbook: over 100 numerical
                 and distributed computing recipes for your daily data
                 science workflow",
  publisher =    pub-PACKT,
  address =      pub-PACKT:adr,
  pages =        "xiii + 439",
  year =         "2018",
  ISBN =         "1-78899-836-7 (paperback)",
  ISBN-13 =      "978-1-78899-836-9 (paperback)",
  LCCN =         "QA76.73.J85",
  bibdate =      "Thu Apr 8 10:52:14 MDT 2021",
  bibsource =    "fsz3950.oclc.org:210/WorldCat;
                 https://www.math.utah.edu/pub/tex/bib/julia.bib",
  abstract =     "Discover the new features and widely used packages in
                 Julia to solve complex computational problems in your
                 statistical applications. Key Features Address the core
                 problems of programming in Julia with the most popular
                 packages for common tasks Tackle issues while working
                 with Databases and Parallel data processing with Julia
                 Explore advanced features such as metaprogramming,
                 functional programming, and user defined types Book
                 Description Julia, with its dynamic nature and
                 high-performance, provides comparatively minimal time
                 for the development of computational models with
                 easy-to-maintain computational code. This book will be
                 your solution-based guide as it will take you through
                 different programming aspects with Julia. Starting with
                 the new features of Julia 1.0, each recipe addresses a
                 specific problem, providing a solution and explaining
                 how it works. You will work with the powerful Julia
                 tools and data structures along with the most popular
                 Julia packages. You will learn to create vectors,
                 handle variables, and work with functions. You will be
                 introduced to various recipes for numerical computing,
                 distributed computing, and achieving high performance.
                 You will see how to optimize data science programs with
                 parallel computing and memory allocation. We will look
                 into more advanced concepts such as metaprogramming and
                 functional programming. Finally, you will learn how to
                 tackle issues while working with databases and data
                 processing, and will learn about on data science
                 problems, data modeling, data analysis, data
                 manipulation, parallel processing, and cloud computing
                 with Julia. By the end of the book, you will have
                 acquired the skills to work more effectively with your
                 data What you will learn Boost your code's performance
                 using Julia's unique features Organize data in to
                 fundamental types of collections: arrays and
                 dictionaries Organize data science processes within
                 Julia and solve related problems Scale Julia
                 computations with cloud computing Write data to IO
                 streams with Julia and handle web transfer Define your
                 own immutable and mutable types Speed up the
                 development process using metaprogramming Who this book
                 is for This book is for developers who would like to
                 enhance their Julia programming skills and would like
                 to get some quick solutions to their common programming
                 problems. Basic Julia programming knowledge is assumed.
                 Downloading the example code for this book. \ldots{}",
  acknowledgement = ack-nhfb,
}

@Article{Kemmer:2018:NJE,
  author =       "Thomas Kemmer and Sergej Rjasanow and Andreas
                 Hildebrandt",
  title =        "\pkg{NESSie.jl} --- Efficient and intuitive finite
                 element and boundary element methods for nonlocal
                 protein electrostatics in the {Julia} language",
  journal =      j-J-COMPUT-SCI,
  volume =       "28",
  pages =        "193--203",
  month =        sep,
  year =         "2018",
  CODEN =        "????",
  DOI =          "https://doi.org/10.1016/j.jocs.2018.08.008",
  ISSN =         "1877-7503 (print), 1877-7511 (electronic)",
  ISSN-L =       "1877-7503",
  bibdate =      "Fri Apr 9 15:22:25 2021",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/jcomputsci.bib;
                 https://www.math.utah.edu/pub/tex/bib/julia.bib",
  URL =          "https://www.sciencedirect.com/science/article/pii/S187775031730738X",
  abstract =     "The development of scientific software can be
                 generally characterized by an initial phase of rapid
                 prototyping and the subsequent transition to
                 computationally efficient production code.
                 Unfortunately, most programming languages are not
                 well-suited for both tasks at the same time, commonly
                 resulting in a considerable extension of the
                 development time. The cross-platform and open-source
                 Julia language aims at closing the gap between
                 prototype and production code by providing a usability
                 comparable to Python or MATLAB alongside
                 high-performance capabilities known from C and C++ in a
                 single programming language. In this paper, we present
                 efficient protein electrostatics computations as a
                 showcase example for Julia. More specifically, we
                 present both finite element and boundary element
                 solvers for computing electrostatic potentials of
                 proteins in structured solvents. By modeling the latter
                 in an implicit but nonlocal fashion, we account for
                 correlation of molecular polarization due to the
                 solvent structure around the solute and sustain
                 accuracy without suffering from infeasible runtimes as
                 compared to the explicit case. In this context, we show
                 that our implementation is on par with optimized C code
                 and highlight the components of the implementation that
                 can be transferred to more general tasks.",
  acknowledgement = ack-nhfb,
  ajournal =     "J. Comput. Sci.",
  fjournal =     "Journal of Computational Science",
  journal-URL =  "https://www.sciencedirect.com/journal/journal-of-computational-science",
  keywords =     "Protein electrostatics, Finite element method,
                 Boundary element method, Julia language",
}

@Article{Kieffer:2018:IBC,
  author =       "Jean Kieffer and Luca {De Feo}",
  title =        "Isogeny-based cryptography in {Julia\slash Nemo}: a
                 case study",
  journal =      j-ACM-COMM-COMP-ALGEBRA,
  volume =       "52",
  number =       "4",
  pages =        "130--132",
  month =        dec,
  year =         "2018",
  CODEN =        "????",
  DOI =          "https://doi.org/10.1145/3338637.3338643",
  ISSN =         "1932-2232 (print), 1932-2240 (electronic)",
  ISSN-L =       "1932-2232",
  bibdate =      "Wed Oct 23 07:34:18 MDT 2019",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/cryptography2010.bib;
                 https://www.math.utah.edu/pub/tex/bib/julia.bib;
                 https://www.math.utah.edu/pub/tex/bib/sigsam.bib",
  abstract =     "The Couveignes--Rostovtsev--Stolbunov key-exchange
                 protocol based on isogenies of elliptic curves is of
                 interest because it may resist quantum attacks, but its
                 efficient implementation remains a challenge. We
                 briefly present the computations involved, and
                 efficient algorithms to achieve the critical steps,
                 with timing results for our implementations in Sage and
                 Julia\slash Nemo.",
  acknowledgement = ack-nhfb,
  fjournal =     "ACM Communications in Computer Algebra",
  journal-URL =  "http://portal.acm.org/browse_dl.cfm?idx=J1000",
}

@Article{Kramer:2018:PQJ,
  author =       "Sebastian Kr{\"a}mer and David Plankensteiner and
                 Laurin Ostermann and Helmut Ritsch",
  title =        "\pkg{QuantumOptics.jl}: a {Julia} framework for
                 simulating open quantum systems",
  journal =      j-COMP-PHYS-COMM,
  volume =       "227",
  number =       "??",
  pages =        "109--116",
  month =        jun,
  year =         "2018",
  CODEN =        "CPHCBZ",
  DOI =          "https://doi.org/10.1016/j.cpc.2018.02.004",
  ISSN =         "0010-4655 (print), 1879-2944 (electronic)",
  ISSN-L =       "0010-4655",
  bibdate =      "Fri Mar 16 13:51:08 MDT 2018",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/compphyscomm2010.bib;
                 https://www.math.utah.edu/pub/tex/bib/julia.bib",
  URL =          "https://www.sciencedirect.com/science/article/pii/S0010465518300328",
  abstract =     "We present an open source computational framework
                 geared towards the efficient numerical investigation of
                 open quantum systems written in the Julia programming
                 language. Built exclusively in Julia and based on
                 standard quantum optics notation, the toolbox offers
                 speed comparable to low-level statically typed
                 languages, without compromising on the accessibility
                 and code readability found in dynamic languages. After
                 introducing the framework, we highlight its features
                 and showcase implementations of generic quantum models.
                 Finally, we compare its usability and performance to
                 two well-established and widely used numerical quantum
                 libraries. Program summary Program Title:
                 QuantumOptics.jl Program Files doi:
                 https://doi.org/10.17632/3696r5jhm4.1 Licensing
                 provisions: MIT Programming language: Julia
                 Supplementary material: Full list of functions (API) as
                 html Nature of problem: Dynamics of open quantum
                 systems Solution method: Numerically solving the
                 Schr{\"o}dinger or master equation or a Monte Carlo
                 wave-function approach. Additional comments including
                 Restrictions and Unusual features: The framework may be
                 used for problems that fulfill the necessary conditions
                 such that they can be described by a Schr{\"o}dinger or
                 master equation. Furthermore, the aim is to efficiently
                 and easily simulate systems of moderate size rather
                 than pushing the limits of what is possible
                 numerically.",
  acknowledgement = ack-nhfb,
  fjournal =     "Computer Physics Communications",
  journal-URL =  "http://www.sciencedirect.com/science/journal/00104655",
  keywords =     "Julia programming language; Numerics; Quantum
                 mechanics; Quantum optics",
}

@InCollection{Kroger:2018:JOS,
  author =       "Ole Kr{\"o}ger and Carleton Coffrin and Hassan Hijazi
                 and Harsha Nagarajan",
  booktitle =    "{Integration of Constraint Programming, Artificial
                 Intelligence, and Operations Research}",
  title =        "{Juniper}: an Open-Source Nonlinear Branch-and-Bound
                 Solver in {Julia}",
  publisher =    "Springer International Publishing",
  address =      "Cham, Switzerland",
  pages =        "377--386",
  year =         "2018",
  DOI =          "https://doi.org/10.1007/978-3-319-93031-2_27",
  bibdate =      "Thu Apr 8 08:02:29 2021",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/julia.bib",
  URL =          "http://link.springer.com/chapter/10.1007/978-3-319-93031-2_27",
  acknowledgement = ack-nhfb,
  keywords =     "Julia programming language",
}

@InProceedings{Lage-Freitas:2018:ADS,
  author =       "A. Lage-Freitas and R. P. Ribeiro and N. D. C.
                 Oliveira and A. C. Frery",
  booktitle =    "{IGARSS 2018 --- 2018 IEEE International Geoscience
                 and Remote Sensing Symposium}",
  title =        "An Automatic Deployment Support for Processing Remote
                 Sensing Data in the Cloud",
  publisher =    pub-IEEE,
  address =      pub-IEEE:adr,
  pages =        "2054--2057",
  year =         "2018",
  DOI =          "https://doi.org/10.1109/IGARSS.2018.8518964",
  bibdate =      "Thu Apr 8 07:17:08 2021",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/julia.bib",
  acknowledgement = ack-nhfb,
  keywords =     "Infra.jl; Julia Master/Worker programming; Julia
                 programming language",
}

@Article{Landeros:2018:PBJ,
  author =       "Alfonso Landeros and Timothy Stutz and Kevin L. Keys
                 and Alexander Alekseyenko and Janet S. Sinsheimer and
                 Kenneth Lange and Mary E. Sehl",
  title =        "\pkg{BioSimulator.jl}: Stochastic simulation in
                 {Julia}",
  journal =      j-COMPUT-METH-PROG-BIOMED,
  volume =       "167",
  pages =        "23--35",
  month =        dec,
  year =         "2018",
  CODEN =        "CMPBEK",
  DOI =          "https://doi.org/10.1016/j.cmpb.2018.09.009",
  ISSN =         "0169-2607 (print), 1872-7565 (electronic)",
  ISSN-L =       "0169-2607",
  bibdate =      "Thu Apr 8 08:02:29 2021",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/julia.bib",
  URL =          "https://www.sciencedirect.com/science/article/pii/S0169260718301822",
  abstract =     "Background and Objectives: Biological systems with
                 intertwined feedback loops pose a challenge to
                 mathematical modeling efforts. Moreover, rare events,
                 such as mutation and extinction, complicate system
                 dynamics. Stochastic simulation algorithms are useful
                 in generating time-evolution trajectories for these
                 systems because they can adequately capture the
                 influence of random fluctuations and quantify rare
                 events. We present a simple and flexible package,
                 BioSimulator.jl, for implementing the Gillespie
                 algorithm, -leaping, and related stochastic simulation
                 algorithms. The objective of this work is to provide
                 scientists across domains with fast, user-friendly
                 simulation tools. Methods: We used the high-performance
                 programming language Julia because of its emphasis on
                 scientific computing. Our software package implements a
                 suite of stochastic simulation algorithms based on
                 Markov chain theory. We provide the ability to (a)
                 diagram Petri Nets describing interactions, (b) plot
                 average trajectories and attached standard deviations
                 of each participating species over time, and (c)
                 generate frequency distributions of each species at a
                 specified time. Results: BioSimulator.jl's interface
                 allows users to build models programmatically within
                 Julia. A model is then passed to the simulate routine
                 to generate simulation data. The built-in tools allow
                 one to visualize results and compute summary
                 statistics. Our examples highlight the broad
                 applicability of our software to systems of varying
                 complexity from ecology, systems biology, chemistry,
                 and genetics. Conclusion: The user-friendly nature of
                 BioSimulator.jl encourages the use of stochastic
                 simulation, minimizes tedious programming efforts, and
                 reduces errors during model specification.",
  acknowledgement = ack-nhfb,
  fjournal =     "Computer Methods and Programs in Biomedicine",
  keywords =     "-leaping; Gillespie algorithm; Julia programming
                 language; Stochastic simulation; Systems biology",
}

@Book{McNicholas:2018:DSJ,
  author =       "Paul D. McNicholas and Peter A. Tait",
  title =        "Data Science with {Julia}",
  publisher =    "Taylor and Francis, CRC Press",
  address =      "Boca Raton, FL, USA",
  pages =        "241",
  year =         "2018",
  DOI =          "https://doi.org/10.1201/9781351013673",
  ISBN =         "1-138-49998-6 (paperback), 1-351-01364-5 (e-book:
                 Mobipocket), 1-351-01365-3 (e-book), 1-351-01366-1
                 (e-book: PDF), 1-351-01367-X (e-book)",
  ISBN-13 =      "978-1-138-49998-0 (paperback), 978-1-351-01364-2
                 (e-book: Mobipocket), 978-1-351-01365-9 (e-book),
                 978-1-351-01366-6 (e-book: PDF), 978-1-351-01367-3
                 (e-book)",
  LCCN =         "QA76.73.J85 M37 2018",
  bibdate =      "Sat Sep 7 07:35:13 MDT 2019",
  bibsource =    "fsz3950.oclc.org:210/WorldCat;
                 https://www.math.utah.edu/pub/tex/bib/julia.bib;
                 https://www.math.utah.edu/pub/tex/bib/python.bib",
  abstract =     "``This book is a great way to both start learning data
                 science through the promising Julia language and to
                 become an efficient data scientist.''- Professor
                 Charles Bouveyron, INRIA Chair in Data Science,
                 Universitae Caote d'Azur, Nice, France. Julia, an
                 open-source programming language, was created to be as
                 easy to use as languages such as R and Python while
                 also as fast as C and Fortran. An accessible,
                 intuitive, and highly efficient base language with
                 speed that exceeds R and Python, makes Julia a
                 formidable language for data science. Using well known
                 data science methods that will motivate the reader,
                 Data Science with Julia will get readers up to speed on
                 key features of the Julia language and illustrate its
                 facilities for data science and machine learning work.
                 Features: Covers the core components of Julia as well
                 as packages relevant to the input, manipulation and
                 representation of data. Discusses several important
                 topics in data science including supervised and
                 unsupervised learning. Reviews data visualization using
                 the Gadfly package, which was designed to emulate the
                 very popular ggplot2 package in R. Readers will learn
                 how to make many common plots and how to visualize
                 model results. Presents how to optimize Julia code for
                 performance. Will be an ideal source for people who
                 already know R and want to learn how to use Julia
                 (though no previous knowledge of R or any other
                 programming language is required). The advantages of
                 Julia for data science cannot be understated. Besides
                 speed and ease of use, there are already over 1,900
                 packages available and Julia can interface (either
                 directly or through packages) with libraries written in
                 R, Python, Matlab, C, C++ or Fortran. The book is for
                 senior undergraduates, beginning graduate students, or
                 practicing data scientists who want to learn how to use
                 Julia for data science.",
  acknowledgement = ack-nhfb,
  subject =      "Julia (Computer program language); Data structures
                 (Computer science); COMPUTERS / Data Modeling and
                 Design; BUSINESS and ECONOMICS / Statistics;
                 MATHEMATICS / Probability and Statistics / General;
                 Data structures (Computer science); Julia (Computer
                 program language)",
  tableofcontents = "Cover \\
                 Half Title \\
                 Title Page \\
                 Copyright Page \\
                 Dedication \\
                 Table of Contents \\
                 Foreword \\
                 Preface \\
                 About the Authors \\
                 1: Introduction \\
                 1.1 DATA SCIENCE \\
                 1.2 BIG DATA \\
                 1.3 JULIA \\
                 1.4 JULIA AND R PACKAGES \\
                 1.5 DATASETS \\
                 1.5.1 Overview \\
                 1.5.2 Beer Data \\
                 1.5.3 Coffee Data \\
                 1.5.4 Leptograpsus Crabs Data \\
                 1.5.5 Food Preferences Data \\
                 1.5.6 x2 Data \\
                 1.5.7 Iris Data \\
                 1.6 OUTLINE OF THE CONTENTS OF THIS MONOGRAPH \\
                 2: Core Julia \\
                 2.1 VARIABLE NAMES \\
                 2.2 OPERATORS \\
                 2.3 TYPES \\
                 2.3.1 Numeric \\
                 2.3.2 Floats \\
                 2.3.3 Strings \\
                 2.3.4 Tuples \\
                 2.4 DATA STRUCTURES \\
                 2.4.1 Arrays \\
                 2.4.2 Dictionaries \\
                 2.5 CONTROL FLOW \\
                 2.5.1 Compound Expressions \\
                 2.5.2 Conditional Evaluation \\
                 2.5.3 Loops \\
                 2.5.3.1 Basics \\
                 2.5.3.2 Loop termination \\
                 2.5.3.3 Exception handling \\
                 2.6 FUNCTIONS \\
                 3: Working with Data \\
                 3.1 DATAFRAMES \\
                 3.2 CATEGORICAL DATA \\
                 3.3 INPUT/OUTPUT \\
                 3.4 USEFUL DATAFRAME FUNCTIONS \\
                 3.5 SPLIT-APPLY-COMBINE STRATEGY \\
                 3.6 QUERY. JL \\
                 4: Visualizing Data \\
                 4.1 GADFLY. JL \\
                 4.2 VISUALIZING UNIVARIATE DATA \\
                 4.3 DISTRIBUTIONS \\
                 4.4 VISUALIZING BIVARIATE DATA \\
                 4.5 ERROR BARS \\
                 4.6 FACETS \\
                 4.7 SAVING PLOTS \\
                 5: Supervised Learning \\
                 5.1 INTRODUCTION \\
                 5.2 CROSS-VALIDATION \\
                 5.2.1 Overview \\
                 5.2.2 K-Fold Cross-Validation \\
                 5.3 K-NEAREST NEIGHBOURS CLASSIFICATION \\
                 5.4 CLASSIFICATION AND REGRESSION TREES \\
                 5.4.1 Overview \\
                 5.4.2 Classification Trees \\
                 5.4.3 Regression Trees \\
                 5.4.4 Comments \\
                 5.5 BOOTSTRAP \\
                 5.6 RANDOM FORESTS \\
                 5.7 GRADIENT BOOSTING \\
                 5.7.1 Overview \\
                 5.7.2 Beer Data \\
                 5.7.3 Food Data \\
                 5.8 COMMENTS \\
                 6: Unsupervised Learning \\
                 6.1 INTRODUCTION \\
                 6.2 PRINCIPAL COMPONENTS ANALYSIS \\
                 6.3 PROBABILISTIC PRINCIPAL COMPONENTS ANALYSIS \\
                 6.4 EM ALGORITHM FOR PPCA \\
                 6.4.1 Background: EM Algorithm \\
                 6.4.2 E-step \\
                 6.4.3 M-step \\
                 6.4.4 Woodbury Identity \\
                 6.4.5 Initialization \\
                 6.4.6 Stopping Rule \\
                 6.4.7 Implementing the EM Algorithm for PPCA \\
                 6.4.8 Comments \\
                 6.5 K-MEANS CLUSTERING \\
                 6.6 MIXTURE OF PROBABILISTIC PRINCIPAL COMPONENTS
                 ANALYZERS \\
                 6.6.1 Model \\
                 6.6.2 Parameter Estimation \\
                 6.6.3 Illustrative Example: Coffee Data \\
                 6.7 COMMENTS \\
                 7: R Interoperability \\
                 7.1 ACCESSING R DATASETS \\
                 7.2 INTERACTING WITH R \\
                 7.3 EXAMPLE: CLUSTERING AND DATA REDUCTION FOR THE
                 COFFEE DATA \\
                 7.3.1 Coffee Data \\
                 7.3.2 PGMM Analysis \\
                 7.3.3 VSCC Analysis \\
                 7.4 EXAMPLE: FOOD DATA \\
                 7.4.1 Overview \\
                 7.4.2 Random Forests \\
                 APPENDIX A: Julia and R Packages Used Herein \\
                 APPENDIX B: Variables for Food Data \\
                 APPENDIX C: Useful Mathematical Results \\
                 C.1 BRIEF OVERVIEW OF EIGENVALUES \\
                 C.2 SELECTED LINEAR ALGEBRA RESULTS \\
                 C.3 MATRIX CALCULUS RESULTS \\
                 APPENDIX D: Performance Tips \\
                 D.1 FLOATING POINT NUMBERS \\
                 D.1.1 Do Not Test for Equality \\
                 D.1.2 Use Logarithms for Division \\
                 D.1.3 Subtracting Two Nearly Equal Numbers \\
                 D.2 JULIA PERFORMANCE \\
                 D.2.1 General Tips \\
                 D.2.2 Array Processing \\
                 D.2.3 Separate Core Computations \\
                 APPENDIX E: Linear Algebra Functions \\
                 E.1 VECTOR OPERATIONS \\
                 E.2 MATRIX OPERATIONS \\
                 E.3 MATRIX DECOMPOSITIONS \\
                 References \\
                 Index",
}

@Article{Mogensen:2018:POM,
  author =       "Patrick K. Mogensen and Asbj{\o}rn N. Riseth",
  title =        "\pkg{Optim}: A mathematical optimization package for
                 {Julia}",
  journal =      j-J-OPEN-SOURCE-SOFT,
  volume =       "3",
  number =       "24",
  pages =        "615:1--615:3",
  month =        apr,
  year =         "2018",
  CODEN =        "????",
  DOI =          "https://doi.org/10.21105/joss.00615",
  ISSN =         "2475-9066",
  ISSN-L =       "2475-9066",
  bibdate =      "Thu Sep 13 08:09:35 MDT 2018",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/joss.bib;
                 https://www.math.utah.edu/pub/tex/bib/julia.bib",
  URL =          "http://joss.theoj.org/papers/10.21105/joss.00615",
  acknowledgement = ack-nhfb,
  fjournal =     "Journal of Open Source Software",
  journal-URL =  "http://joss.theoj.org/;
                 https://github.com/openjournals/joss-papers/",
  onlinedate =   "04 April 2018",
  ORCID-numbers = "Patrick K. Mogensen / 0000-0002-4910-1932; Asbj{\o}rn
                 N. Riseth / 0000-0002-5861-7885",
}

@Article{Nardelli:2018:JSR,
  author =       "Francesco Zappa Nardelli and Julia Belyakova and Artem
                 Pelenitsyn and Benjamin Chung and Jeff Bezanson and Jan
                 Vitek",
  title =        "{Julia} subtyping: a rational reconstruction",
  journal =      j-PACMPL,
  volume =       "2",
  number =       "OOPSLA",
  pages =        "113:1--113:27",
  month =        oct,
  year =         "2018",
  DOI =          "https://doi.org/10.1145/3276483",
  ISSN =         "2475-1421",
  bibdate =      "Sat Aug 8 07:56:30 MDT 2020",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/julia.bib;
                 https://www.math.utah.edu/pub/tex/bib/pacmpl.bib",
  URL =          "https://dl.acm.org/doi/abs/10.1145/3276483",
  abstract =     "Programming languages that support multiple dispatch
                 rely on an expressive notion of subtyping to specify
                 method applicability. In these languages, type
                 annotations on method declarations are used to select,
                 out of a potentially large set of methods, the one that
                 is most appropriate for a particular tuple of
                 arguments. Julia is a language for scientific computing
                 built around multiple dispatch and an expressive
                 subtyping relation. This paper provides the first
                 formal definition of Julia's subtype relation and
                 motivates its design. We validate our specification
                 empirically with an implementation of our definition
                 that we compare against the existing Julia
                 implementation on a collection of real-world programs.
                 Our subtype implementation differs on 122 subtype tests
                 out of 6,014,476. The first 120 differences are due to
                 a bug in Julia that was fixed once reported; the
                 remaining 2 are under discussion.",
  acknowledgement = ack-nhfb,
  articleno =    "113",
  fjournal =     "Proceedings of the ACM on Programming Languages",
  journal-URL =  "https://pacmpl.acm.org/",
}

@InProceedings{Regier:2018:CVU,
  author =       "J. Regier and K. Pamnany and K. Fischer and A. Noack
                 and M. Lam and J. Revels and S. Howard and R. Giordano
                 and D. Schlegel and J. McAuliffe and R. Thomas and
                 Prabhat",
  booktitle =    "{2018 IEEE International Parallel and Distributed
                 Processing Symposium (IPDPS)}",
  title =        "Cataloging the Visible Universe Through {Bayesian}
                 Inference at Petascale",
  publisher =    pub-IEEE,
  address =      pub-IEEE:adr,
  pages =        "44--53",
  year =         "2018",
  DOI =          "https://doi.org/10.1109/IPDPS.2018.00015",
  bibdate =      "Thu Apr 8 07:17:08 2021",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/julia.bib",
  abstract =     "Astronomical catalogs derived from wide-field imaging
                 surveys are an important tool for understanding the
                 Universe. We construct an astronomical catalog from 55
                 TB of imaging data using Celeste, a Bayesian
                 variational inference code written entirely in the
                 high-productivity programming language Julia. Using
                 over 1.3 million threads on 650,000 Intel Xeon Phi
                 cores of the Cori Phase II supercomputer, Celeste
                 achieves a peak rate of 1.54 DP PFLOP/s. Celeste is
                 able to jointly optimize parameters for 188M stars and
                 galaxies, loading and processing 178 TB across 8192
                 nodes in 14.6 minutes. To achieve this, Celeste
                 exploits parallelism at multiple levels (cluster, node,
                 and thread) and accelerates I/O through Cori's Burst
                 Buffer. Julia's native performance enables Celeste to
                 employ high-level constructs without resorting to
                 hand-written or generated low-level code
                 (C/C++/Fortran), and yet achieve petascale
                 performance.",
  acknowledgement = ack-nhfb,
  keywords =     "Julia programming language",
}

@Book{Salceanu:2018:JPP,
  author =       "Adrian Salceanu",
  title =        "{Julia} programming projects: learn {Julia 1.x} by
                 building apps for data analysis, visualization, machine
                 learning, and the {Web}",
  publisher =    pub-PACKT,
  address =      pub-PACKT:adr,
  pages =        "ix + 482",
  year =         "2018",
  ISBN =         "1-78829-725-3",
  ISBN-13 =      "978-1-78829-274-0, 978-1-78829-725-7 (e-book)",
  LCCN =         "QA76.73.J85",
  bibdate =      "Thu Apr 8 10:45:11 MDT 2021",
  bibsource =    "fsz3950.oclc.org:210/WorldCat;
                 https://www.math.utah.edu/pub/tex/bib/julia.bib",
  URL =          "http://proquest.safaribooksonline.com/?fpi=9781788292740",
  abstract =     "A step-by-step guide that demonstrates how to build
                 simple-to-advanced applications through examples in
                 Julia Lang 1.x using modern tools Key Features Work
                 with powerful open-source libraries for data wrangling,
                 analysis, and visualization Develop full-featured,
                 full-stack web applications Learn to perform supervised
                 and unsupervised machine learning and time series
                 analysis with Julia Book Description Julia is a new
                 programming language that offers a unique combination
                 of performance and productivity. Its powerful features,
                 friendly syntax, and speed are attracting a growing
                 number of adopters from Python, R, and Matlab,
                 effectively raising the bar for modern general and
                 scientific computing. After six years in the making,
                 Julia has reached version 1.0. Now is the perfect time
                 to learn it, due to its large-scale adoption across a
                 wide range of domains, including fintech, biotech,
                 education, and AI. Beginning with an introduction to
                 the language, Julia Programming Projects goes on to
                 illustrate how to analyze the Iris dataset using
                 DataFrames. You will explore functions and the type
                 system, methods, and multiple dispatch while building a
                 web scraper and a web app. Next, you'll delve into
                 machine learning, where you'll build a books
                 recommender system. You will also see how to apply
                 unsupervised machine learning to perform clustering on
                 the San Francisco business database. After
                 metaprogramming, the final chapters will discuss dates
                 and time, time series analysis, visualization, and
                 forecasting. We'll close with package development,
                 documenting, testing and benchmarking. By the end of
                 the book, you will have gained the practical knowledge
                 to build real-world applications in Julia. What you
                 will learn Leverage Julia's strengths, its top
                 packages, and main IDE options Analyze and manipulate
                 datasets using Julia and DataFrames Write complex code
                 while building real-life Julia applications Develop and
                 run a web app using Julia and the HTTP package Build a
                 recommender system using supervised machine learning
                 Perform exploratory data analysis Apply unsupervised
                 machine learning algorithms Perform time series data
                 analysis, visualization, and forecasting Who this book
                 is for Data scientists, statisticians, business
                 analysts, and developers who are interested in learning
                 how to use Julia to crunch numbers, analyze data and
                 build apps will find this book useful. A basic
                 knowledge of programming is assumed.",
  acknowledgement = ack-nhfb,
  subject =      "Julia (Computer program language); Application
                 software; Development; Computer programs; COMPUTERS /
                 Programming Languages / General; Computer programs;
                 Julia (Computer program language)",
  tableofcontents = "Cover \\
                 Title Page \\
                 Copyright and Credits \\
                 Dedication \\
                 About Packt \\
                 Contributors \\
                 Table of Contents \\
                 Preface \\
                 1: Getting Started with Julia Programming \\
                 Technical requirements \\
                 Why Julia? \\
                 Good performance \\
                 Concise, readable, and intuitive syntax \\
                 Powerful and productive dynamic type system \\
                 Designed for parallelism and distributed computation
                 \\
                 Efficient intercommunication with other languages \\
                 Powerful REPL and shell-like capabilities \\
                 And more \ldots{} \\
                 Installing Julia \\
                 Windows \\
                 Official Windows installer \\
                 Using Chocolatey \\
                 Windows Subsystem for Linux \\
                 macOS \\
                 Official image \\
                 HomebrewLinux and FreeBSDDocker \\
                 JuliaPro \\
                 JuliaBox \\
                 Choosing an IDE \\
                 Juno (Atom) \\
                 Visual Studio Code \\
                 IJulia (JuliaBox) \\
                 Other options \\
                 Getting started with Julia \\
                 The Julia REPL \\
                 Interacting with the REPL \\
                 The ans variable \\
                 Prompt pasting \\
                 Tab completion \\
                 Cleaning the REPL scope \\
                 Additional REPL modes \\
                 Accessing the documentation with the help mode \\
                 Shell mode \\
                 Search modes \\
                 The startup.jl file \\
                 REPL hooks \\
                 Exiting the REPL \\
                 The package system \\
                 Adding a package \\
                 OhMyREPL \\
                 Custom package installation \\
                 Revise \\
                 Checking the package status \\
                 Using packages \\
                 One more step \\
                 Updating packages \\
                 Pinning packages \\
                 Removing packages \\
                 Discovering packages \\
                 Registered versus unregistered \\
                 Summary \\
                 2: Creating Our First Julia App \\
                 Technical requirements \\
                 Defining variables \\
                 Constants \\
                 Why are constants important? \\
                 Comments \\
                 Strings \\
                 Triple-quoted strings \\
                 Concatenating strings \\
                 Interpolating strings \\
                 Manipulating strings \\
                 Unicode and UTF-8 \\
                 Regular expressions \\
                 Raw string literals \\
                 Numbers \\
                 Integers \\
                 Overflow behavior \\
                 Floating-point numbers \\
                 Rational numbers \\
                 Numerical operators \\
                 Vectorized dot operators \\
                 There's more to it \\
                 Tuples \\
                 Named tuples \\
                 Ranges \\
                 Arrays \\
                 Iteration \\
                 Mutating arrays \\
                 Comprehensions \\
                 Generators \\
                 Exploratory data analysis with Julia \\
                 The Iris flower dataset \\
                 Using the RDatasets package \\
                 Using simple statistics to better understand our data
                 \\
                 Visualizing the Iris flowers data \\
                 Loading and saving our data \\
                 Saving and loading using tabular file formats \\
                 Working with Feather files \\
                 Saving and loading with MongoDB \\
                 Summary \\
                 3: Setting Up the Wiki Game \\
                 Technical requirements \\
                 Data harvesting through web scraping \\
                 How the web works \\
                 a crash course \\
                 Making HTTP requests \\
                 Learning about HTTP methods \\
                 Understanding HTTPS \\
                 Understanding HTML documents \\
                 HTML selectors \\
                 Learning about the HTML attributes \\
                 Learning about CSS and JavaScript selectors \\
                 Understanding the structure of a link \\
                 Accessing the internet from Julia \\
                 Making requests with the HTTP package \\
                 Handling HTTP responses \\
                 HTTP status codes \\
                 Learning about HTTP headers \\
                 The HTTP message body \\
                 Understanding HTTP responses \\
                 The status code \\
                 The headers \\
                 The message body \\
                 Learning about pairs \\
                 Dictionaries \\
                 Constructing dictionaries \\
                 Ordered dictionaries \\
                 Working with dictionaries \\
                 Using the HTTP response \\
                 Manipulating the response body",
}

@InProceedings{Srivastava:2018:PEE,
  author =       "P. Srivastava and M. Kang and S. K. Gonugondla and S.
                 Lim and J. Choi and V. Adve and N. S. Kim and N.
                 Shanbhag",
  booktitle =    "{2018 ACM/IEEE 45th Annual International Symposium on
                 Computer Architecture (ISCA)}",
  title =        "{PROMISE}: An End-to-End Design of a Programmable
                 Mixed-Signal Accelerator for Machine-Learning
                 Algorithms",
  publisher =    pub-IEEE,
  address =      pub-IEEE:adr,
  pages =        "43--56",
  year =         "2018",
  DOI =          "https://doi.org/10.1109/ISCA.2018.00015",
  bibdate =      "Thu Apr 8 07:17:08 2021",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/julia.bib",
  acknowledgement = ack-nhfb,
  keywords =     "Julia programming language",
}

@InProceedings{Voulgaris:2018:J,
  author =       "Zacharias Voulgaris",
  booktitle =    "{Encyclopedia of Big Data Technologies}",
  title =        "{Julia}",
  publisher =    pub-SV,
  address =      pub-SV:adr,
  pages =        "??--??",
  year =         "2018",
  DOI =          "https://doi.org/10.1007/978-3-319-63962-8_268-2",
  bibdate =      "Fri Apr 9 07:54:52 MDT 2021",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/julia.bib",
  URL =          "http://link.springer.com/referenceworkentry/10.1007/978-3-319-63962-8_268-2",
  acknowledgement = ack-nhfb,
}

@Article{Amores:2019:ACB,
  author =       "V{\'\i}ctor Jes{\'u}s Amores and Jos{\'e} Mar{\'\i}a
                 Ben{\'\i}tez and Francisco Javier Mont{\'a}ns",
  title =        "Average-chain behavior of isotropic incompressible
                 polymers obtained from macroscopic experimental data.
                 {A} simple structure-based {WYPiWYG} model in {Julia}
                 language",
  journal =      j-ADV-ENG-SOFTWARE,
  volume =       "130",
  pages =        "41--57",
  year =         "2019",
  CODEN =        "AESODT",
  DOI =          "https://doi.org/10.1016/j.advengsoft.2019.01.004",
  ISSN =         "0965-9978 (print), 0141-1195 (electronic)",
  ISSN-L =       "0965-9978",
  bibdate =      "Fri Apr 9 15:22:25 2021",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/julia.bib",
  URL =          "https://www.sciencedirect.com/science/article/pii/S0965997818310779",
  abstract =     "Elastomeric materials and soft biological tissues are
                 made up of synthetic and protein fibers, respectively.
                 The uncoiling of these fibers during loading produces a
                 non-linear elastic macroscopic behavior in the regime
                 of finite strains. Many hyperelastic models have been
                 developed to reproduce this behavior assuming the
                 existence of a strain energy function. In
                 structure-based models, the analytical energy function
                 is obtained from the stored energy of all the material
                 constituents. This stored energy is given frequently by
                 the entropy of the chain network obtained from Langevin
                 statistical treatment of the possible configurations
                 adopted by the chains, and a representative cell for
                 their spatial distribution. One of the most used models
                 is the eight chain model, being its salient feature
                 that it reproduces the overall response of isotropic
                 hyperelastic materials with only two material
                 parameters obtained from a tensile test. On the other
                 hand, in WYPiWYG hyperelasticity the stored energies
                 are numerical instead of analytical and capture, to any
                 precision, the experimental tests on the material.
                 However, due to their phenomenological nature, their
                 determination requires more tests. In this work, we
                 develop a microstructure-based WYPiWYG hyperelastic
                 model in which the average chain behavior is obtained
                 from macroscopic tests through a simple automatic
                 inverse procedure. We show that, without assuming a
                 probability distribution function nor any particular
                 chain arrangement, we obtain, at the same computational
                 cost, better predictions than the 8-chain model. Code
                 of the model and of the examples in the Julia
                 programming language are included.",
  acknowledgement = ack-nhfb,
  fjournal =     "Advances in Engineering Software (1978)",
  journal-URL =  "http://www.sciencedirect.com/science/journal/01411195",
  keywords =     "Eight chain model, WYPiWYG hyperelasticity,
                 Micromechanics, Julia",
}

@Book{Balbaert:2019:JPC,
  author =       "Ivo Balbaert and Adrian Salceanu",
  title =        "{Julia 1.0} programming complete reference guide:
                 discover {Julia}, a high-performance language for
                 technical computing",
  publisher =    pub-PACKT,
  address =      pub-PACKT:adr,
  pages =        "viii + 451",
  year =         "2019",
  ISBN =         "1-83882-467-7",
  ISBN-13 =      "978-1-83882-224-8, 978-1-83882-467-9",
  LCCN =         "QA76.73.J84",
  bibdate =      "Thu Apr 8 11:03:56 MDT 2021",
  bibsource =    "fsz3950.oclc.org:210/WorldCat;
                 https://www.math.utah.edu/pub/tex/bib/julia.bib",
  series =       "Learning path",
  URL =          "http://proquest.safaribooksonline.com/?fpi=9781838822248",
  abstract =     "Learn dynamic programming with Julia to build apps for
                 data analysis, visualization, machine learning, and the
                 web Key Features Leverage Julia's high speed and
                 efficiency to build fast, efficient applications
                 Perform supervised and unsupervised machine learning
                 and time series analysis Tackle problems concurrently
                 and in a distributed environment Book Description Julia
                 offers the high productivity and ease of use of Python
                 and R with the lightning-fast speed of C++. There's
                 never been a better time to learn this language, thanks
                 to its large-scale adoption across a wide range of
                 domains, including fintech, biotech and artificial
                 intelligence (AI). You will begin by learning how to
                 set up a running Julia platform, before exploring its
                 various built-in types. This Learning Path walks you
                 through two important collection types: arrays and
                 matrices. You'll be taken through how type conversions
                 and promotions work, and in further chapters you'll
                 study how Julia interacts with operating systems and
                 other languages. You'll also learn about the use of
                 macros, what makes Julia suitable for numerical and
                 scientific computing, and how to run external programs.
                 Once you have grasped the basics, this Learning Path
                 goes on to how to analyze the Iris dataset using
                 DataFrames. While building a web scraper and a web app,
                 you'll explore the use of functions, methods, and
                 multiple dispatches. In the final chapters, you'll
                 delve into machine learning, where you'll build a book
                 recommender system. By the end of this Learning Path,
                 you'll be well versed with Julia and have the skills
                 you need to leverage its high speed and efficiency for
                 your applications. This Learning Path includes content
                 from the following Packt products: Julia 1.0
                 Programming - Second Edition by Ivo Balbaert Julia
                 Programming Projects by Adrian Salceanu What you will
                 learn Create your own types to extend the built-in type
                 system Visualize your data in Julia with plotting
                 packages Explore the use of built-in macros for testing
                 and debugging Integrate Julia with other languages such
                 as C, Python, and MATLAB Analyze and manipulate
                 datasets using Julia and DataFrames Develop and run a
                 web app using Julia and the HTTP package Build a
                 recommendation system using supervised machine learning
                 Who this book is for If you are a statistician or data
                 scientist who wants a quick course in the Julia
                 programming language while building big data
                 applications, this Learning Path is for you.",
  acknowledgement = ack-nhfb,
  subject =      "Julia (Computer program language); Application
                 software; Development; Development; Julia (Computer
                 program language)",
}

@Article{Besard:2019:EEP,
  author =       "Tim Besard and Christophe Foket and Bjorn {De
                 Sutter}",
  title =        "Effective Extensible Programming: Unleashing {Julia}
                 on {GPUs}",
  journal =      j-IEEE-TRANS-PAR-DIST-SYS,
  volume =       "30",
  number =       "4",
  pages =        "827--841",
  month =        apr,
  year =         "2019",
  CODEN =        "ITDSEO",
  DOI =          "https://doi.org/10.1109/TPDS.2018.2872064",
  ISSN =         "1045-9219 (print), 1558-2183 (electronic)ITDSEO",
  ISSN-L =       "1045-9219",
  bibdate =      "Mon Dec 18 08:06:55 2023",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/ieeetranspardistsys.bib;
                 https://www.math.utah.edu/pub/tex/bib/julia.bib",
  URL =          "https://ieeexplore.ieee.org/document/8471188/",
  acknowledgement = ack-nhfb,
  fjournal =     "IEEE Transactions on Parallel and Distributed
                 Systems",
  journal-URL =  "https://ieeexplore.ieee.org/xpl/RecentIssue.jsp?punumber=71",
  keywords =     "Julia programming language",
}

@Article{Biel:2019:PPJ,
  author =       "Martin Biel and Arda Aytekin and Mikael Johansson",
  title =        "\pkg{POLO.jl}: Policy-based optimization algorithms in
                 {Julia}",
  journal =      j-ADV-ENG-SOFTWARE,
  volume =       "136",
  pages =        "102695",
  year =         "2019",
  CODEN =        "AESODT",
  DOI =          "https://doi.org/10.1016/j.advengsoft.2019.102695",
  ISSN =         "0965-9978 (print), 0141-1195 (electronic)",
  ISSN-L =       "0965-9978",
  bibdate =      "Fri Apr 9 15:22:25 2021",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/julia.bib",
  URL =          "https://www.sciencedirect.com/science/article/pii/S0965997818311049",
  abstract =     "We present POLO.jl a Julia package that helps
                 algorithm developers and machine-learning practitioners
                 design and use state-of-the-art parallel optimization
                 algorithms in a flexible and efficient way. POLO.jl
                 extends our C++ library POLO, which has been designed
                 and implemented with the same intentions. POLO.jl not
                 only wraps selected algorithms in POLO and provides an
                 easy mechanism to use data manipulation facilities and
                 loss function definitions in Julia together with the
                 underlying compiled C++ library, but it also uses the
                 policy-based design technique in a Julian way to help
                 users prototype optimization algorithms from their own
                 building blocks. In our experiments, we observe that
                 there is little overhead when using the compiled C++
                 code directly within Julia. We also notice that the
                 performance of algorithms implemented in pure Julia is
                 comparable with that of their C++ counterparts. Both
                 libraries are hosted on
                 GitHub11https://github.com/pologrpunder the free MIT
                 license, and can be used easily by pulling the
                 pre-built 64-bit architecture Docker
                 images.22https://hub.docker.com/r/pologrp/polo-julia/",
  acknowledgement = ack-nhfb,
  fjournal =     "Advances in Engineering Software (1978)",
  journal-URL =  "http://www.sciencedirect.com/science/journal/01411195",
}

@InProceedings{Bogomolov:2019:J,
  author =       "Sergiy Bogomolov and Marcelo Forets and Goran Frehse
                 and Kostiantyn Potomkin and Christian Schilling",
  booktitle =    "{Proceedings of the 22nd ACM International Conference
                 on Hybrid Systems: Computation and Control}",
  title =        "{JuliaReach}",
  publisher =    pub-ACM,
  address =      pub-ACM:adr,
  month =        apr,
  year =         "2019",
  DOI =          "https://doi.org/10.1145/3302504.3311804",
  bibdate =      "Thu Apr 8 08:02:29 2021",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/julia.bib",
  acknowledgement = ack-nhfb,
  keywords =     "Julia programming language",
}

@Book{Caraiani:2019:IQM,
  author =       "Petre Caraiani",
  title =        "Introduction to Quantitative Macroeconomics Using
                 {Julia}: From Basic to State-of-the-Art Computational
                 Techniques",
  publisher =    pub-ACADEMIC,
  address =      pub-ACADEMIC:adr,
  year =         "2019",
  DOI =          "https://doi.org/10.1016/B978-0-12-812219-8.00008-2",
  ISBN =         "0-12-812219-6, 0-12-813512-3 (e-book)",
  ISBN-13 =      "978-0-12-812219-8, 978-0-12-813512-9 (e-book)",
  LCCN =         "HB172.5",
  bibdate =      "Thu Apr 8 16:44:48 MDT 2021",
  bibsource =    "fsz3950.oclc.org:210/WorldCat;
                 https://www.math.utah.edu/pub/tex/bib/julia.bib",
  URL =          "https://www.sciencedirect.com/science/article/pii/B9780128122198000082",
  abstract =     "\booktitle{Introduction to Quantitative Macroeconomics
                 Using Julia: From Basic to State-of-the-Art
                 Computational Techniques} facilitates access to
                 fundamental techniques in computational and
                 quantitative macroeconomics. It focuses on the recent
                 and very promising software, Julia, which offers a
                 MATLAB-like language at speeds comparable to C/Fortran,
                 also discussing modeling challenges that make
                 quantitative macroeconomics dynamic, a key feature that
                 few books on the topic include for macroeconomists who
                 need the basic tools to build, solve and simulate
                 macroeconomic models. This book neatly fills the gap
                 between intermediate macroeconomic books and modern
                 DSGE models used in research. Combines an introduction
                 to Julia, with the specific needs of macroeconomic
                 students who are interested in DSGE models and PhD
                 students and researchers interested in building DSGE
                 models Teaches fundamental techniques in quantitative
                 macroeconomics by introducing theoretical elements of
                 key macroeconomic models and their potential
                 algorithmic implementations. Exposes researchers
                 working in macroeconomics to state-of-the-art
                 computational techniques for simulating and solving
                 DSGE models''",
  acknowledgement = ack-nhfb,
  keywords =     "Julia Language, IDE, Type System, Multiple Dispatch,
                 Vectorization",
  subject =      "Macroeconomics; Computer simulation; Julia (Computer
                 program language); BUSINESS and ECONOMICS / Economics /
                 Macroeconomics; POLITICAL SCIENCE / Economic
                 Conditions; Julia (Computer program language); Computer
                 simulation.",
  tableofcontents = "Introduction to Julia \\
                 Basic numerical techniques \\
                 Solving and simulating DSGE models \\
                 Dynamic programming \\
                 Advanced numerical techniques \\
                 Heterogeneous agents models",
}

@Article{Carlsson:2019:TJT,
  author =       "Kristoffer Carlsson and Fredrik Ekre",
  title =        "\pkg{Tensors.jl} --- Tensor Computations in {Julia}",
  journal =      j-J-OPEN-RES-SOFT,
  volume =       "7",
  number =       "1",
  pages =        "7--??",
  day =          "21",
  month =        mar,
  year =         "2019",
  CODEN =        "????",
  DOI =          "https://doi.org/10.5334/jors.182",
  ISSN =         "2049-9647",
  ISSN-L =       "2049-9647",
  bibdate =      "Fri Dec 2 07:12:44 MST 2022",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/jors.bib;
                 https://www.math.utah.edu/pub/tex/bib/julia.bib",
  URL =          "https://openresearchsoftware.metajnl.com/articles/10.5334/jors.182/",
  acknowledgement = ack-nhfb,
  fjournal =     "Journal of Open Research Software",
  journal-URL =  "https://openresearchsoftware.metajnl.com/issue/archive/",
}

@InProceedings{Congedo:2019:JPM,
  author =       "M. Congedo and S. Jain",
  editor =       "{IEEE}",
  booktitle =    "{2019 IEEE International Conference on Systems, Man
                 and Cybernetics (SMC)}",
  title =        "A {Julia} Package for manipulating Brain--Computer
                 Interface Data in the Manifold of Positive Definite
                 Matrices",
  publisher =    pub-IEEE,
  address =      pub-IEEE:adr,
  pages =        "211--216",
  year =         "2019",
  DOI =          "https://doi.org/10.1109/SMC.2019.8914223",
  bibdate =      "Mon Dec 18 08:06:55 2023",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/julia.bib",
  acknowledgement = ack-nhfb,
  keywords =     "Julia programming language",
}

@InProceedings{Cunningham:2019:PPJ,
  author =       "Nathan Cunningham and Jim E. Griffin and David L. Wild
                 and Anthony Lee",
  booktitle =    "{Bayesian Statistics and New Generations}",
  title =        "\pkg{particleMDI}: a {Julia} Package for the
                 Integrative Cluster Analysis of Multiple Datasets",
  publisher =    pub-SV,
  address =      pub-SV:adr,
  pages =        "??--??",
  year =         "2019",
  DOI =          "https://doi.org/10.1007/978-3-030-30611-3_7",
  bibdate =      "Fri Apr 9 07:54:52 MDT 2021",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/julia.bib",
  URL =          "http://link.springer.com/chapter/10.1007/978-3-030-30611-3_7",
  acknowledgement = ack-nhfb,
}

@InProceedings{Dinari:2019:DMI,
  author =       "Or Dinari and Angel Yu and Oren Freifeld and John
                 Fisher",
  editor =       "{IEEE}",
  booktitle =    "{2019 19th IEEE\slash ACM International Symposium on
                 Cluster, Cloud and Grid Computing (CCGRID)}",
  title =        "Distributed {MCMC} Inference in {Dirichlet} Process
                 Mixture Models Using {Julia}",
  publisher =    pub-IEEE,
  address =      pub-IEEE:adr,
  pages =        "518--525",
  year =         "2019",
  DOI =          "https://doi.org/10.1109/CCGRID.2019.00066",
  bibdate =      "Mon Dec 18 08:06:55 2023",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/julia.bib",
  acknowledgement = ack-nhfb,
}

@Book{Downey:2019:TJ,
  author =       "Allen B. Downey and Ben Lauwens",
  title =        "Think {Julia}",
  publisher =    pub-ORA-MEDIA,
  address =      pub-ORA-MEDIA:adr,
  year =         "2019",
  ISBN =         "1-4920-4500-4 (e-book), 1-4920-4503-9",
  ISBN-13 =      "978-1-4920-4500-7 (e-book), 978-1-4920-4503-8",
  LCCN =         "QA76.73.J85 L38 2019",
  bibdate =      "Thu Apr 8 16:41:21 MDT 2021",
  bibsource =    "fsz3950.oclc.org:210/WorldCat;
                 https://www.math.utah.edu/pub/tex/bib/julia.bib;
                 https://www.math.utah.edu/pub/tex/bib/unicode.bib",
  abstract =     "If you're just learning how to program, Julia is an
                 excellent JIT-compiled, dynamically-typed language with
                 a clean syntax. This hands-on guide uses Julia (version
                 1.0) to walk you through programming one step at a
                 time, beginning with basic programming concepts before
                 moving on to more advanced capabilities, such as
                 creating new types and multiple dispatch. Designed from
                 the beginning for high performance, Julia is a
                 general-purpose language not only ideal for numerical
                 analysis and computational science, but also for web
                 programming or scripting. Through exercises in each
                 chapter, you'll try out programming concepts as you
                 learn them. Think Julia is ideal for students at the
                 high school or college level, as well as self-learners,
                 home-schooled students, and professionals who need to
                 learn programming basics. Start with the basics,
                 including language syntax and semantics Get a clear
                 definition of each programming concept Learn about
                 values, variables, statements, functions, and data
                 structures in a logical progression Discover how to
                 work with files and databases Understand types,
                 methods, and multiple dispatch Use debugging techniques
                 to fix syntax, runtime, and semantic errors Explore
                 interface design and data structures through case
                 studies.",
  acknowledgement = ack-nhfb,
  subject =      "Julia (Computer program language); Computer
                 programming; Data structures (Computer science);
                 Object-oriented programming (Computer science);
                 COMPUTERS; Programming Languages; General; Computer
                 programming; Data structures (Computer science); Julia
                 (Computer program language); Object-oriented
                 programming (Computer science)",
  tableofcontents = "The way of the program \\
                 Variables, expressions, and statements \\
                 Functions \\
                 Case study: interface design \\
                 Conditionals and recursion \\
                 Fruitful functions \\
                 Iteration \\
                 Strings \\
                 Case study: word play \\
                 Arrays \\
                 Dictionaries \\
                 Tuples \\
                 Case study: data structure selection \\
                 Files \\
                 Structs and objects \\
                 Structs and functions \\
                 Multiple dispatch \\
                 Subtyping \\
                 The goodies: syntax \\
                 The goodies: base and standard library \\
                 Debugging \\
                 Unicode input \\
                 JuliaBox",
}

@InProceedings{Farhana:2019:SPE,
  author =       "Effat Farhana and Nasif Imtiaz and Akond Rahman",
  editor =       "{IEEE}",
  booktitle =    "{2019 IEEE International Conference on Software
                 Maintenance and Evolution (ICSME)}",
  title =        "Synthesizing Program Execution Time Discrepancies in
                 {Julia} Used for Scientific Software",
  publisher =    pub-IEEE,
  address =      pub-IEEE:adr,
  pages =        "496--500",
  year =         "2019",
  DOI =          "https://doi.org/10.1109/ICSME.2019.00083",
  bibdate =      "Mon Dec 18 08:06:55 2023",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/julia.bib",
  acknowledgement = ack-nhfb,
  keywords =     "Julia programming language",
}

@Article{Fischer:2019:BRD,
  author =       "Daniel Fischer",
  title =        "Book Review: {{\booktitle{Data Science with Julia}},
                 Paul D. McNicholas and Peter A. Tait, CRC Press, 2019,
                 220 pages, \pounds 37.59, paperback, ISBN:
                 978-1-138-49998-0}",
  journal =      j-INT-STAT-REV,
  volume =       "87",
  number =       "2",
  pages =        "445--446",
  month =        aug,
  year =         "2019",
  CODEN =        "ISTRDP",
  DOI =          "https://doi.org/10.1111/insr.12345",
  ISSN =         "0306-7734 (print), 1751-5823 (electronic)",
  ISSN-L =       "0306-7734",
  bibdate =      "Sat Sep 7 07:31:05 MDT 2019",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/intstatrev.bib;
                 https://www.math.utah.edu/pub/tex/bib/julia.bib",
  acknowledgement = ack-nhfb,
  fjournal =     "International Statistical Review",
  journal-URL =  "http://onlinelibrary.wiley.com/journal/10.1111/(ISSN)1751-5823;
                 http://www.jstor.org/journals/03067734.html",
  onlinedate =   "13 August 2019",
}

@InProceedings{Gevorkyan:2019:SSC,
  author =       "Migran N. Gevorkyan and Anna V. Korolkova and Dmitry
                 S. Kulyabov and Konstantin P. Lovetskiy",
  booktitle =    "{Numerical Methods and Applications}",
  title =        "Statistically Significant Comparative Performance
                 Testing of {Julia} and {Fortran} Languages in Case of
                 {Runge--Kutta} Methods",
  publisher =    pub-SV,
  address =      pub-SV:adr,
  pages =        "??--??",
  year =         "2019",
  DOI =          "https://doi.org/10.1007/978-3-030-10692-8_45",
  bibdate =      "Fri Apr 9 07:54:52 MDT 2021",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/fortran3.bib;
                 https://www.math.utah.edu/pub/tex/bib/julia.bib",
  URL =          "http://link.springer.com/chapter/10.1007/978-3-030-10692-8_45",
  acknowledgement = ack-nhfb,
}

@InProceedings{Gjersvik:2019:PSA,
  author =       "A. Gjersvik and R. J. Moss",
  booktitle =    "{2019 IEEE High Performance Extreme Computing
                 Conference (HPEC)}",
  title =        "A Parallel Simulation Approach to {ACAS X}
                 Development",
  publisher =    pub-IEEE,
  address =      pub-IEEE:adr,
  pages =        "1--6",
  year =         "2019",
  DOI =          "https://doi.org/10.1109/HPEC.2019.8916301",
  bibdate =      "Thu Apr 8 07:17:08 2021",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/julia.bib",
  abstract =     "With a rapidly growing and evolving National Airspace
                 System (NAS), ACAS X is intended to be the
                 nextgeneration airborne collision avoidance system that
                 can meet the demands its predecessor could not. The
                 ACAS X algorithms are developed in the Julia
                 programming language and are exercised in simulation
                 environments tailored to test different characteristics
                 of the system. Massive parallelization of these
                 simulation environments has been implemented on the
                 Lincoln Laboratory Supercomputing Center cluster in
                 order to expedite the design and performance
                 optimization of the system. This work outlines the
                 approach to parallelization of one of our simulation
                 tools and presents the resulting simulation speedups as
                 well as a discussion on how it will enhance system
                 characterization and design. Parallelization has made
                 our simulation environment 33 times faster, which has
                 greatly sped up the development process of ACAS X.",
  acknowledgement = ack-nhfb,
  keywords =     "Julia programming language",
}

@Article{Glos:2019:PQJ,
  author =       "Adam Glos and Jaros{\l}aw Adam Miszczak and Mateusz
                 Ostaszewski",
  title =        "\pkg{QSWalk.jl}: {Julia} package for quantum
                 stochastic walks analysis",
  journal =      j-COMP-PHYS-COMM,
  volume =       "235",
  number =       "??",
  pages =        "414--421",
  month =        feb,
  year =         "2019",
  CODEN =        "CPHCBZ",
  DOI =          "https://doi.org/10.1016/j.cpc.2018.09.001",
  ISSN =         "0010-4655 (print), 1879-2944 (electronic)",
  ISSN-L =       "0010-4655",
  bibdate =      "Thu Apr 8 08:02:29 2021",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/compphyscomm2010.bib;
                 https://www.math.utah.edu/pub/tex/bib/julia.bib",
  URL =          "https://www.sciencedirect.com/science/article/pii/S0010465518303151",
  abstract =     "The paper describes QSWalk.jl package for Julia
                 programming language, developed for the purpose of
                 simulating the evolution of open quantum systems. The
                 package enables the study of quantum procedures
                 developed using stochastic quantum walks on arbitrary
                 directed graphs. We provide a detailed description of
                 the implemented functions, along with a number of usage
                 examples. The package is compared with the existing
                 software offering a similar functionality. Program
                 summary Program Title: QSWalk.jl Program Files doi:
                 https://doi.org/10.17632/6x37kcvvrp.1 Licensing
                 provisions: MIT Programming language: Julia Nature of
                 problem: The package implements functions for
                 simulating quantum stochastic walks, including local
                 regime, global regime, and nonmoralizing global regime
                 (Julia documentation, 2018). It can be used for
                 arbitrary quantum continuous evolution based on GKSL
                 master equation on arbitrary graphs. Solution method:
                 We utilize Expokit routines for fast sparse matrix
                 exponentials on vectors. For dense matrices,
                 exponentiation is computed separately, which is faster
                 for small matrices. Restrictions: Currently package
                 requires Julia v0.6 or higher. [1] K. Domino, A. Glos,
                 M. Ostaszewski, Superdiffusive quantum stochastic walk
                 definable of arbitrary directed graph, Quantum Inform.
                 Comput 17 (11-12) (2017) 973 986.",
  acknowledgement = ack-nhfb,
  fjournal =     "Computer Physics Communications",
  journal-URL =  "http://www.sciencedirect.com/science/journal/00104655",
  keywords =     "Directed graph; Julia programming language; Moral
                 graph; Open quantum system; Quantum walk",
}

@InProceedings{Huang:2019:PCJ,
  author =       "Ruizhu Huang and Weijia Xu and Yinzhi Wang and Silvia
                 Liverani and Ann E. Stapleton",
  editor =       "{IEEE}",
  booktitle =    "{2019 IEEE International Conference on Big Data (Big
                 Data)}",
  title =        "Performance Comparison of {Julia} Distributed
                 Implementations of {Dirichlet} Process Mixture Models",
  publisher =    pub-IEEE,
  address =      pub-IEEE:adr,
  pages =        "3350--3354",
  year =         "2019",
  DOI =          "https://doi.org/10.1109/BigData47090.2019.9005453",
  bibdate =      "Mon Dec 18 08:06:55 2023",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/julia.bib",
  acknowledgement = ack-nhfb,
  keywords =     "Julia programming language",
}

@InProceedings{Koolen:2019:JRS,
  author =       "Twan Koolen and Robin Deits",
  editor =       "{IEEE}",
  booktitle =    "{2019 International Conference on Robotics and
                 Automation (ICRA)}",
  title =        "{Julia} for robotics: simulation and real-time control
                 in a high-level programming language",
  publisher =    pub-IEEE,
  address =      pub-IEEE:adr,
  pages =        "604--611",
  year =         "2019",
  DOI =          "https://doi.org/10.1109/ICRA.2019.8793875",
  bibdate =      "Mon Dec 18 08:06:55 2023",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/julia.bib",
  acknowledgement = ack-nhfb,
  keywords =     "Julia programming language",
}

@Book{Kwon:2019:JPO,
  author =       "Changhyun Kwon",
  title =        "{Julia} programming for operations research",
  publisher =    "Independently published",
  address =      "North Charleston, SC, USA",
  edition =      "Second",
  pages =        "x + 250",
  year =         "2019",
  ISBN =         "1-79820-547-5",
  ISBN-13 =      "978-1-79820-547-1",
  LCCN =         "QA76.73.J85 K8-62-019",
  bibdate =      "Thu Apr 8 16:47:14 MDT 2021",
  bibsource =    "fsz3950.oclc.org:210/WorldCat;
                 https://www.math.utah.edu/pub/tex/bib/julia.bib",
  abstract =     "This book is neither a textbook in numerical methods,
                 a comprehensive introductory book to Julia programming,
                 a textbook on numerical optimization, a complete manual
                 of optimization solvers, nor an introductory book to
                 computational science and engineering --- it is a
                 little bit of all.",
  acknowledgement = ack-nhfb,
  remark =       "Now Julia v1.0 and JuMP v0.19 have been released.
                 There were major upgrades in both Julia and JuMP
                 including many breaking changes. The second edition of
                 this book has been updated to reflect these changes. In
                 addition, new chapters for ``Interior Point Methods''
                 and ``Complementarity Problems'' are added.",
  subject =      "Operations Research.; Programmierung.; Julia
                 (Programmiersprache)",
  tableofcontents = "1. Introduction and installation \\
                 2. Simple linear optimization \\
                 3. Basics of the Julia language \\
                 4. Selected topics in numerical methods \\
                 5. The simplex method \\
                 6. Network optimization problems \\
                 7. Interior point methods \\
                 8. Nonlinear optimization problems \\
                 9. Monte Carlo methods \\
                 10. Lagrangian relaxation \\
                 11. Complementary problems \\
                 12. Parameters in optimization solvers",
}

@Book{Kwong:2019:HDP,
  author =       "Tom Kwong",
  title =        "Hands-on design patterns with {Julia 1.0}: a
                 comprehensive guide to build robust, reusable, and
                 easily maintainable applications",
  publisher =    pub-PACKT,
  address =      pub-PACKT:adr,
  pages =        "532",
  year =         "2019",
  ISBN =         "1-83864-661-2, 1-83864-661-2 (PDF)",
  ISBN-13 =      "978-1-83864-661-5, 978-1-83864-661-5 (PDF)",
  LCCN =         "QA76.73.J85",
  bibdate =      "Thu Apr 8 17:04:42 MDT 2021",
  bibsource =    "fsz3950.oclc.org:210/WorldCat;
                 https://www.math.utah.edu/pub/tex/bib/julia.bib",
  abstract =     "Design and develop high-performance, reusable, and
                 maintainable applications using traditional and modern
                 Julia patterns with this comprehensive guide. Key
                 Features Explore useful design patterns along with
                 object-oriented programming in Julia 1.0. Implement
                 macros and metaprogramming techniques to make your code
                 faster, concise, and efficient Develop the skills
                 necessary to implement design patterns for creating
                 robust and maintainable applications Book Description
                 Design patterns are fundamental techniques for
                 developing reusable and maintainable code. They provide
                 a set of proven solutions that allow developers to
                 solve problems in software development quickly. This
                 book will demonstrate how to leverage design patterns
                 with real-world applications. . Starting with an
                 overview of design patterns and best practices in
                 application design, you'll learn about some of the most
                 fundamental Julia features such as modules, data types,
                 functions\slash interfaces, and metaprogramming. You'll
                 then get to grips with the modern Julia design patterns
                 for building large-scale applications with a focus on
                 performance, reusability, robustness, and
                 maintainability. The book also covers anti-patterns and
                 how to avoid common mistakes and pitfalls in
                 development. You'll see how traditional object-oriented
                 patterns can be implemented differently and more
                 effectively in Julia. Finally, you'll explore various
                 use cases and examples, such as how expert Julia
                 developers use design patterns in their open source
                 packages. By the end of this Julia programming book,
                 you'll have learned methods to improve software design,
                 extensibility, and reusability, and be able to use
                 design patterns efficiently to overcome common
                 challenges in software development. What you will learn
                 Master the Julia language features that are key to
                 developing large-scale software applications Discover
                 design patterns to improve overall application
                 architecture and design. Develop reusable programs that
                 are modular, extendable, performant, and easy to
                 maintain. Weigh up the pros and cons of using different
                 design patterns for use cases. Explore methods for
                 transitioning from object-oriented programming to using
                 equivalent or more advanced Julia techniques Who this
                 book is for This book is for beginner to
                 intermediate-level Julia programmers who want to
                 enhance their skills in designing and developing
                 large-scale applications.",
  acknowledgement = ack-nhfb,
  subject =      "Julia (Computer program language); Computer software;
                 Development; Development; Julia (Computer program
                 language)",
}

@Book{Lauwens:2019:TJH,
  author =       "Ben Lauwens and Allen Downey",
  title =        "Think {Julia}: how to think like a computer
                 scientist",
  publisher =    pub-ORA-MEDIA,
  address =      pub-ORA-MEDIA:adr,
  pages =        "xviii + 276",
  year =         "2019",
  ISBN =         "1-4920-4503-9",
  ISBN-13 =      "978-1-4920-4503-8",
  LCCN =         "QA76.73.J85",
  bibdate =      "Thu Apr 8 17:09:12 MDT 2021",
  bibsource =    "fsz3950.oclc.org:210/WorldCat;
                 https://www.math.utah.edu/pub/tex/bib/julia.bib",
  URL =          "http://proquest.safaribooksonline.com/?fpi=9781492045021",
  abstract =     "If you're just learning how to program, Julia is an
                 excellent JIT-compiled, dynamically-typed language with
                 a clean syntax. This hands-on guide uses Julia (version
                 1.0) to walk you through programming one step at a
                 time, beginning with basic programming concepts before
                 moving on to more advanced capabilities, such as
                 creating new types and multiple dispatch. Designed from
                 the beginning for high performance, Julia is a
                 general-purpose language not only ideal for numerical
                 analysis and computational science, but also for web
                 programming or scripting. Through exercises in each
                 chapter, you'll try out programming concepts as you
                 learn them. Think Julia is ideal for students at the
                 high school or college level, as well as self-learners,
                 home-schooled students, and professionals who need to
                 learn programming basics. Start with the basics,
                 including language syntax and semantics Get a clear
                 definition of each programming concept Learn about
                 values, variables, statements, functions, and data
                 structures in a logical progression Discover how to
                 work with files and databases Understand types,
                 methods, and multiple dispatch Use debugging techniques
                 to fix syntax, runtime, and semantic errors Explore
                 interface design and data structures through case
                 studies.",
  acknowledgement = ack-nhfb,
  subject =      "Julia (Computer program language); Dynamic
                 programming; Dynamic programming.; Julia (Computer
                 program language)",
}

@InProceedings{Lobianco:2019:IJO,
  author =       "Antonello Lobianco",
  booktitle =    "{Julia Quick Syntax Reference}",
  title =        "Interfacing {Julia} with Other Languages",
  publisher =    pub-SV,
  address =      pub-SV:adr,
  pages =        "??--??",
  year =         "2019",
  DOI =          "https://doi.org/10.1007/978-1-4842-5190-4_7",
  bibdate =      "Fri Apr 9 07:54:52 MDT 2021",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/julia.bib",
  URL =          "http://link.springer.com/chapter/10.1007/978-1-4842-5190-4_7",
  acknowledgement = ack-nhfb,
}

@Book{Lobianco:2019:JQS,
  author =       "Antonello Lobianco",
  title =        "{Julia} quick syntax reference: a pocket guide for
                 data science programming",
  publisher =    pub-APRESS,
  address =      pub-APRESS:adr,
  pages =        "xvii + 216 + 66",
  year =         "2019",
  DOI =          "https://doi.org/10.1007/978-1-4842-5190-4",
  ISBN =         "1-4842-5189-X, 1-4842-5190-3 (e-book)",
  ISBN-13 =      "978-1-4842-5189-8, 978-1-4842-5190-4 (e-book)",
  LCCN =         "QA76.73.J85",
  bibdate =      "Thu Apr 8 11:08:50 MDT 2021",
  bibsource =    "fsz3950.oclc.org:210/WorldCat;
                 https://www.math.utah.edu/pub/tex/bib/julia.bib",
  URL =          "http://link.springer.com/book/10.1007/978-1-4842-5190-4",
  abstract =     "This quick Julia programming language guide is a
                 condensed code and syntax reference to the Julia 1.x
                 programming language, updated with the latest features
                 of the Julia APIs, libraries, and packages. It presents
                 the essential Julia syntax in a well-organized format
                 that can be used as a handy reference. This book
                 provides an introduction that reveals basic Julia
                 structures and syntax; discusses data types, control
                 flow, functions, input/output, exceptions,
                 metaprogramming, performance, and more. Additionally,
                 you'll learn to interface Julia with other programming
                 languages such as R for statistics or Python. You will
                 learn how to use Julia packages for data analysis,
                 numerical optimization and symbolic computation, and
                 how to disseminate your results in dynamic documents or
                 interactive web pages. In this book, the focus is on
                 providing important information as quickly as possible.
                 It is packed with useful information and is a must-have
                 for any Julia programmer. What You Will Learn Set up
                 the software needed to run Julia and your first Hello
                 World example Work with types and the different
                 containers that Julia makes available for rapid
                 application development Use vectorized, classical
                 loop-based code, logical operators, and blocks Explore
                 Julia functions by looking at arguments, return values,
                 polymorphism, parameters, anonymous functions, and
                 broadcasts Build custom structures in Julia Interface
                 Julia with other languages such as C/C++, Python, and R
                 Program a richer API, modifying the code before it is
                 executed using expressions, symbols, macros, quote
                 blocks, and more Maximize your code's performance Who
                 This Book Is For Experienced programmers new to Julia,
                 as well as existing Julia coders new to the now stable
                 Julia version 1.0 release.",
  acknowledgement = ack-nhfb,
  subject =      "Julia (Computer program language); Computer
                 programming; Handbooks, manuals, etc; Computer
                 programming; Julia (Computer program language)",
  tableofcontents = "Part 1. Language Core \\
                 1. Getting Started \\
                 2. Data Types and Structures \\
                 3. Control Flow and Functions \\
                 4. Custom Types \\
                 5. Input? Output \\
                 6. Metaprogramming and Macros \\
                 7. Interfacing Julia with Other Languages \\
                 8. Efficiently Write Efficient Code \\
                 Part 2. Packages Ecosystem \\
                 9. Working with Data \\
                 10. Mathematical Libraries \\
                 11. Utilities",
}

@Book{McNicholas:2019:DSJ,
  author =       "Paul D. McNicholas and Peter A. Tait",
  title =        "Data science with {Julia}",
  publisher =    "Chapman and Hall\slash CRC",
  address =      "Boca Raton, FL, USA",
  pages =        "xix + 220",
  year =         "2019",
  DOI =          "https://doi.org/10.1201/9781351013673",
  ISBN =         "1-138-49999-4, 1-351-01364-5, 1-351-01365-3,
                 1-351-01366-1, 1-351-01367-X",
  ISBN-13 =      "978-1-138-49998-0 (paperback), 978-1-138-49999-7,
                 978-1-351-01364-2, 978-1-351-01365-9,
                 978-1-351-01366-6, 978-1-351-01367-3",
  LCCN =         "QA76.73.J85 M37 2019eb",
  bibdate =      "Fri May 21 17:39:58 MDT 2021",
  bibsource =    "fsz3950.oclc.org:210/WorldCat;
                 https://www.math.utah.edu/pub/tex/bib/julia.bib",
  abstract =     "Julia, an open-source programming language, was
                 created to be as easy to use as languages such as R and
                 Python while also as fast as C and Fortran. An
                 accessible, intuitive, and highly efficient base
                 language with speed that exceeds R and Python, makes
                 Julia a formidable language for data science. Using
                 well known data science methods that will motivate the
                 reader, Data Science with Julia will get readers up to
                 speed on key features of the Julia language and
                 illustrate its facilities for data science and machine
                 learning work.",
  acknowledgement = ack-nhfb,
  subject =      "Julia (Computer program language); Data structures
                 (Computer science); Data structures (Computer science);
                 Julia (Computer program language)",
  tableofcontents = "Cover \\
                 Half Title \\
                 Title Page \\
                 Copyright Page \\
                 Dedication \\
                 Table Of Contents \\
                 Foreword \\
                 Preface \\
                 About The Authors \\
                 1: Introduction \\
                 1.1 Data Science \\
                 1.2 Big Data \\
                 1.3 Julia \\
                 1.4 Julia And R Packages \\
                 1.5 Datasets \\
                 1.5.1 Overview \\
                 1.5.2 Beer Data \\
                 1.5.3 Coffee Data \\
                 1.5.4 Leptograpsus Crabs Data \\
                 1.5.5 Food Preferences Data \\
                 1.5.6 X2 Data \\
                 1.5.7 Iris Data \\
                 1.6 Outline Of The Contents Of This Monograph \\
                 2: Core Julia \\
                 2.1 Variable Names \\
                 2.2 Operators \\
                 2.3 Types \\
                 2.3.1 Numeric \\
                 2.3.2 Floats \\
                 2.3.3 Strings \\
                 2.3.4 Tuples \\
                 2.4 Data Structures \\
                 2.4.1 Arrays \\
                 2.4.2 Dictionaries \\
                 2.5 Control Flow \\
                 2.5.1 Compound Expressions \\
                 2.5.2 Conditional Evaluation \\
                 2.5.3 Loops \\
                 2.5.3.1 Basics \\
                 2.5.3.2 Loop Termination \\
                 2.5.3.3 Exception Handling \\
                 2.6 Functions \\
                 3: Working With Data \\
                 3.1 Dataframes \\
                 3.2 Categorical Data \\
                 3.3 Input/Output \\
                 3.4 Useful Dataframe Functions \\
                 3.5 Split-Apply-Combine Strategy \\
                 3.6 Query. Jl \\
                 4: Visualizing Data \\
                 4.1 Gadfly. Jl \\
                 4.2 Visualizing Univariate Data \\
                 4.3 Distributions \\
                 4.4 Visualizing Bivariate Data \\
                 4.5 Error Bars \\
                 4.6 Facets \\
                 4.7 Saving Plots \\
                 5: Supervised Learning \\
                 5.1 Introduction \\
                 5.2 Cross-Validation \\
                 5.2.1 Overview \\
                 5.2.2 K-Fold Cross-Validation \\
                 5.3 $K$-Nearest Neighbours Classification \\
                 5.4 Classification And Regression Trees \\
                 5.4.1 Overview \\
                 5.4.2 Classification Trees \\
                 5.4.3 Regression Trees \\
                 5.4.4 Comments \\
                 5.5 Bootstrap \\
                 5.6 Random Forests \\
                 5.7 Gradient Boosting \\
                 5.7.1 Overview \\
                 5.7.2 Beer Data \\
                 5.7.3 Food Data \\
                 5.8 Comments \\
                 6: Unsupervised Learning \\
                 6.1 Introduction \\
                 6.2 Principal Components Analysis \\
                 6.3 Probabilistic Principal Components Analysis \\
                 6.4 Em Algorithm for Ppca \\
                 6.4.1 Background: EM Algorithm \\
                 6.4.2 E-step \\
                 6.4.3 M-step \\
                 6.4.4 Woodbury Identity \\
                 6.4.5 Initialization \\
                 6.4.6 Stopping Rule \\
                 6.4.7 Implementing the EM Algorithm for PPCA \\
                 6.4.8 Comments \\
                 6.5 $K$-Means Clustering \\
                 6.6 Mixture Of Probabilistic Principal Components
                 Analyzers \\
                 6.6.1 Model \\
                 6.6.2 Parameter Estimation \\
                 6.6.3 Illustrative Example: Coffee Data \\
                 6.7 Comments \\
                 7: R Interoperability \\
                 7.1 Accessing R Datasets \\
                 7.2 Interacting With R \\
                 7.3 Example: Clustering And Data Reduction For The
                 Coffee Data \\
                 7.3.1 Coffee Data \\
                 7.3.2 PGMM Analysis \\
                 7.3.3 VSCC Analysis \\
                 7.4 Example: Food Data \\
                 7.4.1 Overview \\
                 7.4.2 Random Forests \\
                 Appendix A: Julia and R Packages Used Herein \\
                 Appendix B: Variables for Food Data \\
                 Appendix C: Useful Mathematical Results \\
                 C.1 Brief Overview of Eigenvalues \\
                 C.2 Selected Linear Algebra Results \\
                 C.3 Matrix Calculus Results \\
                 Appendix D: Performance Tips \\
                 D.1 Floating Point Numbers \\
                 D.1.1 Do Not Test for Equality \\
                 D.1.2 Use Logarithms for Division \\
                 D.1.3 Subtracting Two Nearly Equal Numbers \\
                 D.2 Julia Performance \\
                 D.2.1 General Tips \\
                 D.2.2 Array Processing \\
                 D.2.3 Separate Core Computations \\
                 Appendix E: Linear Algebra Functions \\
                 E.1 Vector Operations \\
                 E.2 Matrix Operations \\
                 E.3 Matrix Decompositions \\
                 References \\
                 Index",
}

@InProceedings{Medeiros:2019:USP,
  author =       "Johannes D. {Medeiros, Jr.} and Eduardo T. Costa",
  booktitle =    "{XXVI Brazilian Congress on Biomedical Engineering}",
  title =        "Ultrasound Signal Processing Using the {Julia}
                 Programming Language",
  publisher =    pub-SV,
  address =      pub-SV:adr,
  pages =        "??--??",
  year =         "2019",
  DOI =          "https://doi.org/10.1007/978-981-13-2517-5_77",
  bibdate =      "Fri Apr 9 07:54:52 MDT 2021",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/julia.bib",
  URL =          "http://link.springer.com/chapter/10.1007/978-981-13-2517-5_77",
  acknowledgement = ack-nhfb,
}

@Article{Moille:2019:PFU,
  author =       "Gregory Moille and Qing Li and Lu Xiyuan and Kartik
                 Srinivasan",
  title =        "{pyLLE}: a Fast and User Friendly {Lugiato--Lefever}
                 Equation Solver",
  journal =      j-J-RES-NATL-INST-STAND-TECHNOL,
  volume =       "124",
  month =        may,
  year =         "2019",
  CODEN =        "JRITEF",
  DOI =          "https://doi.org/10.6028/jres.124.012",
  ISSN =         "1044-677X (print), 2165-7254 (electronic)",
  bibdate =      "Thu Apr 8 08:02:29 2021",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/julia.bib",
  acknowledgement = ack-nhfb,
  fjournal =     "Journal of research of the National Institute of
                 Standards and Technology",
  journal-URL =  "http://www.nist.gov/nvl/jres.cfm",
  keywords =     "Julia programming language",
}

@InProceedings{Moura:2019:UJP,
  author =       "Rodolfo A. R. Moura and Marco A. O. Schroeder and
                 Samuel J. S. Silva and Erivelton G. Nepomuceno and
                 Pedro H. N. Vieira and Antonio C. S. Lima",
  editor =       "{IEEE}",
  booktitle =    "{2019 International Symposium on Lightning Protection
                 (XV SIPDA)}",
  title =        "The Usage of {Julia} Programming in Grounding Grids
                 Simulations: An alternative to {MATLAB} and {Python}",
  publisher =    pub-IEEE,
  address =      pub-IEEE:adr,
  pages =        "1--4",
  year =         "2019",
  DOI =          "https://doi.org/10.1109/SIPDA47030.2019.8951702",
  bibdate =      "Mon Dec 18 08:06:55 2023",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/julia.bib;
                 https://www.math.utah.edu/pub/tex/bib/matlab.bib;
                 https://www.math.utah.edu/pub/tex/bib/python.bib",
  acknowledgement = ack-nhfb,
  keywords =     "Julia programming language",
}

@MastersThesis{Plankensteiner:2019:CDS,
  author =       "David Plankensteiner",
  title =        "Collective dynamics and spectroscopy of coupled
                 quantum emitters",
  type =         "{M.Sc.} thesis",
  school =       "Universit{\"a}t Innsbruck",
  address =      "Innsbruck, Austria",
  pages =        "ix + 193",
  month =        may,
  year =         "2019",
  bibdate =      "Thu Apr 08 16:33:38 2021",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/julia.bib",
  URL =          "http://data.onb.ac.at/rec/AC15419096",
  acknowledgement = ack-nhfb,
  keywords =     "\pkg{QuantumOptics.jl}: a Julia framework for
                 simulating open quantum systems",
}

@Article{Regier:2019:CVU,
  author =       "Jeffrey Regier and Keno Fischer and Kiran Pamnany and
                 Andreas Noack and Jarrett Revels and Maximilian Lama
                 and Steve Howard and Ryan Giordano and David Schlegel
                 and Jon McAuliffe and Rollin Thomas and Prabhat",
  title =        "Cataloging the visible universe through {Bayesian}
                 inference in {Julia} at petascale",
  journal =      j-J-PAR-DIST-COMP,
  volume =       "127",
  number =       "??",
  pages =        "89--104",
  month =        may,
  year =         "2019",
  CODEN =        "JPDCER",
  DOI =          "https://doi.org/10.1016/j.jpdc.2018.12.008",
  ISSN =         "0743-7315 (print), 1096-0848 (electronic)",
  ISSN-L =       "0743-7315",
  bibdate =      "Thu Mar 14 15:55:59 MDT 2019",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/jpardistcomp.bib;
                 https://www.math.utah.edu/pub/tex/bib/julia.bib",
  URL =          "https://www.sciencedirect.com/science/article/pii/S0743731518304672",
  abstract =     "A key task in astronomy is to locate astronomical
                 objects in images and to characterize them according to
                 physical parameters such as brightness, color, and
                 morphology. This task, known as cataloging, is
                 challenging for several reasons: many astronomical
                 objects are much dimmer than the sky background,
                 labeled data is generally unavailable, overlapping
                 astronomical objects must be resolved collectively, and
                 the datasets are enormous terabytes now, petabytes
                 soon. In this work, we infer an astronomical catalog
                 from 55 TB of imaging data using Celeste, a Bayesian
                 variational inference code written entirely in the
                 high-productivity programming language Julia. Using
                 over 1.3 million threads on 650,000 Intel Xeon Phi
                 cores of the Cori Phase II supercomputer, Celeste
                 achieves a peak rate of 1.54 DP PFLOP/s. Celeste is
                 able to jointly optimize parameters for 188 M stars and
                 galaxies, loading and processing 178 TB across 8192
                 nodes in 14.6 min. To achieve this, Celeste exploits
                 parallelism at multiple levels (cluster, node, and
                 thread) and accelerates I/O through Cori's burst
                 buffer. Julia's native performance enables Celeste to
                 employ high-level constructs without resorting to
                 hand-written or generated low-level code
                 (C/C++/Fortran) while still achieving petascale
                 performance.",
  acknowledgement = ack-nhfb,
  fjournal =     "Journal of Parallel and Distributed Computing",
  journal-URL =  "http://www.sciencedirect.com/science/journal/07437315",
  keywords =     "Astronomy, Bayesian, Distributed optimization,
                 Variational inference, Julia, High-performance
                 computing",
}

@InProceedings{Reinhardt:2019:DAB,
  author =       "O. Reinhardt and A. M. Uhrmacher and M. Hinsch and J.
                 Bijak",
  booktitle =    "{2019 Winter Simulation Conference (WSC)}",
  title =        "Developing Agent-Based Migration Models in Pairs",
  publisher =    pub-IEEE,
  address =      pub-IEEE:adr,
  pages =        "2713--2724",
  year =         "2019",
  DOI =          "https://doi.org/10.1109/WSC40007.2019.9004946",
  bibdate =      "Thu Apr 8 07:17:08 2021",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/julia.bib",
  acknowledgement = ack-nhfb,
  keywords =     "Julia programming language",
}

@Article{Roughan:2019:PSS,
  author =       "Matthew Roughan",
  title =        "Practically surreal: {Surreal} arithmetic in {Julia}",
  journal =      j-SOFTWAREX,
  volume =       "9",
  number =       "??",
  pages =        "293--298",
  month =        jan # "\slash " # jun,
  year =         "2019",
  CODEN =        "????",
  DOI =          "https://doi.org/10.1016/j.softx.2019.03.005",
  ISSN =         "2352-7110",
  ISSN-L =       "2352-7110",
  bibdate =      "Mon Oct 14 09:45:43 MDT 2019",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/fparith.bib;
                 https://www.math.utah.edu/pub/tex/bib/julia.bib;
                 https://www.math.utah.edu/pub/tex/bib/softwarex.bib",
  URL =          "https://www.sciencedirect.com/science/article/pii/S2352711018302152",
  abstract =     "This paper presents an implementation of arithmetic on
                 Conway's surreal numbers. It also provides tools for
                 visualising complicated surreals in the form of graph
                 visualisations, and illustrates their use through
                 several examples, and a small contribution to the
                 theory of surreals.",
  acknowledgement = ack-nhfb,
  fjournal =     "SoftwareX",
  journal-URL =  "https://www.sciencedirect.com/journal/softwarex/issues",
  keywords =     "Conway's surreal numbers",
}

@Book{Sengupta:2019:JHP,
  author =       "Avik Sengupta",
  title =        "{Julia} high performance optimizations, distributed
                 computing, multithreading, and {GPU} programming with
                 {Julia 1.0} and beyond",
  publisher =    pub-PACKT,
  address =      pub-PACKT:adr,
  edition =      "Second",
  pages =        "218",
  year =         "2019",
  ISBN =         "1-78829-230-8, 1-78829-811-X",
  ISBN-13 =      "978-1-78829-230-6, 978-1-78829-811-7",
  LCCN =         "????",
  bibdate =      "Thu Apr 8 16:49:31 MDT 2021",
  bibsource =    "fsz3950.oclc.org:210/WorldCat;
                 https://www.math.utah.edu/pub/tex/bib/julia.bib",
  URL =          "http://portal.igpublish.com/iglibrary/search/PACKT0005341.html",
  abstract =     "Julia is a high-level, high-performance dynamic
                 programming language for numerical computing. This book
                 will help you understand the performance
                 characteristics of your Julia programs and achieve
                 near-C levels of performance in Julia.",
  acknowledgement = ack-nhfb,
  subject =      "Julia (Computer program language); Application
                 software; Development; Development.; Julia (Computer
                 program language)",
  tableofcontents = "Foreword \\
                 Contributors \\
                 Table of Contents \\
                 Preface \\
                 1: Julia is Fast \\
                 Julia \\
                 fast and dynamic \\
                 Designed for speed \\
                 JIT and LLVM \\
                 Types, type inference, and code specialization \\
                 How fast can Julia be? \\
                 Summary \\
                 2: Analyzing Performance \\
                 Timing Julia functions \\
                 The @time macro \\
                 Other time macros \\
                 The Julia profiler \\
                 Using the profiler \\
                 ProfileView \\
                 Using Juno for profiling \\
                 Using TimerOutputs \\
                 Analyzing memory allocation \\
                 Using the memory allocation tracker \\
                 Statistically accurate benchmarking \\
                 Using \pkg{BenchmarkTools.jl} \\
                 Summary \\
                 3: Types, Type Inference, and Stability \\
                 The Julia type system \\
                 Using types \\
                 Multiple dispatch \\
                 Abstract types \\
                 Julia's type hierarchy \\
                 Composite and immutable types \\
                 Type parameters \\
                 Type inference \\
                 Type-stability \\
                 Definitions \\
                 Fixing type instability \\
                 The performance pitfalls \\
                 Identifying type stability \\
                 Loop variables \\
                 Kernel methods and function barriers \\
                 Types in storage locations \\
                 Arrays \\
                 Composite types \\
                 Parametric composite types \\
                 Summary \\
                 4: Making Fast Function Calls \\
                 Using globals \\
                 The trouble with globals \\
                 Fixing performance issues with globals \\
                 Inlining \\
                 Default inlining \\
                 Controlling inlining \\
                 Disabling inlining \\
                 Constant propagation \\
                 Using macros for performance \\
                 The Julia compilation process \\
                 Using macros \\
                 Evaluating a polynomial \\
                 Horner's method \\
                 The Horner macro \\
                 Generated functions \\
                 Using generated functions \\
                 Using generated functions for performance \\
                 Using keyword arguments \\
                 Summary \\
                 5: Fast Numbers \\
                 Numbers in Julia, their layout, and storage \\
                 Integers \\
                 Integer overflow \\
                 BigInt \\
                 The floating point \\
                 Floating point accuracy \\
                 Unsigned integers \\
                 Trading performance for accuracy \\
                 The @fastmath macro \\
                 The K-B-N summation \\
                 Subnormal numbers \\
                 Subnormal numbers to zero \\
                 Summary \\
                 6: Using Arrays \\
                 Array internals in Julia \\
                 Array representation and storage \\
                 Column-wise storage \\
                 Adjoints \\
                 Array initialization \\
                 Bounds checking \\
                 Removing the cost of bounds checking \\
                 Configuring bound checks at startup \\
                 Allocations and in-place operations \\
                 Preallocating function output \\
                 sizehint! \\
                 Mutating functions \\
                 Broadcasting \\
                 Array views \\
                 SIMD parallelization (AVX2, AVX512) \\
                 SIMD.jl \\
                 Specialized array types \\
                 Static arrays \\
                 Structs of arrays \\
                 Yeppp!Writing generic library functions with arrays \\
                 Summary \\
                 7: Accelerating Code with the GPU \\
                 Technical requirements \\
                 Getting started with GPUs \\
                 CUDA and Julia \\
                 CuArrays \\
                 Monte Carlo simulation on the GPU \\
                 Writing your own kernels \\
                 Measuring GPU performance \\
                 Performance tips \\
                 Scalar iteration \\
                 Combining kernels \\
                 Processing more data \\
                 Deep learning on the GPU \\
                 ArrayFire \\
                 Summary \\
                 8: Concurrent Programming with Tasks \\
                 Tasks \\
                 Using tasks \\
                 The task life cycle \\
                 task\_local\_storage \\
                 Communicating between tasks \\
                 Task iteration \\
                 High-performance I/O",
}

@InProceedings{Sliwak:2019:JMP,
  author =       "Julie Sliwak and Manuel Ruiz and Miguel F. Anjos and
                 Lucas L{\'e}tocart and Emiliano Traversi",
  editor =       "{IEEE}",
  booktitle =    "{2019 IEEE Milan PowerTech}",
  title =        "A {Julia} Module for Polynomial Optimization with
                 Complex Variables applied to Optimal Power Flow",
  publisher =    pub-IEEE,
  address =      pub-IEEE:adr,
  pages =        "1--6",
  year =         "2019",
  DOI =          "https://doi.org/10.1109/PTC.2019.8810960",
  bibdate =      "Mon Dec 18 08:06:55 2023",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/julia.bib",
  acknowledgement = ack-nhfb,
}

@InProceedings{Thomas:2019:BDP,
  author =       "Ebby Thomas",
  editor =       "{IEEE}",
  booktitle =    "{2019 IEEE Innovative Smart Grid Technologies --- Asia
                 (ISGT Asia)}",
  title =        "Big Data in Power Systems: an Introduction to {Julia}
                 Linear Models using {Tensor Flow}",
  publisher =    pub-IEEE,
  address =      pub-IEEE:adr,
  pages =        "731--735",
  year =         "2019",
  DOI =          "https://doi.org/10.1109/ISGT-Asia.2019.8881136",
  bibdate =      "Mon Dec 18 08:06:55 2023",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/julia.bib",
  acknowledgement = ack-nhfb,
}

@InProceedings{Voulgaris:2019:J,
  author =       "Zacharias Voulgaris",
  booktitle =    "{Encyclopedia of Big Data Technologies}",
  title =        "{Julia}",
  publisher =    pub-SV,
  address =      pub-SV:adr,
  pages =        "??--??",
  year =         "2019",
  DOI =          "https://doi.org/10.1007/978-3-319-77525-8_268",
  bibdate =      "Fri Apr 9 07:54:52 MDT 2021",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/julia.bib",
  URL =          "http://link.springer.com/referenceworkentry/10.1007/978-3-319-77525-8_268",
  acknowledgement = ack-nhfb,
}

@Article{Zhang:2019:SSE,
  author =       "Zhiping Zhang and Jeffrey D. Varner",
  title =        "{SEML}: a Simplified {English} Modeling Language for
                 Constructing Biological Models in {Julia}",
  journal =      "IFAC-PapersOnLine",
  volume =       "52",
  number =       "26",
  pages =        "121--128",
  year =         "2019",
  DOI =          "https://doi.org/10.1016/j.ifacol.2019.12.246",
  ISSN =         "2405-8963",
  bibdate =      "Fri Apr 9 15:22:25 2021",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/julia.bib",
  note =         "8th Conference on Foundations of Systems Biology in
                 Engineering FOSBE 2019",
  URL =          "https://www.sciencedirect.com/science/article/pii/S2405896319321299",
  abstract =     "Many markup languages can be used to encode biological
                 networks, each with strengths and weaknesses. Model
                 specifications written in these languages can then
                 used, in conjunction with proprietary software packages
                 e.g., MATLAB, or open community alternatives, to
                 simulate the behavior of biological systems. In this
                 study, we present the Simplified English Modeling
                 Language (SEML) and associated compiler, as an
                 alternative to existing approaches. SEML supports the
                 specification of biological reaction systems in a
                 simple natural language like syntax. Models encoded in
                 SEML are transformed into executable code using a
                 compiler written in the open-source Julia programming
                 language. The compiler performs a sequence of
                 operations, including tokenization, syntactic and
                 semantic error checking, to convert SEML into an
                 intermediate representation (IR). From the intermediate
                 representation, the compiler then generates executable
                 code in one of three programming languages: Julia,
                 Python or MATLAB. Currently, SEML supports both kinetic
                 and constraint based model generation for signal
                 transduction and metabolic modeling. In this study, we
                 demonstrate SEML by modeling two proof-of-concept
                 prototypical networks: a constraint-based model solved
                 using flux balance analysis (FBA) and a kinetic model
                 encoded as Ordinary Differential Equations (ODEs). SEML
                 is a promising tool for encoding and sharing
                 human-readable biological models, however it is still
                 in its infancy. With further development, SEML has the
                 potential to handle more unstructured natural language
                 inputs, generate more complex models types and convert
                 its natural language markup to currently used model
                 interchange formats such systems biology markup
                 language.",
  acknowledgement = ack-nhfb,
  keywords =     "simplified English modeling language, markup language,
                 biological modeling, compiler, Julia",
}

@Article{Amores:2020:DDS,
  author =       "V{\'{\i}}ctor Jes{\'u}s Amores and Jos{\'e}
                 Mar{\'{\i}}a Ben{\'{\i}}tez and Francisco Javier
                 Mont{\'a}ns",
  title =        "Data-driven, structure-based hyperelastic manifolds: a
                 macro--micro--macro approach to reverse-engineer the
                 chain behavior and perform efficient simulations of
                 polymers",
  journal =      "Computers {\&} Structures",
  volume =       "231",
  pages =        "106209",
  month =        apr,
  year =         "2020",
  DOI =          "https://doi.org/10.1016/j.compstruc.2020.106209",
  bibdate =      "Thu Apr 8 08:02:29 2021",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/julia.bib",
  acknowledgement = ack-nhfb,
  keywords =     "Julia programming language",
}

@InProceedings{Asaeikheybari:2020:PHH,
  author =       "G. Asaeikheybari and C. Hughart and D. Gupta and A.
                 Avery and M. M. Step and J. M. Smith and J. Kratz and
                 J. Briggs and M.-C. Huang",
  booktitle =    "{2020 Second International Conference on
                 Transdisciplinary AI (TransAI)}",
  title =        "Precision {HIV} Health App, Positive Peers, Powered by
                 Data Harnessing, {AI}, and Learning",
  publisher =    pub-IEEE,
  address =      pub-IEEE:adr,
  pages =        "108--112",
  year =         "2020",
  DOI =          "https://doi.org/10.1109/TransAI49837.2020.00024",
  bibdate =      "Thu Apr 8 07:17:08 2021",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/julia.bib",
  acknowledgement = ack-nhfb,
  keywords =     "Julia programming language",
}

@InProceedings{Barros:2020:ALS,
  author =       "Diana A. Barros and Cristiana Bentes",
  editor =       "{IEEE}",
  booktitle =    "{2020 IEEE 32nd International Symposium on Computer
                 Architecture and High Performance Computing
                 (SBAC-PAD)}",
  title =        "Analyzing the Loop Scheduling Mechanisms on {Julia}
                 Multithreading",
  publisher =    pub-IEEE,
  address =      pub-IEEE:adr,
  pages =        "257--264",
  year =         "2020",
  DOI =          "https://doi.org/10.1109/SBAC-PAD49847.2020.00043",
  bibdate =      "Mon Dec 18 08:06:55 2023",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/julia.bib;
                 https://www.math.utah.edu/pub/tex/bib/multithreading.bib",
  acknowledgement = ack-nhfb,
  keywords =     "Julia programming language",
}

@Book{Battig:2020:AMM,
  author =       "Daniel B{\"a}ttig",
  title =        "{Angewandte Mathematik 1 mit MATLAB und Julia: Ein
                 anwendungs- und beispielorientierter Einstieg f{\"u}r
                 technische Studieng{\"a}nge}. ({German}) [{Applied
                 Mathematics 1} with {MATLAB} and {Julia}: an
                 application and example-oriented introduction to
                 technical courses]",
  publisher =    "Springer Vieweg",
  address =      "Berlin and Heidelberg, Germany",
  pages =        "xiii + 254",
  year =         "2020",
  ISBN =         "3-662-60951-7 (print), 3-662-60952-5 (ePub)",
  ISBN-13 =      "978-3-662-60951-4 (print), 978-3-662-60952-1 (ePub)",
  LCCN =         ">>>>",
  bibdate =      "Thu Apr 8 11:26:54 MDT 2021",
  bibsource =    "fsz3950.oclc.org:210/WorldCat;
                 https://www.math.utah.edu/pub/tex/bib/julia.bib;
                 https://www.math.utah.edu/pub/tex/bib/matlab.bib",
  acknowledgement = ack-nhfb,
  language =     "German",
  subject =      "Engineering; Applied mathematics; Engineering
                 mathematics; Computer science; Mathematics;
                 Mathematical analysis; Analysis (Mathematics);
                 Algebras, Linear; Maths for scientists; Calculus and
                 mathematical analysis; Algebra; Maths for engineers;
                 Computers; Computer Science; Mathematical Analysis;
                 Algebra; Linear; Technology and Engineering;
                 Engineering (General); Algebras, Linear; Mathematics;
                 Engineering; Engineering mathematics; Mathematical
                 analysis.",
  tableofcontents = "Zahlensysteme: Mathematik und Computer, \\
                 Vektoren und Programmieren von Schleifen \\
                 Vektoren, Geometrie und Mechanik, \\
                 Lineare Gleichungssysteme und Matrizes \\
                 Input-Output: Funktionen \\
                 Spezielle mathematische Funktionen \\
                 {\"U}berbestimmte Systeme, affine Funktionen und die
                 Methode der kleinsten Quadrate \\
                 Die Ableitung einer Funktion \\
                 Anwendungen der Ableitung \\
                 Literaturverzeichnis \\
                 Sachverzeichnis",
}

@Article{Bauer:2020:FSD,
  author =       "Carsten Bauer",
  title =        "Fast and stable determinant quantum {Monte Carlo}",
  journal =      "{SciPost} Physics Core",
  volume =       "2",
  number =       "2",
  month =        jun,
  year =         "2020",
  DOI =          "https://doi.org/10.21468/scipostphyscore.2.2.011",
  bibdate =      "Thu Apr 8 08:02:29 2021",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/julia.bib",
  acknowledgement = ack-nhfb,
  keywords =     "Julia programming language",
}

@Article{Belyakova:2020:WAJ,
  author =       "Julia Belyakova and Benjamin Chung and Jack Gelinas
                 and Jameson Nash and Ross Tate and Jan Vitek",
  title =        "World age in {Julia}: optimizing method dispatch in
                 the presence of eval",
  journal =      j-PACMPL,
  volume =       "4",
  number =       "OOPSLA",
  pages =        "207:1--207:26",
  month =        nov,
  year =         "2020",
  DOI =          "https://doi.org/10.1145/3428275",
  ISSN =         "2475-1421",
  bibdate =      "Tue Mar 30 08:10:50 MDT 2021",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/julia.bib;
                 https://www.math.utah.edu/pub/tex/bib/pacmpl.bib",
  URL =          "https://dl.acm.org/doi/10.1145/3428275",
  abstract =     "Dynamic programming languages face semantic and
                 performance challenges in the presence of features,
                 such as eval, that can inject new code into a running
                 program. The Julia programming language introduces the
                 novel concept of world age to insulate optimized code
                 from one of the most disruptive side-effects of eval:
                 changes to the definition of an existing function. This
                 paper provides the first formal semantics of world age
                 in a core calculus named juliette, and shows how world
                 age enables compiler optimizations, such as inlining,
                 in the presence of eval. While Julia also provides
                 programmers with the means to bypass world age, we
                 found that this mechanism is not used extensively: a
                 static analysis of over 4,000 registered Julia packages
                 shows that only 4--9\% of packages bypass world age.
                 This suggests that Julia's semantics aligns with
                 programmer expectations.",
  acknowledgement = ack-nhfb,
  articleno =    "207",
  fjournal =     "Proceedings of the ACM on Programming Languages",
  journal-URL =  "https://pacmpl.acm.org/",
}

@InProceedings{Burbach:2020:NVJ,
  author =       "Laura Burbach and Poornima Belavadi and Patrick
                 Halbach and Lilian Kojan and Nils Plettenberg and
                 Johannes Nakayama and Martina Ziefle and Andr{\'e}
                 Calero Valdez",
  booktitle =    "{Digital Human Modeling and Applications in Health,
                 Safety, Ergonomics and Risk Management. Human
                 Communication, Organization and Work}",
  title =        "{Netlogo} vs. {Julia}: Evaluating Different Options
                 for the Simulation of Opinion Dynamics",
  publisher =    pub-SV,
  address =      pub-SV:adr,
  pages =        "??--??",
  year =         "2020",
  DOI =          "https://doi.org/10.1007/978-3-030-49907-5_1",
  bibdate =      "Fri Apr 9 07:54:52 MDT 2021",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/julia.bib",
  URL =          "http://link.springer.com/chapter/10.1007/978-3-030-49907-5_1",
  acknowledgement = ack-nhfb,
}

@InProceedings{Chaber:2020:PCC,
  author =       "B. Chaber",
  booktitle =    "{2020 IEEE 21st International Conference on
                 Computational Problems of Electrical Engineering
                 (CPEE)}",
  title =        "Particle-in-Cell code for gas discharge simulations",
  publisher =    pub-IEEE,
  address =      pub-IEEE:adr,
  pages =        "1--4",
  year =         "2020",
  DOI =          "https://doi.org/10.1109/CPEE50798.2020.9238682",
  bibdate =      "Thu Apr 8 07:17:08 2021",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/julia.bib",
  acknowledgement = ack-nhfb,
  keywords =     "Julia programming language",
}

@Article{Coleman:2020:MPJ,
  author =       "Chase Coleman and Spencer Lyon and Lilia Maliar and
                 Serguei Maliar",
  title =        "{Matlab}, {Python}, {Julia}: What to Choose in
                 Economics?",
  journal =      j-COMP-ECONOMICS,
  volume =       "",
  number =       "",
  pages =        "??--??",
  month =        "",
  year =         "2020",
  CODEN =        "CNOMEL",
  DOI =          "https://doi.org/10.1007/s10614-020-09983-3",
  ISSN =         "",
  ISSN-L =       "0927-7099",
  bibdate =      "Fri Apr 9 07:54:52 MDT 2021",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/julia.bib;
                 https://www.math.utah.edu/pub/tex/bib/matlab.bib;
                 https://www.math.utah.edu/pub/tex/bib/python.bib",
  URL =          "http://link.springer.com/article/10.1007/s10614-020-09983-3",
  acknowledgement = ack-nhfb,
  fjournal =     "Computational Economics",
}

@InProceedings{Drakopoulos:2020:ODC,
  author =       "Georgios Drakopoulos and Eleanna Kafeza",
  editor =       "{IEEE}",
  booktitle =    "{2020 5th South-East Europe Design Automation,
                 Computer Engineering, Computer Networks and Social
                 Media Conference (SEEDA-CECNSM)}",
  title =        "One Dimensional Cross-Correlation Methods for
                 Deterministic and Stochastic Graph Signals with a
                 {Twitter} Application in {Julia}",
  publisher =    pub-IEEE,
  address =      pub-IEEE:adr,
  pages =        "1--8",
  year =         "2020",
  DOI =          "https://doi.org/10.1109/SEEDA-CECNSM49515.2020.9221815",
  bibdate =      "Mon Dec 18 08:06:55 2023",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/julia.bib",
  acknowledgement = ack-nhfb,
  keywords =     "Julia programming language",
}

@Article{Fathurrahman:2020:PJJ,
  author =       "Fadjar Fathurrahman and Mohammad Kemal Agusta and
                 Adhitya Gandaryus Saputro and Hermawan Kresno
                 Dipojono",
  title =        "{PWDFT.jl}: a {Julia} package for electronic structure
                 calculation using density functional theory and plane
                 wave basis",
  journal =      j-COMP-PHYS-COMM,
  volume =       "256",
  number =       "??",
  pages =        "Article 107372",
  month =        nov,
  year =         "2020",
  CODEN =        "CPHCBZ",
  DOI =          "https://doi.org/10.1016/j.cpc.2020.107372",
  ISSN =         "0010-4655 (print), 1879-2944 (electronic)",
  ISSN-L =       "0010-4655",
  bibdate =      "Sat Mar 13 08:21:39 MST 2021",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/compphyscomm2020.bib;
                 https://www.math.utah.edu/pub/tex/bib/julia.bib",
  URL =          "http://www.sciencedirect.com/science/article/pii/S0010465520301600",
  acknowledgement = ack-nhfb,
  fjournal =     "Computer Physics Communications",
  journal-URL =  "http://www.sciencedirect.com/science/journal/00104655",
}

@Article{Fathurrahman:2020:PPJ,
  author =       "Fadjar Fathurrahman and Mohammad Kemal Agusta and
                 Adhitya Gandaryus Saputro and Hermawan Kresno
                 Dipojono",
  title =        "\pkg{PWDFT.jl}: a {Julia} package for electronic
                 structure calculation using density functional theory
                 and plane wave basis",
  journal =      j-COMP-PHYS-COMM,
  volume =       "256",
  pages =        "107372",
  year =         "2020",
  CODEN =        "CPHCBZ",
  DOI =          "https://doi.org/10.1016/j.cpc.2020.107372",
  ISSN =         "0010-4655 (print), 1879-2944 (electronic)",
  ISSN-L =       "0010-4655",
  bibdate =      "Fri Apr 9 15:22:25 2021",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/julia.bib",
  URL =          "https://www.sciencedirect.com/science/article/pii/S0010465520301600",
  abstract =     "We describe the implementation of PWDFT.jl, a package
                 for electronic structure calculations written in Julia
                 programming language using plane wave basis set and
                 pseudopotentials. In this package, a typical Kohn Sham
                 density functional theory (KSDFT) is divided into three
                 steps: initializing the molecular or crystalline
                 structure, constructing the Kohn Sham Hamiltonian, and
                 solving the Kohn Sham problem using self-consistent
                 field (SCF) calculation. To facilitate various tasks
                 involved in these steps, we provide several custom data
                 types which are transparent and easy to be modified.
                 Basic operations such as wave function
                 orthogonalization, action of kinetic and potential
                 operators to wave functions and iterative
                 diagonalization of Hamiltonian have been implemented in
                 pure Julia. Several algorithms to solve the Kohn Sham
                 problems such as self-consistent field and direct
                 energy minimization have also been implemented in
                 PWDFT.jl. To assess the validity of our implementation,
                 we present the results of total energy calculations
                 against the well-established ABINIT package. We also
                 show how one can use PWDFT.jl to write a simple
                 self-consistent field implementation. Program summary
                 Program Title: PWDFT.jl CPC Library link to program
                 files: https://doi.org/10.17632/b87xzmzm2z.1 Licensing
                 provisions: GPL-v2 Programming language: Julia Nature
                 of problem: Electronic structure of interacting
                 electrons in material Solution method: Kohn Sham
                 density functional theory, using plane wave basis set
                 and pseudopotentials Additional comments including
                 restrictions and unusual features: Due to the
                 precompilation step, the program may appear to be slow
                 at the first call. Parallelization is not yet
                 considered.",
  acknowledgement = ack-nhfb,
  fjournal =     "Computer Physics Communications",
  journal-URL =  "http://www.sciencedirect.com/science/journal/00104655",
  keywords =     "Density functional theory, Pseudopotential plane wave
                 method, Julia programming language",
}

@Article{Frison:2020:BAB,
  author =       "Gianluca Frison and Tommaso Sartor and Andrea Zanelli
                 and Moritz Diehl",
  title =        "The {BLAS API} of {BLASFEO}",
  journal =      j-TOMS,
  volume =       "46",
  number =       "2",
  pages =        "1--36",
  month =        jun,
  year =         "2020",
  CODEN =        "ACMSCU",
  DOI =          "https://doi.org/10.1145/3378671",
  ISSN =         "0098-3500 (print), 1557-7295 (electronic)",
  ISSN-L =       "0098-3500",
  bibdate =      "Thu Apr 8 08:02:29 2021",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/julia.bib",
  acknowledgement = ack-nhfb,
  fjournal =     "ACM Transactions on Mathematical Software",
  journal-URL =  "http://dl.acm.org/pub.cfm?id=J782",
  keywords =     "Julia programming language",
}

@Article{Gao:2020:JLM,
  author =       "Kaifeng Gao and Gang Mei and Francesco Piccialli and
                 Salvatore Cuomo and Jingzhi Tu and Zenan Huo",
  title =        "{Julia} language in machine learning: Algorithms,
                 applications, and open issues",
  journal =      j-COMP-SCI-REV,
  volume =       "37",
  pages =        "100254",
  month =        aug,
  year =         "2020",
  DOI =          "https://doi.org/10.1016/j.cosrev.2020.100254",
  ISSN =         "1574-0137 (print), 1876-7745 (electronic)",
  bibdate =      "Thu Apr 8 08:02:29 2021",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/julia.bib",
  URL =          "https://www.sciencedirect.com/science/article/pii/S157401372030071X",
  abstract =     "Machine learning is driving development across many
                 fields in science and engineering. A simple and
                 efficient programming language could accelerate
                 applications of machine learning in various fields.
                 Currently, the programming languages most commonly used
                 to develop machine learning algorithms include Python,
                 MATLAB, and C/C ++. However, none of these languages
                 well balance both efficiency and simplicity. The Julia
                 language is a fast, easy-to-use, and open-source
                 programming language that was originally designed for
                 high-performance computing, which can well balance the
                 efficiency and simplicity. This paper summarizes the
                 related research work and developments in the
                 applications of the Julia language in machine learning.
                 It first surveys the popular machine learning
                 algorithms that are developed in the Julia language.
                 Then, it investigates applications of the machine
                 learning algorithms implemented with the Julia
                 language. Finally, it discusses the open issues and the
                 potential future directions that arise in the use of
                 the Julia language in machine learning.",
  acknowledgement = ack-nhfb,
  fjournal =     "Computer Science Review",
  journal-URL =  "http://www.sciencedirect.com/science/journal/15740137",
  keywords =     "Artificial neural networks; Deep learning; Julia
                 programming language; Machine learning; Supervised
                 learning; Unsupervised learning",
}

@InProceedings{Geth:2020:CVF,
  author =       "F. Geth and S. Claeys and G. Deconinck",
  booktitle =    "{2020 8th Workshop on Modeling and Simulation of
                 Cyber-Physical Energy Systems}",
  title =        "Current-Voltage Formulation of the Unbalanced Optimal
                 Power Flow Problem",
  publisher =    pub-IEEE,
  address =      pub-IEEE:adr,
  pages =        "1--6",
  year =         "2020",
  DOI =          "https://doi.org/10.1109/MSCPES49613.2020.9133699",
  bibdate =      "Thu Apr 8 07:17:08 2021",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/julia.bib",
  acknowledgement = ack-nhfb,
  keywords =     "Julia programming language; PowerModels.jl;
                 PowerModelsDistribution.jl",
}

@InProceedings{Goualard:2020:GRF,
  author =       "Fr{\'e}d{\'e}ric Goualard",
  title =        "Generating Random Floating-Point Numbers by Dividing
                 Integers: a Case Study",
  crossref =     "Krzhizhanovskaya:2020:CSI",
  pages =        "15--28",
  year =         "2020",
  DOI =          "https://doi.org/10.1007/978-3-030-50417-5_2",
  bibdate =      "Thu Jun 25 07:31:47 2020",
  bibsource =    "https://www.math.utah.edu/pub/bibnet/authors/d/dongarra-jack-j.bib;
                 https://www.math.utah.edu/pub/tex/bib/fparith.bib;
                 https://www.math.utah.edu/pub/tex/bib/julia.bib;
                 https://www.math.utah.edu/pub/tex/bib/matlab.bib;
                 https://www.math.utah.edu/pub/tex/bib/prng.bib",
  acknowledgement = ack-nhfb,
  keywords =     "error analysis; floating-point number; GMP; Julia;
                 Matlab; Mersenne Twister; PRNG; pseudo-random numbers;
                 random number",
}

@Article{Helmreich:2020:BRD,
  author =       "James E. Helmreich",
  title =        "Book Review: {{\booktitle{Data Science with Julia}}}",
  journal =      j-J-STAT-SOFT,
  volume =       "94",
  number =       "??",
  pages =        "??--??",
  month =        "????",
  year =         "2020",
  CODEN =        "JSSOBK",
  DOI =          "https://doi.org/10.18637/jss.v94.b01",
  ISSN =         "1548-7660",
  ISSN-L =       "1548-7660",
  bibdate =      "Wed May 19 07:43:41 MDT 2021",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/jstatsoft.bib;
                 https://www.math.utah.edu/pub/tex/bib/julia.bib",
  URL =          "https://www.jstatsoft.org/index.php/jss/article/view/v094b01;
                 https://www.jstatsoft.org/index.php/jss/article/view/v094b01/v94b01.pdf",
  acknowledgement = ack-nhfb,
  journal-URL =  "http://www.jstatsoft.org/",
}

@InProceedings{Hernandez:2020:IJS,
  author =       "Miguel Hernandez and Damian Valles and David C.
                 Wierschem and Rachel M. Koldenhoven and George Koutitas
                 and Francis A. Mendez and Semih Aslan and Jesus
                 Jimenez",
  editor =       "{IEEE}",
  booktitle =    "{2020 11th IEEE Annual Information Technology,
                 Electronics and Mobile Communication Conference
                 (IEMCON)}",
  title =        "An Initial {Julia} Simulation Approach to Material
                 Handling Operations from Motion Captured Data",
  publisher =    pub-IEEE,
  address =      pub-IEEE:adr,
  pages =        "0718--0722",
  year =         "2020",
  DOI =          "https://doi.org/10.1109/IEMCON51383.2020.9284829",
  bibdate =      "Mon Dec 18 08:06:55 2023",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/julia.bib",
  acknowledgement = ack-nhfb,
  keywords =     "Julia programming language",
}

@InProceedings{Hunold:2020:BJC,
  author =       "Sascha Hunold and Sebastian Steiner",
  editor =       "{IEEE}",
  booktitle =    "{2020 IEEE\slash ACM Performance Modeling,
                 Benchmarking and Simulation of High Performance
                 Computer Systems (PMBS)}",
  title =        "Benchmarking {Julia}'s Communication Performance: Is
                 {Julia} {HPC} ready or Full {HPC}?",
  publisher =    pub-IEEE,
  address =      pub-IEEE:adr,
  pages =        "20--25",
  year =         "2020",
  DOI =          "https://doi.org/10.1109/PMBS51919.2020.00008",
  bibdate =      "Mon Dec 18 08:06:55 2023",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/julia.bib",
  acknowledgement = ack-nhfb,
  keywords =     "Julia programming language",
}

@Article{Huo:2020:DEP,
  author =       "Zenan Huo and Gang Mei and Giampaolo Casolla and Fabio
                 Giampaolo",
  title =        "Designing an efficient parallel spectral clustering
                 algorithm on multi-core processors in {Julia}",
  journal =      j-J-PAR-DIST-COMP,
  volume =       "138",
  number =       "??",
  pages =        "211--221",
  month =        apr,
  year =         "2020",
  CODEN =        "JPDCER",
  DOI =          "https://doi.org/10.1016/j.jpdc.2020.01.003",
  ISSN =         "0743-7315 (print), 1096-0848 (electronic)",
  ISSN-L =       "0743-7315",
  bibdate =      "Wed Mar 18 09:26:11 MDT 2020",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/jpardistcomp.bib;
                 https://www.math.utah.edu/pub/tex/bib/julia.bib",
  URL =          "https://www.sciencedirect.com/science/article/pii/S0743731519308743",
  abstract =     "Spectral clustering is widely used in data mining,
                 machine learning and other fields. It can identify the
                 arbitrary shape of a sample space and converge to the
                 global optimal solution. Compared with the traditional
                 k-means algorithm, the spectral clustering algorithm
                 has stronger adaptability to data and better clustering
                 results. However, the computation of the algorithm is
                 quite expensive. In this paper, an efficient parallel
                 spectral clustering algorithm on multi-core processors
                 in the Julia language is proposed, and we refer to it
                 as juPSC. The Julia language is a high-performance,
                 open-source programming language. The juPSC is composed
                 of three procedures: (1) calculating the affinity
                 matrix, (2) calculating the eigenvectors, and (3)
                 conducting k-means clustering. Procedures (1) and (3)
                 are computed by the efficient parallel algorithm, and
                 the COO format is used to compress the affinity matrix.
                 Two groups of experiments are conducted to verify the
                 accuracy and efficiency of the juPSC. Experimental
                 results indicate that (1) the juPSC achieves speedups
                 of approximately 14 $ \times $--18 $ \times $ on a
                 24-core CPU and that (2) the serial version of the
                 juPSC is faster than the Python version of
                 scikit-learn. Moreover, the structure and functions of
                 the juPSC are designed considering modularity, which is
                 convenient for combination and further optimization
                 with other parallel computing platforms.",
  acknowledgement = ack-nhfb,
  fjournal =     "Journal of Parallel and Distributed Computing",
  journal-URL =  "http://www.sciencedirect.com/science/journal/07437315",
  keywords =     "Clustering algorithm, Spectral clustering, Parallel
                 algorithm, Multi-core processors, Julia language",
}

@InProceedings{Kaluba:2020:PPJ,
  author =       "Marek Kaluba and Benjamin Lorenz and Sascha Timme",
  title =        "\pkg{Polymake.jl}: a New Interface to \pkg{polymake}",
  crossref =     "Bigatti:2020:MSI",
  pages =        "377--385",
  year =         "2020",
  DOI =          "https://doi.org/10.1007/978-3-030-52200-1_37",
  bibdate =      "Wed Sep 27 13:00:10 2023",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/julia.bib",
  acknowledgement = ack-nhfb,
}

@Article{Kannan:2020:EAM,
  author =       "G. Padmasudha Kannan and K. V. Nagaraja",
  title =        "An Efficient Automatic Mesh Generator With Parabolic
                 Arcs in {Julia} for Computation of {TE} and {TM} Modes
                 for Waveguides",
  journal =      j-IEEE-ACCESS,
  volume =       "8",
  number =       "",
  pages =        "109508--109521",
  year =         "2020",
  DOI =          "https://doi.org/10.1109/ACCESS.2020.3002091",
  ISSN =         "2169-3536",
  bibdate =      "Mon Dec 18 08:06:55 2023",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/julia.bib",
  acknowledgement = ack-nhfb,
  fjournal =     "IEEE Access",
  journal-URL =  "https://ieeexplore.ieee.org/xpl/RecentIssue.jsp?punumber=6287639",
}

@InProceedings{Khan:2020:COF,
  author =       "H. Khan and H. Issa and J. K. Tar",
  booktitle =    "{2020 IEEE 20th International Symposium on
                 Computational Intelligence and Informatics (CINTI)}",
  title =        "Comparison of the Operation of Fixed Point
                 Iteration-based Adaptive and Robust {VS\slash SM}-type
                 Solutions for Controlling Two Coupled Fluid Tanks",
  publisher =    pub-IEEE,
  address =      pub-IEEE:adr,
  pages =        "29--34",
  year =         "2020",
  DOI =          "https://doi.org/10.1109/CINTI51262.2020.9305827",
  bibdate =      "Thu Apr 8 07:17:08 2021",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/julia.bib",
  acknowledgement = ack-nhfb,
  keywords =     "Julia programming language",
}

@InProceedings{Kyesswa:2020:NJB,
  author =       "Michael Kyesswa and Philipp Schmurr and H{\"u}seyin K.
                 {\c{C}}akmak and Uwe K{\"u}hnapfel and Veit
                 Hagenmeyer",
  editor =       "{IEEE}",
  booktitle =    "{2020 IEEE\slash ACM 24th International Symposium on
                 Distributed Simulation and Real Time Applications
                 (DS-RT)}",
  title =        "A New {Julia}-Based Parallel Time-Domain Simulation
                 Algorithm for Analysis of Power System Dynamics",
  publisher =    pub-IEEE,
  address =      pub-IEEE:adr,
  pages =        "1--9",
  year =         "2020",
  DOI =          "https://doi.org/10.1109/DS-RT50469.2020.9213602",
  bibdate =      "Mon Dec 18 08:06:55 2023",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/julia.bib",
  acknowledgement = ack-nhfb,
  keywords =     "Julia programming language",
}

@Article{Langer:2020:OHE,
  author =       "Lissy Langer and Thomas Volling",
  title =        "An optimal home energy management system for
                 modulating heat pumps and photovoltaic systems",
  journal =      "Applied Energy",
  volume =       "278",
  pages =        "115661",
  month =        nov,
  year =         "2020",
  DOI =          "https://doi.org/10.1016/j.apenergy.2020.115661",
  bibdate =      "Thu Apr 8 08:02:29 2021",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/julia.bib",
  acknowledgement = ack-nhfb,
  keywords =     "Julia programming language",
}

@InProceedings{Lau:2020:DSC,
  author =       "S. Lau and I. Drosos and J. M. Markel and P. J. Guo",
  booktitle =    "{2020 IEEE Symposium on Visual Languages and
                 Human-Centric Computing (VL/HCC)}",
  title =        "The Design Space of Computational Notebooks: An
                 Analysis of 60 Systems in Academia and Industry",
  publisher =    pub-IEEE,
  address =      pub-IEEE:adr,
  pages =        "1--11",
  year =         "2020",
  DOI =          "https://doi.org/10.1109/VL/HCC50065.2020.9127201",
  bibdate =      "Thu Apr 8 07:17:08 2021",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/julia.bib",
  acknowledgement = ack-nhfb,
  keywords =     "Julia programming language",
}

@Article{Merrell:2020:ISP,
  author =       "David Merrell and Anthony Gitter",
  title =        "Inferring signaling pathways with probabilistic
                 programming",
  journal =      j-BIOINFORMATICS,
  volume =       "36",
  number =       "Supplement\_2",
  pages =        "i822--i830",
  month =        dec,
  year =         "2020",
  DOI =          "https://doi.org/10.1093/bioinformatics/btaa861",
  ISSN =         "1367-4803 (print), 1367-4811 (electronic)",
  ISSN-L =       "1367-4803",
  bibdate =      "Thu Apr 8 08:02:29 2021",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/julia.bib",
  acknowledgement = ack-nhfb,
  fjournal =     "Bioinformatics",
  journal-URL =  "http://bioinformatics.oxfordjournals.org/",
  keywords =     "Julia programming language",
}

@Article{PadmasudhaKannan:2020:AHO,
  author =       "G. {Padmasudha Kannan} and T. V. Smitha and K. V.
                 Nagaraja",
  title =        "Automated high-order curved mesh generator with
                 high-level dynamic programming language {Julia} for
                 photonic applications",
  journal =      "Materials Today: Proceedings",
  year =         "2020",
  DOI =          "https://doi.org/10.1016/j.matpr.2020.09.706",
  ISSN =         "2214-7853",
  bibdate =      "Fri Apr 9 15:22:25 2021",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/julia.bib",
  URL =          "https://www.sciencedirect.com/science/article/pii/S2214785320374319",
  abstract =     "A powerful automated high-order unstructured curved
                 mesh generator is proposed in this work with a
                 high-level dynamic programming language Julia. This
                 generator uses higher-order one-sided curved triangular
                 finite elements for the domains having curved borders
                 with parabolic arcs. The proposed approach of the mesh
                 generator can be successfully applied for solving
                 several industrial problems inclusive of photonics with
                 the finite element method. The use of the parabolic
                 arcs method to obtain node relations for the curved
                 geometry enhances the performance of the technique with
                 the subparametric mappings. The mesh generator
                 suggested is based on the prominent Gmsh mesh
                 generator. For all geometry, the presented technique
                 can be implemented. The methodology is applied in this
                 paper to illustrate a few photonic crystal domains.",
  acknowledgement = ack-nhfb,
  keywords =     "Higher-order triangular finite element, Julia, Mesh
                 generation, Subparametric mapping, Curved elements,
                 Parabolic arc",
}

@InProceedings{Sells:2020:JPL,
  author =       "Ray Sells",
  editor =       "{IEEE}",
  booktitle =    "{2020 IEEE Aerospace Conference}",
  title =        "{Julia} Programming Language Benchmark Using a Flight
                 Simulation",
  publisher =    pub-IEEE,
  address =      pub-IEEE:adr,
  pages =        "1--8",
  year =         "2020",
  DOI =          "https://doi.org/10.1109/AERO47225.2020.9172277",
  bibdate =      "Mon Dec 18 08:06:55 2023",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/julia.bib",
  acknowledgement = ack-nhfb,
  keywords =     "Julia programming language",
}

@InProceedings{Smith:2020:DPJ,
  author =       "Einar Smith",
  booktitle =    "{Introduction to the Tools of Scientific Computing}",
  title =        "Distributed Processing in {Julia}",
  publisher =    pub-SV,
  address =      pub-SV:adr,
  pages =        "??--??",
  year =         "2020",
  DOI =          "https://doi.org/10.1007/978-3-030-60808-8_13",
  bibdate =      "Fri Apr 9 07:54:52 MDT 2021",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/julia.bib",
  URL =          "http://link.springer.com/chapter/10.1007/978-3-030-60808-8_13",
  acknowledgement = ack-nhfb,
}

@InProceedings{Smith:2020:J,
  author =       "Einar Smith",
  booktitle =    "{Introduction to the Tools of Scientific Computing}",
  title =        "{Julia}",
  publisher =    pub-SV,
  address =      pub-SV:adr,
  pages =        "??--??",
  year =         "2020",
  DOI =          "https://doi.org/10.1007/978-3-030-60808-8_8",
  bibdate =      "Fri Apr 9 07:54:52 MDT 2021",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/julia.bib",
  URL =          "http://link.springer.com/chapter/10.1007/978-3-030-60808-8_8",
  acknowledgement = ack-nhfb,
}

@InProceedings{Suslov:2020:SHM,
  author =       "Sergey Suslov and Michael Schiek and Markus Robens and
                 Christian Grewing and Stefan van Waasen",
  editor =       "{IEEE}",
  booktitle =    "{2020 IEEE\slash ACM 24th International Symposium on
                 Distributed Simulation and Real Time Applications
                 (DS-RT)}",
  title =        "Simulating Heterogeneous Models on Multi-Core
                 Platforms using {Julia}'s Computing Language Parallel
                 Potential",
  publisher =    pub-IEEE,
  address =      pub-IEEE:adr,
  pages =        "1--4",
  year =         "2020",
  DOI =          "https://doi.org/10.1109/DS-RT50469.2020.9213527",
  bibdate =      "Mon Dec 18 08:06:55 2023",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/julia.bib",
  acknowledgement = ack-nhfb,
  keywords =     "Julia programming language",
}

@Article{Xiong:2020:PMM,
  author =       "Hao Xiong and Zhen-Yu Yin and Fran{\c{c}}ois Nicot",
  title =        "Programming a micro-mechanical model of granular
                 materials in {Julia}",
  journal =      j-ADV-ENG-SOFTWARE,
  volume =       "145",
  pages =        "102816",
  year =         "2020",
  CODEN =        "AESODT",
  DOI =          "https://doi.org/10.1016/j.advengsoft.2020.102816",
  ISSN =         "0965-9978 (print), 0141-1195 (electronic)",
  ISSN-L =       "0965-9978",
  bibdate =      "Fri Apr 9 15:22:25 2021",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/julia.bib",
  URL =          "https://www.sciencedirect.com/science/article/pii/S0965997820301071",
  abstract =     "Modelling the mechanical behaviour of granular
                 materials using the insight of physics, such as
                 discrete element method (DEM), usually costs a lot of
                 computing resources as a result of the storing and
                 transferring of a large amount of particle and contact
                 information. Unlike DEM, the micro-mechanical (MM)
                 model, based on statistics of directional
                 inter-particle contacts of a representative volume of
                 an element, imposes a much lower computational demand
                 while retaining granular physics. This paper presents
                 such a kinematic hypothesis-based MM modelling
                 framework, programmed by a dynamic coding language,
                 Julia. The directional local law of a recently
                 developed model is selected as an example of the
                 implementation. The entire code of the MM model
                 programmed by Julia is structured into several
                 functions by which multilevel loops are called in an
                 order. Moreover, a global mixed-loading control method
                 is proposed in this study by which the stress control
                 and strain control can be achieved simultaneously.
                 Using this method, conventional triaxial tests and
                 proportional strain tests are simulated to calibrate
                 the model according to experimental data. The same
                 experiments are also simulated by DEM for comparison
                 with the MM model to estimate the computational
                 efficiency and accuracy, which demonstrates a
                 significant advantage of the MM model. This study can
                 be directly used for modelling other materials by
                 changing the directional local law and provides helpful
                 guidance for programming of similar multiscale
                 approaches.",
  acknowledgement = ack-nhfb,
  fjournal =     "Advances in Engineering Software (1978)",
  journal-URL =  "http://www.sciencedirect.com/science/journal/01411195",
  keywords =     "Julia language, High-performance dynamic programming,
                 Micromechanics, Granular materials, Multiscale,
                 Microstructure",
}

@InProceedings{Ziyatdinova:2020:EES,
  author =       "J. Ziyatdinova and O. Oleynikova and E. Valeeva",
  booktitle =    "{2020 IEEE Global Engineering Education Conference
                 (EDUCON)}",
  title =        "Engaging Engineering Students in Cultural Diversity
                 and Unity Studies",
  publisher =    pub-IEEE,
  address =      pub-IEEE:adr,
  pages =        "1164--1167",
  year =         "2020",
  DOI =          "https://doi.org/10.1109/EDUCON45650.2020.9125305",
  bibdate =      "Thu Apr 8 07:17:08 2021",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/julia.bib",
  acknowledgement = ack-nhfb,
  keywords =     "Julia programming language",
}

@Article{Borges:2021:AIA,
  author =       "Carlos F. Borges",
  title =        "{Algorithm 1014}: an Improved Algorithm for {\tt
                 hypot(x,y)}",
  journal =      j-TOMS,
  volume =       "47",
  number =       "1",
  pages =        "9:1--9:12",
  month =        jan,
  year =         "2021",
  CODEN =        "ACMSCU",
  DOI =          "https://doi.org/10.1145/3428446",
  ISSN =         "0098-3500 (print), 1557-7295 (electronic)",
  ISSN-L =       "0098-3500",
  bibdate =      "Thu Jan 7 10:31:04 MST 2021",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/elefunt.bib;
                 https://www.math.utah.edu/pub/tex/bib/fparith.bib;
                 https://www.math.utah.edu/pub/tex/bib/julia.bib;
                 https://www.math.utah.edu/pub/tex/bib/toms.bib",
  URL =          "https://dl.acm.org/doi/10.1145/3428446",
  abstract =     "We develop fast and accurate algorithms for evaluating
                 $ \sqrt {x^2 + y^2} $ for two floating-point numbers
                 $x$ and $y$. Library functions that perform this
                 computation are generally named {\tt hypot(x,y)}. We
                 compare five approaches that we will develop in this
                 article to the current resident library function that
                 is delivered with Julia 1.1 and to the code that has
                 been distributed with the C math library for decades.
                 We will investigate the accuracy of our algorithms by
                 simulation.",
  acknowledgement = ack-nhfb,
  articleno =    "9",
  fjournal =     "ACM Transactions on Mathematical Software (TOMS)",
  journal-URL =  "https://dl.acm.org/loi/toms",
}

@InProceedings{Carlson:2021:CJC,
  author =       "Fredrik Bagge Carlson and Mattias Falt and Albin
                 Heimerson and Olof Troeng",
  editor =       "{IEEE}",
  booktitle =    "{2021 60th IEEE Conference on Decision and Control
                 (CDC)}",
  title =        "{ControlSystems.jl}: a Control Toolbox in {Julia}",
  publisher =    pub-IEEE,
  address =      pub-IEEE:adr,
  pages =        "4847--4853",
  year =         "2021",
  DOI =          "https://doi.org/10.1109/CDC45484.2021.9683403",
  bibdate =      "Mon Dec 18 08:06:55 2023",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/julia.bib",
  acknowledgement = ack-nhfb,
}

@Article{Cheli:2021:PMJ,
  author =       "Alessandro Cheli",
  title =        "\pkg{Metatheory.jl}: Fast and Elegant Algebraic
                 Computation in {Julia} with Extensible Equality
                 Saturation",
  journal =      "Journal of Open Source Software",
  volume =       "6",
  number =       "59",
  pages =        "3078",
  month =        mar,
  year =         "2021",
  DOI =          "https://doi.org/10.21105/joss.03078",
  bibdate =      "Thu Apr 8 08:02:29 2021",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/julia.bib",
  acknowledgement = ack-nhfb,
  keywords =     "Julia programming language",
}

@Article{Dowson:2021:PSJ,
  author =       "Oscar Dowson and Lea Kapelevich",
  title =        "\pkg{SDDP.jl}: A {Julia} Package for Stochastic Dual
                 Dynamic Programming",
  journal =      j-INFORMS-J-COMPUT,
  volume =       "33",
  number =       "1",
  pages =        "27--33",
  month =        "Winter",
  year =         "2021",
  CODEN =        "????",
  DOI =          "https://doi.org/10.1287/ijoc.2020.0987",
  ISSN =         "1091-9856 (print), 1526-5528 (electronic)",
  ISSN-L =       "1091-9856",
  bibdate =      "Sat Feb 6 14:48:57 MST 2021",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/informs-j-comput.bib;
                 https://www.math.utah.edu/pub/tex/bib/julia.bib",
  URL =          "https://pubsonline.informs.org/doi/pdf/10.1287/ijoc.2020.0987",
  acknowledgement = ack-nhfb,
  ajournal =     "INFORMS J. Comput.",
  fjournal =     "INFORMS Journal on Computing",
  journal-URL =  "https://pubsonline.informs.org/journal/ijoc",
  onlinedate =   "31 August 2020",
}

@Article{Goke:2021:AJJ,
  author =       "Leonard G{\"o}ke",
  title =        "\pkg{AnyMOD.jl}: a {Julia} package for creating energy
                 system models",
  journal =      j-SOFTWAREX,
  volume =       "16",
  number =       "??",
  pages =        "??--??",
  month =        dec,
  year =         "2021",
  CODEN =        "????",
  DOI =          "https://doi.org/10.1016/j.softx.2021.100871",
  ISSN =         "2352-7110",
  ISSN-L =       "2352-7110",
  bibdate =      "Thu Feb 10 10:19:26 MST 2022",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/julia.bib;
                 https://www.math.utah.edu/pub/tex/bib/softwarex.bib",
  URL =          "http://www.sciencedirect.com/science/article/pii/S2352711021001382",
  acknowledgement = ack-nhfb,
  articleno =    "100871",
  fjournal =     "SoftwareX",
  journal-URL =  "https://www.sciencedirect.com/journal/softwarex/issues",
}

@Article{Huo:2021:JJB,
  author =       "Zenan Huo and Gang Mei and Nengxiong Xu",
  title =        "{juSFEM}: a {Julia}-based open-source package of
                 parallel {Smoothed Finite Element Method (S-FEM)} for
                 elastic problems",
  journal =      j-COMPUT-MATH-APPL,
  volume =       "81",
  number =       "??",
  pages =        "459--477",
  day =          "1",
  month =        jan,
  year =         "2021",
  CODEN =        "CMAPDK",
  DOI =          "https://doi.org/10.1016/j.camwa.2020.01.027",
  ISSN =         "0898-1221 (print), 1873-7668 (electronic)",
  ISSN-L =       "0898-1221",
  bibdate =      "Thu Apr 8 08:02:29 2021",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/computmathappl2020.bib;
                 https://www.math.utah.edu/pub/tex/bib/julia.bib",
  URL =          "http://www.sciencedirect.com/science/article/pii/S0898122120300523",
  acknowledgement = ack-nhfb,
  fjournal =     "Computers and Mathematics with Applications",
  journal-URL =  "http://www.sciencedirect.com/science/journal/08981221",
  keywords =     "Julia programming language",
}

@Article{Huo:2021:PJJ,
  author =       "Zenan Huo and Gang Mei and Nengxiong Xu",
  title =        "\pkg{juSFEM}: a {Julia}-based open-source package of
                 parallel {Smoothed Finite Element Method (S-FEM)} for
                 elastic problems",
  journal =      j-COMPUT-MATH-APPL,
  volume =       "81",
  pages =        "459--477",
  year =         "2021",
  CODEN =        "CMAPDK",
  DOI =          "https://doi.org/10.1016/j.camwa.2020.01.027",
  ISSN =         "0898-1221 (print), 1873-7668 (electronic)",
  ISSN-L =       "0898-1221",
  bibdate =      "Fri Apr 9 15:22:25 2021",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/julia.bib",
  note =         "Development and Application of Open-source Software
                 for Problems with Numerical PDEs",
  URL =          "https://www.sciencedirect.com/science/article/pii/S0898122120300523",
  abstract =     "The Smoothed Finite Element Method (S-FEM) proposed by
                 Liu G.R. can achieve more accurate results than the
                 conventional FEM. Currently, much commercial software
                 and many open-source packages have been developed to
                 analyze various science and engineering problems using
                 the FEM. However, there is little work focusing on
                 designing and developing software or packages for the
                 S-FEM. In this paper, we design and implement an
                 open-source package of the parallel S-FEM for elastic
                 problems by utilizing the Julia language on multi-core
                 CPU. The Julia language is a fast, easy-to-use, and
                 open-source programming language that was originally
                 designed for high-performance computing. We term our
                 package as juSFEM. To the best of the authors
                 knowledge, juSFEM is the first package of parallel
                 S-FEM developed with the Julia language. To verify the
                 correctness and evaluate the efficiency of juSFEM, two
                 groups of benchmark tests are conducted. The benchmark
                 results show that (1) juSFEM can achieve accurate
                 results when compared to commercial FEM software
                 ABAQUS, and (2) juSFEM only requires 543 s to calculate
                 the displacements of a 3D elastic cantilever beam model
                 which is composed of approximately 2 million
                 tetrahedral elements, while in contrast the commercial
                 FEM software needs 930 s for the same calculation
                 model; (3) the parallel juSFEM executed on the 24-core
                 CPU is approximately 20$ \times $ faster than the
                 corresponding serial version. Moreover, the structure
                 and function of juSFEM are easily modularized, and the
                 code in juSFEM is clear and readable, which is
                 convenient for further development.",
  acknowledgement = ack-nhfb,
  fjournal =     "Computers and Mathematics with Applications",
  journal-URL =  "http://www.sciencedirect.com/science/journal/08981221",
  keywords =     "Smoothed Finite Element Method (S-FEM), Parallel
                 algorithm, Julia language, Computational efficiency,
                 Computational accuracy",
}

@Article{Lara:2021:PJP,
  author =       "Jos{\'e} Daniel Lara and Clayton Barrows and Daniel
                 Thom and Dheepak Krishnamurthy and Duncan Callaway",
  title =        "\pkg{PowerSystems.jl} --- a power system data
                 management package for large scale modeling",
  journal =      j-SOFTWAREX,
  volume =       "15",
  number =       "??",
  pages =        "??--??",
  month =        jul,
  year =         "2021",
  CODEN =        "????",
  DOI =          "https://doi.org/10.1016/j.softx.2021.100747",
  ISSN =         "2352-7110",
  ISSN-L =       "2352-7110",
  bibdate =      "Thu Feb 10 10:19:25 MST 2022",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/julia.bib;
                 https://www.math.utah.edu/pub/tex/bib/softwarex.bib",
  URL =          "http://www.sciencedirect.com/science/article/pii/S2352711021000765",
  acknowledgement = ack-nhfb,
  articleno =    "100747",
  fjournal =     "SoftwareX",
  journal-URL =  "https://www.sciencedirect.com/journal/softwarex/issues",
}

@Article{Lavaud:2021:ABT,
  author =       "Corentin Lavaud and Robin Gerzaguet and Matthieu
                 Gautier and Olivier Berder",
  title =        "{AbstractSDRs}: Bring Down the Two-Language Barrier
                 With {Julia} Language for Efficient {SDR} Prototyping",
  journal =      "IEEE Embedded Systems Letters",
  volume =       "13",
  number =       "4",
  pages =        "166--169",
  year =         "2021",
  DOI =          "https://doi.org/10.1109/LES.2021.3054174",
  ISSN =         "1943-0663 (print), 1943-0671 (electronic)",
  ISSN-L =       "1943-0663",
  bibdate =      "Mon Dec 18 08:06:55 2023",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/julia.bib",
  acknowledgement = ack-nhfb,
}

@InProceedings{Lin:2021:CJP,
  author =       "Wei-Chen Lin and Simon McIntosh-Smith",
  editor =       "{IEEE}",
  booktitle =    "{2021 International Workshop on Performance Modeling,
                 Benchmarking and Simulation of High Performance
                 Computer Systems (PMBS)}",
  title =        "Comparing {Julia} to Performance Portable Parallel
                 Programming Models for {HPC}",
  publisher =    pub-IEEE,
  address =      pub-IEEE:adr,
  pages =        "94--105",
  year =         "2021",
  DOI =          "https://doi.org/10.1109/PMBS54543.2021.00016",
  bibdate =      "Mon Dec 18 08:06:55 2023",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/julia.bib",
  acknowledgement = ack-nhfb,
}

@Article{Liu:2021:SDC,
  author =       "Lun Liu and Todd Millstein and Madanlal Musuvathi",
  title =        "Safe-by-default Concurrency for Modern Programming
                 Languages",
  journal =      j-TOPLAS,
  volume =       "43",
  number =       "3",
  pages =        "10:1--10:50",
  month =        sep,
  year =         "2021",
  CODEN =        "ATPSDT",
  DOI =          "https://doi.org/10.1145/3462206",
  ISSN =         "0164-0925 (print), 1558-4593 (electronic)",
  ISSN-L =       "0164-0925",
  bibdate =      "Tue Sep 14 07:20:02 MDT 2021",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/java2020.bib;
                 https://www.math.utah.edu/pub/tex/bib/julia.bib;
                 https://www.math.utah.edu/pub/tex/bib/toplas.bib",
  URL =          "https://dl.acm.org/doi/10.1145/3462206",
  abstract =     "Modern ``safe'' programming languages follow a design
                 principle that we call safety by default and
                 performance by choice. By default, these languages
                 enforce important programming abstractions, such as
                 memory and type safety, but they also provide
                 mechanisms that allow expert programmers to explicitly
                 trade some safety guarantees for increased performance.
                 However, these same languages have adopted the inverse
                 design principle in their support for multithreading.
                 By default, multithreaded programs violate important
                 abstractions, such as program order and atomic access
                 to individual memory locations to admit compiler and
                 hardware optimizations that would otherwise need to be
                 restricted. Not only does this approach conflict with
                 the design philosophy of safe languages, but very
                 little is known about the practical performance cost of
                 providing a stronger default semantics.

                 In this article, we propose a safe-by-default and
                 performance-by-choice multithreading semantics for safe
                 languages, which we call volatile-by-default. Under
                 this semantics, programs have sequential consistency
                 (SC) by default, which is the natural ``interleaving''
                 semantics of threads. However, the volatile-by-default
                 design also includes annotations that allow expert
                 programmers to avoid the associated overheads in
                 performance-critical code. We describe the design,
                 implementation, optimization, and evaluation of the
                 volatile-by-default semantics for two different safe
                 languages: Java and Julia. First, we present
                 VBD-HotSpot and VBDA-HotSpot, modifications of Oracle's
                 HotSpot JVM that enforce the volatile-by-default
                 semantics on Intel x86-64 hardware and ARM-v8 hardware.
                 Second, we present SC-Julia, a modification to the
                 just-in-time compiler within the standard Julia
                 implementation that provides best-effort enforcement of
                 the volatile-by-default semantics on x86-64 hardware
                 for the purpose of performance evaluation. We also
                 detail two different implementation techniques: a
                 baseline approach that simply reuses existing
                 mechanisms in the compilers for handling atomic
                 accesses, and a speculative approach that avoids the
                 overhead of enforcing the volatile-by-default semantics
                 until there is the possibility of an SC violation. Our
                 results show that the cost of enforcing SC is
                 significant but arguably still acceptable for some use
                 cases today. Further, we demonstrate that compiler
                 optimizations as well as programmer annotations can
                 reduce the overhead considerably.",
  acknowledgement = ack-nhfb,
  articleno =    "10",
  fjournal =     "ACM Transactions on Programming Languages and
                 Systems",
  journal-URL =  "https://dl.acm.org/loi/toplas",
}

@Book{Nazarathy:2021:SJF,
  author =       "Yoni Nazarathy and Hayden Klok",
  title =        "Statistics with {Julia}: Fundamentals for Data
                 Science, Machine Learning and Artificial Intelligence",
  publisher =    pub-SV,
  address =      pub-SV:adr,
  pages =        "xvi + 532",
  year =         "2021",
  DOI =          "https://doi.org/10.1007/978-3-030-70901-3",
  ISBN =         "3-030-70901-9",
  ISBN-13 =      "978-3-030-70901-3",
  ISSN =         "2365-5674",
  LCCN =         "????",
  bibdate =      "Thu Apr 22 06:17:57 2021",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/julia.bib",
  URL =          "https://www.springer.com/us/book/9783030709006",
  abstract =     "This monograph uses the Julia language to guide the
                 reader through an exploration of the fundamental
                 concepts of probability and statistics, all with a view
                 of mastering machine learning, data science, and
                 artificial intelligence. The text does not require any
                 prior statistical knowledge and only assumes a basic
                 understanding of programming and mathematical notation.
                 It is accessible to practitioners and researchers in
                 data science, machine learning, bio-statistics,
                 finance, or engineering who may wish to solidify their
                 knowledge of probability and statistics. The book
                 progresses through ten independent chapters starting
                 with an introduction of Julia, and moving through basic
                 probability, distributions, statistical inference,
                 regression analysis, machine learning methods, and the
                 use of Monte Carlo simulation for dynamic stochastic
                 models. Ultimately this text introduces the Julia
                 programming language as a computational tool, uniquely
                 addressing end-users rather than developers. It makes
                 heavy use of over 200 code examples to illustrate
                 dozens of key statistical concepts. The Julia code,
                 written in a simple format with parameters that can be
                 easily modified, is also available for download from
                 the book's associated GitHub repository online",
  acknowledgement = ack-nhfb,
  remark =       "Publication expected in July 2021.",
}

@InProceedings{odyga:2021:PIP,
  author =       "Wiktor odyga and Bartosz Chaber",
  editor =       "{IEEE}",
  booktitle =    "{2021 22nd International Conference on Computational
                 Problems of Electrical Engineering (CPEE)}",
  title =        "Parallel implementation of a {Particle-in-Cell} code
                 in {Julia} programming language",
  publisher =    pub-IEEE,
  address =      pub-IEEE:adr,
  pages =        "1--4",
  year =         "2021",
  DOI =          "https://doi.org/10.1109/CPEE54040.2021.9585274",
  bibdate =      "Mon Dec 18 08:06:55 2023",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/julia.bib",
  acknowledgement = ack-nhfb,
}

@Article{Pelenitsyn:2021:TSJ,
  author =       "Artem Pelenitsyn and Julia Belyakova and Benjamin
                 Chung and Ross Tate and Jan Vitek",
  title =        "Type stability in {Julia}: avoiding performance
                 pathologies in {JIT} compilation",
  journal =      j-PACMPL,
  volume =       "5",
  number =       "OOPSLA",
  pages =        "150:1--150:26",
  month =        oct,
  year =         "2021",
  CODEN =        "????",
  DOI =          "https://doi.org/10.1145/3485527",
  ISSN =         "2475-1421 (electronic)",
  ISSN-L =       "2475-1421",
  bibdate =      "Wed Mar 2 07:00:43 MST 2022",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/julia.bib;
                 https://www.math.utah.edu/pub/tex/bib/pacmpl.bib",
  URL =          "https://dl.acm.org/doi/10.1145/3485527",
  abstract =     "As a scientific programming language, Julia strives
                 for performance but also provides high-level
                 productivity features. To avoid performance
                 pathologies, Julia users are expected to adhere to a
                 coding discipline that enables so-called type
                 stability. \ldots{}",
  acknowledgement = ack-nhfb,
  articleno =    "150",
  fjournal =     "Proceedings of the ACM on Programming Languages
                 (PACMPL)",
  journal-URL =  "https://dl.acm.org/loi/pacmpl",
}

@InProceedings{Pelletier:2021:GJP,
  author =       "Michel Pelletier and Will Kimmerer and Timothy A.
                 Davis and Timothy G. Mattson",
  editor =       "{IEEE}",
  booktitle =    "{2021 IEEE High Performance Extreme Computing
                 Conference (HPEC)}",
  title =        "The {GraphBLAS} in {Julia} and {Python}: the
                 {PageRank} and Triangle Centralities",
  publisher =    pub-IEEE,
  address =      pub-IEEE:adr,
  pages =        "1--7",
  year =         "2021",
  DOI =          "https://doi.org/10.1109/HPEC49654.2021.9622789",
  bibdate =      "Mon Dec 18 08:06:55 2023",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/julia.bib;
                 https://www.math.utah.edu/pub/tex/bib/pagerank.bib;
                 https://www.math.utah.edu/pub/tex/bib/python.bib",
  acknowledgement = ack-nhfb,
}

@InProceedings{Samayoa:2021:WDS,
  author =       "Jorge Samayoa and Preng Biba",
  editor =       "{IEEE}",
  booktitle =    "{2021 IEEE World Conference on Engineering Education
                 (EDUNINE)}",
  title =        "Workshop: Data Science with {Julia}",
  publisher =    pub-IEEE,
  address =      pub-IEEE:adr,
  pages =        "1--2",
  year =         "2021",
  DOI =          "https://doi.org/10.1109/EDUNINE51952.2021.9429122",
  bibdate =      "Mon Dec 18 08:06:55 2023",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/julia.bib",
  acknowledgement = ack-nhfb,
}

@Article{Stanitzki:2021:PJH,
  author =       "Marcel Stanitzki and Jan Strube",
  title =        "Performance of {Julia} for High Energy Physics
                 Analyses",
  journal =      j-COMPUT-SOFTW-BIG-SCI,
  volume =       "5",
  number =       "1",
  pages =        "??--??",
  month =        dec,
  year =         "2021",
  CODEN =        "????",
  DOI =          "https://doi.org/10.1007/s41781-021-00053-3",
  ISSN =         "2510-2036 (print), 2510-2044 (electronic)",
  ISSN-L =       "2510-2036",
  bibdate =      "Fri Apr 9 06:38:19 MDT 2021",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/computsoftwbigsci.bib;
                 https://www.math.utah.edu/pub/tex/bib/julia.bib",
  URL =          "https://link.springer.com/article/10.1007/s41781-021-00053-3",
  acknowledgement = ack-nhfb,
  articleno =    "10",
  fjournal =     "Computing and Software for Big Science",
  journal-URL =  "https://www.springer.com/journal/41781",
  online-date =  "Published: 09 April 2021 Article: 10",
}

@InProceedings{Yan:2021:JBH,
  author =       "Xiaowei Yan and Qiguo Wang and Zhun Zhong and Tianhong
                 Ren and Keyou Wang",
  editor =       "{IEEE}",
  booktitle =    "{2021 6th Asia Conference on Power and Electrical
                 Engineering (ACPEE)}",
  title =        "{Julia}-based high-performance electromagnetic
                 transient simulation method and platform for large
                 power grid",
  publisher =    pub-IEEE,
  address =      pub-IEEE:adr,
  pages =        "252--257",
  year =         "2021",
  DOI =          "https://doi.org/10.1109/ACPEE51499.2021.9437034",
  bibdate =      "Mon Dec 18 08:06:55 2023",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/julia.bib",
  acknowledgement = ack-nhfb,
}

@Article{Bagci:2022:JJP,
  author =       "Ali Bagci",
  title =        "\pkg{JRAF}: a {Julia} package for computation of
                 relativistic molecular auxiliary functions",
  journal =      j-COMP-PHYS-COMM,
  volume =       "273",
  number =       "??",
  pages =        "Article 108276",
  month =        apr,
  year =         "2022",
  CODEN =        "CPHCBZ",
  DOI =          "https://doi.org/10.1016/j.cpc.2021.108276",
  ISSN =         "0010-4655 (print), 1879-2944 (electronic)",
  ISSN-L =       "0010-4655",
  bibdate =      "Tue Jan 25 06:27:42 MST 2022",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/compphyscomm2020.bib;
                 https://www.math.utah.edu/pub/tex/bib/julia.bib",
  URL =          "http://www.sciencedirect.com/science/article/pii/S001046552100388X",
  acknowledgement = ack-nhfb,
  fjournal =     "Computer Physics Communications",
  journal-URL =  "http://www.sciencedirect.com/science/journal/00104655",
}

@Book{Balbaert:2022:MOE,
  author =       "Ivo Balbaert and Adrian Salceanu and Logan
                 Kilpatrick",
  title =        "{Web} Development with {Julia} and {Genie}: a hands-on
                 guide to high-performance server-side web development
                 with the {Julia} programming language",
  publisher =    pub-PACKT,
  address =      pub-PACKT:adr,
  pages =        "xvii + 235",
  year =         "2022",
  ISBN =         "1-80181-095-8, 1-80181-113-X",
  ISBN-13 =      "978-1-80181-095-1, 978-1-80181-113-2",
  LCCN =         "????",
  bibdate =      "Mon Dec 18 08:06:55 2023",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/julia.bib",
  acknowledgement = ack-nhfb,
  tableofcontents = "Julia Programming Overview \\
                 Using Julia Standard Web Packages \\
                 Applying Julia in Various Use Cases on the Web \\
                 Building an MVC ToDo App \\
                 Adding a REST API \\
                 Deploying Genie Apps in Production \\
                 Adding Authentication to Our App \\
                 Developing Interactive Data Dashboards with Genie",
}

@Article{Biel:2022:ESP,
  author =       "Martin Biel and Mikael Johansson",
  title =        "Efficient Stochastic Programming in {Julia}",
  journal =      j-INFORMS-J-COMPUT,
  volume =       "34",
  number =       "4",
  pages =        "1885--1902",
  month =        "Fall",
  year =         "2022",
  CODEN =        "????",
  DOI =          "https://doi.org/10.1287/ijoc.2022.1158",
  ISSN =         "1091-9856 (print), 1526-5528 (electronic)",
  ISSN-L =       "1091-9856",
  bibdate =      "Fri Oct 28 07:43:08 MDT 2022",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/informs-j-comput.bib;
                 https://www.math.utah.edu/pub/tex/bib/julia.bib",
  URL =          "https://pubsonline.informs.org/doi/fpi/10.1287/ijoc.2022.1158",
  acknowledgement = ack-nhfb,
  ajournal =     "INFORMS J. Comput.",
  fjournal =     "INFORMS Journal on Computing",
  journal-URL =  "https://pubsonline.informs.org/journal/ijoc",
  onlinedate =   "1 March 2022",
}

@InProceedings{Giordano:2022:PMP,
  author =       "Mos{\`e} Giordano and Milan Kl{\"o}wer and Valentin
                 Churavy",
  editor =       "{IEEE}",
  booktitle =    "{2022 IEEE International Conference on Cluster
                 Computing (CLUSTER)}",
  title =        "Productivity meets Performance: {Julia} on {A64FX}",
  publisher =    pub-IEEE,
  address =      pub-IEEE:adr,
  pages =        "549--555",
  year =         "2022",
  DOI =          "https://doi.org/10.1109/CLUSTER51413.2022.00072",
  bibdate =      "Mon Dec 18 08:06:55 2023",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/julia.bib",
  acknowledgement = ack-nhfb,
}

@Article{Luo:2022:JJB,
  author =       "Mimi Luo and Jiayu Qin and Gang Mei",
  title =        "\pkg{juSPH}: a {Julia}-based open-source package of
                 parallel {Smoothed Particle Hydrodynamics (SPH)} for
                 dam break problems",
  journal =      j-SOFTWAREX,
  volume =       "19",
  number =       "??",
  pages =        "??--??",
  month =        jul,
  year =         "2022",
  CODEN =        "????",
  DOI =          "https://doi.org/10.1016/j.softx.2022.101151",
  ISSN =         "2352-7110",
  ISSN-L =       "2352-7110",
  bibdate =      "Fri Dec 9 06:06:57 MST 2022",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/julia.bib;
                 https://www.math.utah.edu/pub/tex/bib/softwarex.bib",
  URL =          "http://www.sciencedirect.com/science/article/pii/S2352711022000954",
  acknowledgement = ack-nhfb,
  articleno =    "101151",
  fjournal =     "SoftwareX",
  journal-URL =  "https://www.sciencedirect.com/journal/softwarex/issues",
}

@Article{Maincon:2022:EJE,
  author =       "Philippe Main{\c{c}}on",
  title =        "\pkg{EspyInsideFunction.jl} --- extracting
                 intermediate results from numerical functions",
  journal =      j-SOFTWAREX,
  volume =       "19",
  number =       "??",
  pages =        "??--??",
  month =        jul,
  year =         "2022",
  CODEN =        "????",
  DOI =          "https://doi.org/10.1016/j.softx.2022.101200",
  ISSN =         "2352-7110",
  ISSN-L =       "2352-7110",
  bibdate =      "Fri Dec 9 06:06:57 MST 2022",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/julia.bib;
                 https://www.math.utah.edu/pub/tex/bib/softwarex.bib",
  URL =          "http://www.sciencedirect.com/science/article/pii/S2352711022001194",
  acknowledgement = ack-nhfb,
  articleno =    "101200",
  fjournal =     "SoftwareX",
  journal-URL =  "https://www.sciencedirect.com/journal/softwarex/issues",
}

@InProceedings{Mamidi:2022:PAG,
  author =       "Nischay Ram Mamidi and Dhruv Saxena and Kumar Prasun
                 and Anil Nemili and Bharatkumar Sharma and S. M.
                 Deshpande",
  editor =       "{IEEE}",
  booktitle =    "{2022 IEEE 29th International Conference on High
                 Performance Computing, Data, and Analytics (HiPC)}",
  title =        "Performance analysis of {GPU} accelerated meshfree
                 {$q$-LSKUM} solvers in {Fortran}, {C}, {Python}, and
                 {Julia}",
  publisher =    pub-IEEE,
  address =      pub-IEEE:adr,
  pages =        "156--165",
  year =         "2022",
  DOI =          "https://doi.org/10.1109/HiPC56025.2022.00031",
  bibdate =      "Mon Dec 18 08:06:55 2023",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/fortran3.bib;
                 https://www.math.utah.edu/pub/tex/bib/julia.bib;
                 https://www.math.utah.edu/pub/tex/bib/python.bib",
  acknowledgement = ack-nhfb,
}

@Article{Plietzsch:2022:PJE,
  author =       "Anton Plietzsch and Raphael Kogler and Sabine Auer and
                 Julia Merino and Asier Gil-de-Muro and Jan Li{\ss}e and
                 Christina Vogel and Frank Hellmann",
  title =        "\pkg{PowerDynamics.jl} --- an experimentally validated
                 open-source package for the dynamical analysis of power
                 grids",
  journal =      j-SOFTWAREX,
  volume =       "17",
  number =       "??",
  pages =        "??--??",
  month =        jan,
  year =         "2022",
  CODEN =        "????",
  DOI =          "https://doi.org/10.1016/j.softx.2021.100861",
  ISSN =         "2352-7110",
  ISSN-L =       "2352-7110",
  bibdate =      "Mon Feb 28 10:41:25 MST 2022",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/julia.bib;
                 https://www.math.utah.edu/pub/tex/bib/softwarex.bib",
  URL =          "http://www.sciencedirect.com/science/article/pii/S2352711021001345",
  acknowledgement = ack-nhfb,
  articleno =    "100861",
  fjournal =     "SoftwareX",
  journal-URL =  "https://www.sciencedirect.com/journal/softwarex/issues",
}

@Article{Psarras:2022:LAM,
  author =       "Christos Psarras and Henrik Barthels and Paolo
                 Bientinesi",
  title =        "The Linear Algebra Mapping Problem. {Current} State of
                 Linear Algebra Languages and Libraries",
  journal =      j-TOMS,
  volume =       "48",
  number =       "3",
  pages =        "26:1--26:??",
  month =        sep,
  year =         "2022",
  CODEN =        "ACMSCU",
  DOI =          "https://doi.org/10.1145/3549935",
  ISSN =         "0098-3500 (print), 1557-7295 (electronic)",
  ISSN-L =       "0098-3500",
  bibdate =      "Sat Oct 29 08:26:38 MDT 2022",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/julia.bib;
                 https://www.math.utah.edu/pub/tex/bib/matlab.bib;
                 https://www.math.utah.edu/pub/tex/bib/python.bib;
                 https://www.math.utah.edu/pub/tex/bib/s-plus.bib;
                 https://www.math.utah.edu/pub/tex/bib/toms.bib",
  URL =          "https://dl.acm.org/doi/10.1145/3549935",
  abstract =     "We observe a disconnect between developers and
                 end-users of linear algebra libraries. On the one hand,
                 developers invest significant effort in creating
                 sophisticated numerical kernels. On the other hand,
                 end-users are progressively less likely to go through
                 the time consuming process of directly using said
                 kernels; instead, languages and libraries, which offer
                 a higher level of abstraction, are becoming
                 increasingly popular. These languages offer mechanisms
                 that internally map the input program to lower level
                 kernels. Unfortunately, our experience suggests that,
                 in terms of performance, this translation is typically
                 suboptimal.\par

                 In this paper, we define the problem of mapping a
                 linear algebra expression to a set of available
                 building blocks as the ``Linear Algebra Mapping
                 Problem'' (LAMP); we discuss its NP-complete nature,
                 and investigate how effectively a benchmark of test
                 problems is solved by popular high-level programming
                 languages and libraries. Specifically, we consider
                 Matlab, Octave, Julia, R, Armadillo (C++), Eigen (C++),
                 and NumPy (Python); the benchmark is meant to test both
                 compiler optimizations, as well as linear algebra
                 specific optimizations, such as the optimal
                 parenthesization of matrix products. The aim of this
                 study is to facilitate the development of languages and
                 libraries that support linear algebra computations.",
  acknowledgement = ack-nhfb,
  articleno =    "26",
  fjournal =     "ACM Transactions on Mathematical Software (TOMS)",
  journal-URL =  "https://dl.acm.org/loi/toms",
}

@InProceedings{Rackauckas:2022:CMS,
  author =       "Chris Rackauckas and Maja Gwozdz and Anand Jain and
                 Yingbo Ma and Francesco Martinuzzi and Utkarsh Rajput
                 and Elliot Saba and Viral B. Shah and Ranjan
                 Anantharaman and Alan Edelman and Shashi Gowda and Avik
                 Pal and Chris Laughman",
  editor =       "{IEEE}",
  booktitle =    "{2022 Annual Modeling and Simulation Conference
                 (ANNSIM)}",
  title =        "Composing Modeling and Simulation with Machine
                 Learning in {Julia}",
  publisher =    pub-IEEE,
  address =      pub-IEEE:adr,
  pages =        "1--17",
  year =         "2022",
  DOI =          "https://doi.org/10.23919/ANNSIM55834.2022.9859453",
  bibdate =      "Mon Dec 18 08:06:55 2023",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/julia.bib",
  acknowledgement = ack-nhfb,
}

@Article{Sandoval:2022:IJI,
  author =       "Steven Sandoval and Hasan Alshammari and Mamta Dalal",
  title =        "\pkg{ISA.jl}: {Instantaneous} spectral analysis in
                 {Julia}",
  journal =      j-SOFTWAREX,
  volume =       "20",
  number =       "??",
  pages =        "??--??",
  month =        dec,
  year =         "2022",
  CODEN =        "????",
  DOI =          "https://doi.org/10.1016/j.softx.2022.101239",
  ISSN =         "2352-7110",
  ISSN-L =       "2352-7110",
  bibdate =      "Fri Dec 9 06:06:58 MST 2022",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/julia.bib;
                 https://www.math.utah.edu/pub/tex/bib/softwarex.bib",
  URL =          "http://www.sciencedirect.com/science/article/pii/S2352711022001571",
  acknowledgement = ack-nhfb,
  articleno =    "101239",
  fjournal =     "SoftwareX",
  journal-URL =  "https://www.sciencedirect.com/journal/softwarex/issues",
}

@Article{Verdugo:2022:SDG,
  author =       "Francesc Verdugo and Santiago Badia",
  title =        "The software design of \pkg{Gridap}: a {Finite
                 Element} package based on the {Julia JIT} compiler",
  journal =      j-COMP-PHYS-COMM,
  volume =       "276",
  number =       "??",
  pages =        "Article 108341",
  month =        jul,
  year =         "2022",
  CODEN =        "CPHCBZ",
  DOI =          "https://doi.org/10.1016/j.cpc.2022.108341",
  ISSN =         "0010-4655 (print), 1879-2944 (electronic)",
  ISSN-L =       "0010-4655",
  bibdate =      "Wed May 4 06:12:54 MDT 2022",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/compphyscomm2020.bib;
                 https://www.math.utah.edu/pub/tex/bib/julia.bib",
  URL =          "http://www.sciencedirect.com/science/article/pii/S0010465522000595",
  acknowledgement = ack-nhfb,
  fjournal =     "Computer Physics Communications",
  journal-URL =  "http://www.sciencedirect.com/science/journal/00104655",
}

@Article{Verschelde:2022:EAS,
  author =       "Jan Verschelde",
  title =        "Exporting {Ada} Software to {Python} and {Julia}",
  journal =      j-SIGADA-LETTERS,
  volume =       "42",
  number =       "1",
  pages =        "76--78",
  month =        jun,
  year =         "2022",
  CODEN =        "AALEE5",
  DOI =          "https://doi.org/10.1145/3577949.3577961",
  ISSN =         "1094-3641 (print), 1557-9476 (electronic)",
  ISSN-L =       "0736-721X",
  bibdate =      "Tue Apr 11 11:59:12 MDT 2023",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/julia.bib;
                 https://www.math.utah.edu/pub/tex/bib/python.bib;
                 https://www.math.utah.edu/pub/tex/bib/sigada.bib",
  URL =          "https://dl.acm.org/doi/10.1145/3577949.3577961",
  abstract =     "The objective is to demonstrate the making of Ada
                 software available to Python and Julia programmers
                 using GPRbuild. GPRbuild is the project manager of the
                 GNAT \ldots{}",
  acknowledgement = ack-nhfb,
  fjournal =     "ACM SIGADA Ada Letters",
  journal-URL =  "https://dl.acm.org/loi/sigada",
}

@Book{Zea:2022:JSS,
  author =       "Diego Javier Zea",
  title =        "Interactive Visualization and Plotting with {Julia}:
                 Create impressive data visualizations through {Julia}
                 packages such as {Plots}, {Makie}, {Gadfly}, and more",
  publisher =    pub-PACKT,
  address =      pub-PACKT:adr,
  pages =        "xix + 370",
  year =         "2022",
  ISBN =         "1-80181-051-6 (paperback), 1-80181-921-1 (e-book)",
  ISBN-13 =      "978-1-80181-051-7 (paperback), 978-1-80181-921-3
                 (e-book)",
  bibdate =      "Mon Dec 18 08:06:55 2023",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/julia.bib",
  acknowledgement = ack-nhfb,
}

@InProceedings{Allred:2023:FNT,
  author =       "Taylor Allred and Xinyi Li and Ashton Wiersdorf and
                 Ben Greenman and Ganesh Gopalakrishnan",
  editor =       "????",
  booktitle =    "Julia Conference 2023",
  title =        "{FlowFPX}: Nimble Tools for Debugging Floating-Point
                 Exceptions",
  publisher =    "????",
  address =      "????",
  pages =        "8",
  year =         "2023",
  bibdate =      "Mon Sep 11 06:29:11 2023",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/fparith.bib;
                 https://www.math.utah.edu/pub/tex/bib/julia.bib",
  abstract =     "Reliable numerical computations are central to
                 scientific computing, but the floating-point arithmetic
                 that enables large-scale models is error-prone. Numeric
                 exceptions are a common occurrence and can propagate
                 through code, leading to flawed results. This paper
                 presents FlowFPX, a toolkit for systematically
                 debugging floating-point exceptions by recording their
                 flow, coalescing exception contexts, and fuzzing in
                 select locations. These tools help scientists discover
                 when exceptions happen and track down their origin,
                 smoothing the way to a reliable codebase.",
  acknowledgement = ack-nhfb,
  keywords =     "Julia programming language",
}

@Article{Axen:2023:MJE,
  author =       "Seth D. Axen and Mateusz Baran and Ronny Bergmann and
                 Krzysztof Rzecki",
  title =        "\pkg{Manifolds.jl}: an Extensible {Julia} Framework
                 for Data Analysis on Manifolds",
  journal =      j-TOMS,
  volume =       "49",
  number =       "4",
  pages =        "33:1--33:??",
  month =        dec,
  year =         "2023",
  CODEN =        "ACMSCU",
  DOI =          "https://doi.org/10.1145/3618296",
  ISSN =         "0098-3500 (print), 1557-7295 (electronic)",
  ISSN-L =       "0098-3500",
  bibdate =      "Sat Dec 23 05:40:24 MST 2023",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/julia.bib;
                 https://www.math.utah.edu/pub/tex/bib/toms.bib",
  URL =          "https://dl.acm.org/doi/10.1145/3618296",
  abstract =     "We present the Julia package Manifolds.jl, providing a
                 fast and easy-to-use library of Riemannian manifolds
                 and Lie groups. This package enables working with data
                 defined on a Riemannian manifold, such as the circle,
                 the sphere, symmetric positive definite matrices, or
                 one of the models for hyperbolic spaces. We introduce a
                 common interface, available in \pkg{ManifoldsBase.jl},
                 with which new manifolds, applications, and algorithms
                 can be implemented. We demonstrate the utility of
                 \pkg{Manifolds.jl} using B{\'e}zier splines, an
                 optimization task on manifolds, and principal component
                 analysis on nonlinear data. In a benchmark,
                 \pkg{Manifolds.jl} outperforms all comparable packages
                 for low-dimensional manifolds in speed; over Python and
                 Matlab packages, the improvement is often several
                 orders of magnitude, while over C/C++ packages, the
                 improvement is two-fold. For high-dimensional
                 manifolds, it outperforms all packages except for
                 Tensorflow-Riemopt, which is specifically tailored for
                 high-dimensional manifolds.",
  acknowledgement = ack-nhfb,
  ajournal =     "ACM Trans. Math. Softw.",
  articleno =    "33",
  fjournal =     "ACM Transactions on Mathematical Software (TOMS)",
  journal-URL =  "https://dl.acm.org/loi/toms",
}

@Article{Christ:2023:PJU,
  author =       "Simon Christ and Daniel Schwabeneder and Christopher
                 Rackauckas and Michael Krabbe Borregaard and Thomas
                 Breloff",
  title =        "\pkg{Plots.jl} --- a User Extendable Plotting {API}
                 for the {Julia} Programming Language",
  journal =      j-J-OPEN-RES-SOFT,
  volume =       "11",
  number =       "1",
  pages =        "??--??",
  month =        "????",
  year =         "2023",
  CODEN =        "????",
  DOI =          "https://doi.org/10.5334/jors.431",
  ISSN =         "2049-9647",
  ISSN-L =       "2049-9647",
  bibdate =      "Tue Jun 13 08:02:36 MDT 2023",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/jors.bib;
                 https://www.math.utah.edu/pub/tex/bib/julia.bib",
  URL =          "https://openresearchsoftware.metajnl.com/articles/10.5334/jors.431",
  acknowledgement = ack-nhfb,
  articleno =    "5",
  fjournal =     "Journal of Open Research Software",
  journal-URL =  "https://openresearchsoftware.metajnl.com/issue/archive/",
  onlinedate =   "14 Feb 2023",
}

@Book{Engheim:2023:HDJ,
  author =       "Erik Engheim",
  title =        "{Julia} as a Second Language: General Purpose
                 Programming with a Taste of Data Science",
  publisher =    "Manning Publications",
  address =      "Shelter Island, NY, USA",
  pages =        "xxvi + 372",
  year =         "2023",
  ISBN =         "1-61729-971-5 (paperback)",
  ISBN-13 =      "978-1-61729-971-1 (paperback)",
  LCCN =         "QA76.73.J85 .E544 2023",
  bibdate =      "Mon Dec 18 08:06:55 2023",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/julia.bib",
  acknowledgement = ack-nhfb,
  xxpages =      "xxvi + 414",
}

@Article{Eschle:2023:PJP,
  author =       "Jonas Eschle and Tam{\'a}s G{\'a}l and Mos{\`e}
                 Giordano and Philippe Gras and Benedikt Hegner and
                 Lukas Heinrich and Uwe {Hernandez Acosta} and Stefan
                 Kluth and Jerry Ling and Pere Mato and Mikhail
                 Mikhasenko and Alexander {Moreno Brice{\~n}o} and Jim
                 Pivarski and Konstantinos Samaras-Tsakiris and Oliver
                 Schulz and Graeme Andrew Stewart and Jan Strube and
                 Vassil Vassilev",
  title =        "Potential of the {Julia} Programming Language for High
                 Energy Physics Computing",
  journal =      j-COMPUT-SOFTW-BIG-SCI,
  volume =       "7",
  number =       "1",
  pages =        "??--??",
  month =        dec,
  year =         "2023",
  CODEN =        "????",
  DOI =          "https://doi.org/10.1007/s41781-023-00104-x",
  ISSN =         "2510-2036 (print), 2510-2044 (electronic)",
  ISSN-L =       "2510-2036",
  bibdate =      "Fri Oct 6 06:00:01 MDT 2023",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/computsoftwbigsci.bib;
                 https://www.math.utah.edu/pub/tex/bib/julia.bib",
  URL =          "https://link.springer.com/article/10.1007/s41781-023-00104-x",
  acknowledgement = ack-nhfb,
  ajournal =     "Comput. Softw. Big Sci.",
  articleno =    "10",
  fjournal =     "Computing and Software for Big Science",
  journal-URL =  "https://www.springer.com/journal/41781",
}

@InProceedings{Godoy:2023:EPP,
  author =       "William F. Godoy and Pedro Valero-Lara and T. Elise
                 Dettling and Christian Trefftz and Ian Jorquera and
                 Thomas Sheehy and Ross G. Miller and Marc
                 Gonzalez-Tallada and Jeffrey S. Vetter and Valentin
                 Churavy",
  editor =       "{IEEE}",
  booktitle =    "{2023 IEEE International Parallel and Distributed
                 Processing Symposium Workshops (IPDPSW)}",
  title =        "Evaluating performance and portability of high-level
                 programming models: {Julia}, {Python\slash Numba}, and
                 {Kokkos} on exascale nodes",
  publisher =    pub-IEEE,
  address =      pub-IEEE:adr,
  pages =        "373--382",
  year =         "2023",
  DOI =          "https://doi.org/10.1109/IPDPSW59300.2023.00068",
  bibdate =      "Mon Dec 18 08:06:55 2023",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/julia.bib;
                 https://www.math.utah.edu/pub/tex/bib/python.bib",
  acknowledgement = ack-nhfb,
}

@Book{Kaminski:2023:JDA,
  author =       "Bogumi{\l} Kami{\'n}ski",
  title =        "{Julia} for Data Analysis",
  publisher =    "Manning Publications",
  address =      "Shelter Island, NY, USA",
  pages =        "xxv + 443",
  year =         "2023",
  bibdate =      "Mon Dec 18 08:06:55 2023",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/julia.bib",
  acknowledgement = ack-nhfb,
  shorttableofcontents = "1. Introduction \\
                 Part 1: Essential Julia skills \\
                 2. Getting started with Julia \\
                 3. Julia's support for scaling projects \\
                 4. Working with collections in Julia \\
                 5. Advanced topics on handling collections \\
                 6. Working with strings \\
                 7. Handling time-series data and missing values \\
                 Part 2: Toolbox for data analysis \\
                 8. First steps with data frames \\
                 9. Getting data from a data frame \\
                 10. Creating data frame objects \\
                 11. Converting and grouping data frames \\
                 12. Mutating and transforming data frames \\
                 13. Advanced transformations of data frames \\
                 14. Creating web services for sharing data analysis
                 results",
  tableofcontents = "1: Introduction \\
                 1.1: What is Julia and why is it useful? \\
                 1.2: Key features of Julia from a data scientist's
                 perspective \\
                 Julia is fast because it is a compiled language \\
                 Julia provides full support for interactive workflows
                 \\
                 Julia programs are highly reusable and easy to compose
                 together \\
                 Julia has a built-in state-of-the-art package manager
                 \\
                 It is easy to integrate existing code with Julia \\
                 1.3: Usage scenarios of tools presented in the book \\
                 1.4: Julia's drawbacks \\
                 1.5: What data analysis skills will you learn? \\
                 1.6: How can Julia be used for data analysis? \\
                 pt. 1 : Getting started with Julia \\
                 2.1: Representing values \\
                 2.2: Defining variables \\
                 2.3: Using the most important control-flow constructs
                 \\
                 Computations depending on a Boolean condition \\
                 Loops \\
                 Compound expressions \\
                 first approach to calculating the winsorized mean \\
                 2.4: Defining functions \\
                 Defining functions using the function keyword \\
                 Positional and key word arguments of functions \\
                 Rules for passing arguments to functions \\
                 Short syntax for defining simple functions \\
                 Anonymous functions \\
                 Do blocks \\
                 Function-naming convention in Julia \\
                 simplified definition of a function computing the
                 winsorized mean \\
                 2.5: Understanding variable scoping rules \\
                 3: Julia's support for scaling projects \\
                 3.1: Understandingjulia's type system \\
                 single function in Julia may have multiple methods \\
                 Types in Julia are arranged in a hierarchy \\
                 Finding all supertypes of a type \\
                 Finding all subtypes of a type \\
                 Union of types \\
                 Deciding what type restrictions to put in method
                 signature \\
                 3.2: Using multiple dispatch in Julia \\
                 Rules for defining methods of a function \\
                 Method ambiguity problem \\
                 Improved implementation of winsorized mean \\
                 3.3: Working with packages and modules \\
                 What is a module in Julia? \\
                 How can packages be used in Julia? \\
                 Using Stats Base.jl to compute the winsorized mean \\
                 3.4: Using macros \\
                 4: Working with collections in Julia \\
                 4.1: Working with arrays \\
                 Getting the data into a matrix \\
                 Computing basic statistics of the data stored in a
                 matrix \\
                 Indexing into arrays \\
                 Performance considerations of copying vs. making a view
                 \\
                 Calculating correlations between variables \\
                 Fitting a linear regression \\
                 Plotting the Anscombe's quartet data \\
                 4.2: Mapping key-value pairs with dictionaries \\
                 4.3: Structuring your data by using named tuples \\
                 Defining named tuples and accessing their contents \\
                 Analyzing Anscombe's quartet data stored in a named
                 tuple \\
                 Understanding composite types and mutability of values
                 in Julia \\
                 Advanced topics on handling collections \\
                 5.1: Vectorizing your code using broadcasting \\
                 Understanding syntax and meaning of broadcasting in
                 Julia \\
                 Expanding length-1 dimensions in broadcasting \\
                 Protecting collections from being broadcasted over \\
                 Analyzing Anscombe's quartet data using broadcasting
                 \\
                 5.2: Defining methods with parametric types \\
                 Most collection types in Julia are parametric \\
                 Rules for sub typing of parametric types \\
                 Using sub typing rules to define the covariance
                 function \\
                 5.3: Integrating with Python \\
                 Preparing data for dimensionality reduction using t-SNE
                 \\
                 Calling Python from Julia \\
                 Visualizing the results of the t-SNE algorithm \\
                 6: Working with strings \\
                 6.1: Getting and inspecting the data \\
                 Downloading files from the web \\
                 Using common techniques of string construction \\
                 Reading the contents of a file \\
                 6.2: Splitting strings \\
                 6.3: Using regular expressions to work with strings \\
                 Working with regular expressions \\
                 Writing a parser of a single line of movies.dat file
                 \\
                 6.4: Extracting a subset from a string with indexing
                 \\
                 UTF-8 encoding of strings in Julia \\
                 Character vs. byte indexing of strings \\
                 ASCII strings \\
                 Char type \\
                 6.5: Analyzinggenrefrequencyinmovies.dat \\
                 Finding common movie genres \\
                 Understanding genre popularity evolution over the years
                 \\
                 6.6: Introducing symbols \\
                 Creating symbols \\
                 Using symbols \\
                 6.7: Using fixed-width string types to improve
                 performance \\
                 Available fixed-width strings \\
                 Performance of fixed-width strings \\
                 6.8: Compressing vectors of strings with
                 PooledArrays.jl \\
                 Creating a file containing flower names \\
                 Reading in the data to a vector and compressing it \\
                 Understanding the internal design of PooledArray \\
                 6.9: Choosing appropriate storage for collections of
                 strings \\
                 7: Handling time-series data and missing values \\
                 7.1: Understanding the NBP Web API \\
                 Getting the data via a web browser \\
                 Getting the data by using Julia \\
                 Handling cases when an NBP Web API query fails \\
                 7.2: Working with missing data in Julia \\
                 Definition of the missing value \\
                 Working with missing values \\
                 7.3: Getting time-series data from the NBP Web API \\
                 Working with dates \\
                 Fetching data from the NBP Web API for a range of dates
                 \\
                 7.4: Analyzing data fetched from the NBP Web API \\
                 Computing summary statistics \\
                 Finding which days of the week have the most missing
                 values \\
                 Plotting the PLN/USD exchange rate \\
                 pt. 2 : Toolbox for data analysis \\
                 8: First steps with data frames \\
                 8.1: Fetching, unpacking, and inspecting the data \\
                 Downloading the file from the web \\
                 Working with bzip2 archives \\
                 Inspecting the CSV file \\
                 8.2: Loading the data to a data frame \\
                 Reading a CSV file into a data frame \\
                 Inspecting the contents of a data frame \\
                 Saving a data frame to a CSV file \\
                 8.3: Getting a column out of a data frame \\
                 Understanding the data frame's storage model \\
                 Treating a data frame column as a property \\
                 Getting a column by using data frame indexing \\
                 Visualizing data stored in columns of a data frame \\
                 8.4: Reading and writing data frames using different
                 formats \\
                 Apache Arrow \\
                 SQLite \\
                 9: Getting data from a data frame \\
                 9.1: Advanced data frame indexing \\
                 Getting a reduced puzzles data frame \\
                 Overview of allowed column selectors \\
                 Overview of allowed row-subsetting values \\
                 Making views of data frame objects \\
                 9.2: Analyzing the relationship between puzzle
                 difficulty and popularity \\
                 Calculating mean puzzle popularity by its rating \\
                 Fitting LOESS regression \\
                 10: Creating data frame objects \\
                 10.1: Reviewing the most important ways to create a
                 data frame \\
                 Creating a data frame from a matrix \\
                 Creating a data frame from vectors \\
                 Creating a data frame using a Tables.jl interface \\
                 Plotting a correlation matrix of data stored in a data
                 frame \\
                 10.2: Creating data frames incrementally \\
                 Vertically concatenating data frames \\
                 Appending a table to a data frame \\
                 Adding a new row to an existing data frame \\
                 Storing simulation results in a data frame \\
                 11: Converting and grouping data frames \\
                 11.1: Converting a data frame to other value types \\
                 Conversion to a matrix \\
                 Conversion to a named tuple of vectors \\
                 Other common conversions \\
                 11.2: Grouping data frame objects \\
                 Preparing the source data frame \\
                 Grouping a data frame \\
                 Getting group keys of a grouped data frame \\
                 Indexing a grouped data frame with a single value \\
                 Comparing performance of indexing methods \\
                 Indexing a grouped data frame with multiple values \\
                 Iterating a grouped data frame \\
                 12: Mutating and transforming data frames \\
                 12.1: Getting and loading the GitHub developers data
                 set \\
                 Understanding graphs \\
                 Fetching GitHub developer data from the web \\
                 Implementing a function that extracts data from a ZIP
                 file \\
                 Reading the GitHub developer data into a data frame \\
                 12.2: Computing additional node features \\
                 Creating a SimpleGraph object \\
                 Computing features of nodes by using the Graphs.jl
                 package \\
                 Counting a node's web and machine learning neighbors
                 \\
                 12.3: Using the split-apply-combine approach to predict
                 the developer's type \\
                 Computing summary statistics of web and machine
                 learning developer features \\
                 Visualizing the relationship between the number of web
                 and machine learning neighbors of a node \\
                 Fitting a logistic regression model predicting
                 developer type \\
                 12.4: Reviewing data frame mutation operations \\
                 Performing low-level API operations \\
                 Using the insertcols! function to mutate a data frame
                 \\
                 13: Advanced transformations of data frames-- 13.1:
                 Getting and preprocessing the police stop data set \\
                 Loading all required packages \\
                 Introducing the and chain macro \\
                 Getting the police stop data set \\
                 Comparing functions that perform operations on columns
                 \\
                 Using short forms of operation specification syntax \\
                 13.2: Investigating the violation column \\
                 Finding the most frequent violations \\
                 Vectorizing functions by using the ByRow wrapper \\
                 Flattening data frames \\
                 Using convenience syntax to get the number of rows of a
                 data frame \\
                 Sorting data frames \\
                 Using advanced functionalities of Data Frames Meta.jl
                 \\
                 13.3: Preparing data for making predictions \\
                 Performing initial transformation of the data \\
                 Working with categorical data \\
                 Joining data frames \\
                 Reshaping data frames \\
                 Dropping rows of a data frame that hold missing values
                 \\
                 13.4: Building a predictive model of arrest probability
                 \\
                 Splitting the data into train and test data sets \\
                 Fitting a logistic regression model \\
                 Evaluating the quality of a model's predictions \\
                 13.5: Reviewing functionalities provided by
                 DataFrames.jl \\
                 Creating web services for sharing data analysis results
                 \\
                 14.1: Pricing financial options by using a Monte Carlo
                 simulation \\
                 Calculating the payoff of an Asian option definition:
                 Computing the value of an Asian option \\
                 Understanding GBM \\
                 Using a numerical approach to computing the Asian
                 option value \\
                 14.2: Implementing the option pricing simulator \\
                 Starting Julia with multiple-thread support \\
                 Computing the option payoff for a single sample of
                 stock prices \\
                 Computing the option value \\
                 14.3: Creating a web service serving the Asian option
                 valuation \\
                 general approach to building a web service \\
                 Creating a web service using Genie.jl \\
                 Running the web service \\
                 14.4: Using the Asian option pricing web service \\
                 Sending a single request to the web service \\
                 Collecting responses to multiple requests from a web
                 service in a data frame \\
                 Unnesting a column of a data frame \\
                 Plotting the results of Asian option pricing",
}

@Article{Kastner:2023:AAA,
  author =       "Felix Kastner and Andreas R{\"o}{\ss}ler",
  title =        "An analysis of approximation algorithms for iterated
                 stochastic integrals and a {Julia} and {Matlab}
                 simulation toolbox",
  journal =      j-NUMER-ALGORITHMS,
  volume =       "93",
  number =       "1",
  pages =        "27--66",
  month =        may,
  year =         "2023",
  CODEN =        "NUALEG",
  DOI =          "https://doi.org/10.1007/s11075-022-01401-z",
  ISSN =         "1017-1398 (print), 1572-9265 (electronic)",
  ISSN-L =       "1017-1398",
  bibdate =      "Fri Apr 7 11:34:40 MDT 2023",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/julia.bib;
                 https://www.math.utah.edu/pub/tex/bib/matlab.bib;
                 https://www.math.utah.edu/pub/tex/bib/numeralgorithms.bib",
  URL =          "https://link.springer.com/article/10.1007/s11075-022-01401-z",
  acknowledgement = ack-nhfb,
  ajournal =     "Numer. Algorithms",
  fjournal =     "Numerical Algorithms",
  journal-URL =  "http://link.springer.com/journal/11075",
}

@Article{Ketcheson:2023:CBS,
  author =       "David I. Ketcheson and Hendrik Ranocha",
  title =        "Computing with {B}-series",
  journal =      j-TOMS,
  volume =       "49",
  number =       "2",
  pages =        "13:1--13:??",
  month =        jun,
  year =         "2023",
  CODEN =        "ACMSCU",
  DOI =          "https://doi.org/10.1145/3573384",
  ISSN =         "0098-3500 (print), 1557-7295 (electronic)",
  ISSN-L =       "0098-3500",
  bibdate =      "Thu Jun 29 07:01:00 MDT 2023",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/julia.bib;
                 https://www.math.utah.edu/pub/tex/bib/toms.bib",
  URL =          "https://dl.acm.org/doi/10.1145/3573384",
  abstract =     "We present BSeries.jl, a Julia package for the
                 computation and manipulation of B-series, which are a
                 versatile theoretical tool for understanding and
                 designing discretizations of differential equations. We
                 give a short introduction to the theory of B-series and
                 associated concepts and provide examples of their use,
                 including method composition and backward error
                 analysis. The associated software is highly performant
                 and makes it possible to work with B-series of high
                 order.",
  acknowledgement = ack-nhfb,
  articleno =    "13",
  fjournal =     "ACM Transactions on Mathematical Software (TOMS)",
  journal-URL =  "https://dl.acm.org/loi/toms",
}

@Article{Knopp:2023:NJG,
  author =       "Tobias Knopp and Marija Boberg and Mirco Grosser",
  title =        "{NFFT.jl}: Generic and Fast {Julia} Implementation of
                 the {Nonequidistant Fast Fourier Transform}",
  journal =      j-SIAM-J-SCI-COMP,
  volume =       "45",
  number =       "3",
  pages =        "??--??",
  month =        "????",
  year =         "2023",
  CODEN =        "SJOCE3",
  DOI =          "https://doi.org/10.1137/22M1510935",
  ISSN =         "1064-8275 (print), 1095-7197 (electronic)",
  ISSN-L =       "1064-8275",
  bibdate =      "Fri Sep 29 09:53:26 MDT 2023",
  bibsource =    "http://epubs.siam.org/toc/sjoce3/45,/3;
                 https://www.math.utah.edu/pub/tex/bib/julia.bib;
                 https://www.math.utah.edu/pub/tex/bib/siamjscicomput.bib",
  URL =          "https://epubs.siam.org/doi//doi/10.1137/22M1510935",
  acknowledgement = ack-nhfb,
  fjournal =     "SIAM Journal on Scientific Computing",
  journal-URL =  "http://epubs.siam.org/sisc",
}

@Article{Rahman:2023:ECS,
  author =       "Akond Rahman and Dibyendu Brinto Bose and Raunak
                 Shakya and Rahul Pandita",
  title =        "{{\em Come for syntax, stay for speed, understand
                 defects\/}}: an empirical study of defects in {Julia}
                 programs",
  journal =      j-EMPIR-SOFTWARE-ENG,
  volume =       "28",
  number =       "4",
  pages =        "??--??",
  month =        jul,
  year =         "2023",
  CODEN =        "ESENFW",
  DOI =          "https://doi.org/10.1007/s10664-023-10328-5",
  ISSN =         "1382-3256 (print), 1573-7616 (electronic)",
  ISSN-L =       "1382-3256",
  bibdate =      "Thu Aug 10 15:49:41 MDT 2023",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/empir-software-eng.bib;
                 https://www.math.utah.edu/pub/tex/bib/julia.bib",
  URL =          "https://link.springer.com/article/10.1007/s10664-023-10328-5",
  acknowledgement = ack-nhfb,
  ajournal =     "Empir. Software. Eng.",
  articleno =    "93",
  fjournal =     "Empirical Software Engineering",
  journal-URL =  "http://link.springer.com/journal/10664",
}

@InProceedings{Rossini:2023:FJO,
  author =       "Matteo Rossini and Hakan Ergun and Marco Rossi",
  editor =       "{IEEE}",
  booktitle =    "{2023 Open Source Modelling and Simulation of Energy
                 Systems (OSMSES)}",
  title =        "{FlexPlan.jl} --- an open-source {Julia} tool for
                 holistic transmission and distribution grid planning",
  publisher =    pub-IEEE,
  address =      pub-IEEE:adr,
  pages =        "1--8",
  year =         "2023",
  DOI =          "https://doi.org/10.1109/OSMSES58477.2023.10089624",
  bibdate =      "Mon Dec 18 08:06:55 2023",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/julia.bib",
  acknowledgement = ack-nhfb,
}

@Article{Steinebach:2023:CRW,
  author =       "Gerd Steinebach",
  title =        "Construction of {Rosenbrock--Wanner} method {Rodas5P}
                 and numerical benchmarks within the {Julia Differential
                 Equations} package",
  journal =      j-BIT-NUM-MATH,
  volume =       "63",
  number =       "2",
  pages =        "??--??",
  month =        jun,
  year =         "2023",
  CODEN =        "BITTEL, NBITAB",
  DOI =          "https://doi.org/10.1007/s10543-023-00967-x",
  ISSN =         "0006-3835 (print), 1572-9125 (electronic)",
  ISSN-L =       "0006-3835",
  bibdate =      "Thu Aug 10 14:23:15 MDT 2023",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/bit.bib;
                 https://www.math.utah.edu/pub/tex/bib/julia.bib",
  URL =          "https://link.springer.com/article/10.1007/s10543-023-00967-x",
  acknowledgement = ack-nhfb,
  ajournal =     "Bit Num. Math.",
  articleno =    "27",
  fjournal =     "BIT Numerical Mathematics",
  journal-URL =  "http://link.springer.com/journal/10543",
}

@InProceedings{Varga:2023:PPO,
  author =       "Matija Varga and Nikola Turk and Dominik {Cika } and
                 Neven {Buli }",
  editor =       "{IEEE}",
  booktitle =    "{2023 4th International Conference on Smart Grid
                 Metrology (SMAGRIMET)}",
  title =        "Pulse Pattern Optimization for Medium Voltage 3-Level
                 {NPC} Converter Using Open Source Optimization Tools in
                 {Julia}",
  publisher =    pub-IEEE,
  address =      pub-IEEE:adr,
  pages =        "1--4",
  year =         "2023",
  DOI =          "https://doi.org/10.1109/SMAGRIMET58412.2023.10128661",
  bibdate =      "Mon Dec 18 08:06:55 2023",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/julia.bib",
  acknowledgement = ack-nhfb,
}

@InProceedings{Zhu:2023:SEI,
  author =       "Hao Zhu and Baojian Hua",
  editor =       "{IEEE}",
  booktitle =    "{2023 4th International Conference on Big Data &
                 Artificial Intelligence & Software Engineering
                 (ICBASE)}",
  title =        "{SAFEJ}: an Efficient Infrastructure for Securing
                 {Julia} Programs",
  publisher =    pub-IEEE,
  address =      pub-IEEE:adr,
  pages =        "221--224",
  year =         "2023",
  DOI =          "https://doi.org/10.1109/ICBASE59196.2023.10303098",
  bibdate =      "Mon Dec 18 08:06:55 2023",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/julia.bib",
  acknowledgement = ack-nhfb,
}

@Article{Bagci:2024:BDM,
  author =       "A. Bagci and Gustavo A. Aucar",
  title =        "A bi-directional method for evaluating integrals
                 involving higher transcendental functions. {HyperRAF}:
                 a {Julia} package for new hyper-radial functions",
  journal =      j-COMP-PHYS-COMM,
  volume =       "295",
  number =       "??",
  pages =        "Article 108990",
  month =        feb,
  year =         "2024",
  CODEN =        "CPHCBZ",
  DOI =          "https://doi.org/10.1016/j.cpc.2023.108990",
  ISSN =         "0010-4655 (print), 1879-2944 (electronic)",
  ISSN-L =       "0010-4655",
  bibdate =      "Thu Dec 21 14:15:33 MST 2023",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/compphyscomm2020.bib;
                 https://www.math.utah.edu/pub/tex/bib/julia.bib",
  URL =          "http://www.sciencedirect.com/science/article/pii/S0010465523003351",
  acknowledgement = ack-nhfb,
  fjournal =     "Computer Physics Communications",
  journal-URL =  "http://www.sciencedirect.com/science/journal/00104655",
}

%%% ====================================================================
%%% Cross-referenced entries must come last.  They are sorted by year
%%% and by citation label with ``bibsort -byyear'':
@Proceedings{Bigatti:2020:MSI,
  editor =       "Anna Maria Bigatti and Jacques Carette and James H.
                 Davenport and Michael Joswig and Timo de Wolff",
  booktitle =    "Mathematical Software --- {ICMS 2020: 7th
                 International Conference, Braunschweig, Germany, July
                 13--16, 2020, Proceedings}",
  title =        "Mathematical Software --- {ICMS 2020: 7th
                 International Conference, Braunschweig, Germany, July
                 13--16, 2020, Proceedings}",
  publisher =    pub-SV,
  address =      pub-SV:adr,
  pages =        "xxiii + 494",
  year =         "2020",
  DOI =          "https://doi.org/10.1007/978-3-030-52200-1",
  bibdate =      "Sat Sep 23 06:50:01 2023",
  bibsource =    "https://www.math.utah.edu/pub/tex/bib/elefunt.bib;
                 https://www.math.utah.edu/pub/tex/bib/julia.bib;
                 https://www.math.utah.edu/pub/tex/bib/macaulay2.bib;
                 https://www.math.utah.edu/pub/tex/bib/matlab.bib;
                 https://www.math.utah.edu/pub/tex/bib/python.bib;
                 https://www.math.utah.edu/pub/tex/bib/texbook3.bib",
  acknowledgement = ack-nhfb,
  tableofcontents = "Front Matter / / i--xxiii \\
                 Gr{\"o}bner Bases in Theory and Practice \\
                 Front Matter / / 1--1 A Design and an Implementation of
                 an Inverse Kinematics Computation in Robotics Using
                 Gr{\"o}bner Bases / Noriyuki Horigome, Akira Terui,
                 Masahiko Mikawa / 3--13 \\
                 Real Algebraic Geometry \\
                 Front Matter / / 15--15 \\
                 Curtains in CAD: Why Are They a Problem and How Do We
                 Fix Them? / Akshar Nair, James Davenport, Gregory
                 Sankaran / 17--26 \\
                 Chordality Preserving Incremental Triangular
                 Decomposition and Its Implementation / Changbo Chen /
                 27--36 \\
                 Algebraic Geometry via Numerical Computation \\
                 Front Matter / / 37--37 \\
                 $\mathbb{Q}(\sqrt{-3})$-Integral Points on a Mordell
                 Curve / Francesca Bianchi / 39--50 \\
                 A Numerical Approach for Computing Euler
                 Characteristics of Affine Varieties / Xiaxin Li, Jose
                 Israel Rodriguez, Botong Wang / 51--60 \\
                 Evaluating and Differentiating a Polynomial Using a
                 Pseudo-witness Set / Jonathan D. Hauenstein, Margaret
                 H. Regan / 61--69 \\
                 Computational Algebraic Analysis \\
                 Front Matter / / 71--71 \\
                 Algorithms for Pfaffian Systems and Cohomology
                 Intersection Numbers of Hypergeometric Integrals /
                 Saiei-Jaeyeong Matsubara-Heo, Nobuki Takayama / 73--84
                 \\
                 Software for Number Theory and Arithmetic Geometry \\
                 Front Matter / / 85--85 \\
                 Computations with Algebraic Surfaces / Andreas-Stephan
                 Elsenhans, J{\"o}rg Jahnel / 87--93 \\
                 Evaluating Fractional Derivatives of the Riemann Zeta
                 Function / Ricky E. Farr, Sebastian Pauli, Filip Saidak
                 / 94--101 \\
                 Groups and Group Actions \\
                 Front Matter / / 103--103 \\
                 Towards Efficient Normalizers of Primitive Groups /
                 Sergio Siccha / 105--114 \\
                 Homomorphic Encryption and Some Black Box Attacks /
                 Alexandre Borovik, {\c{S}}{\"u}kr{\"u}
                 Yal{\c{c}}{\i}nkaya / 115--124 \\
                 Nilpotent Quotients of Associative
                 $\mathbb{Z}$-Algebras and Augmentation Quotients of
                 Baumslag--Solitar Groups / Tobias Moede / 125--130 \\
                 The GAP Package LiePRing / Bettina Eick, Michael
                 Vaughan-Lee / 131--140 \\
                 The Classification Problem in Geometry \\
                 Front Matter / / 141--141 \\
                 Classifying Simplicial Dissections of Convex Polyhedra
                 with Symmetry / Anton Betten, Tarun Mukthineni /
                 143--152 \\
                 Classification Results for Hyperovals of Generalized
                 Quadrangles / Bart De Bruyn / 153--161 \\
                 Isomorphism and Invariants of Parallelisms of
                 Projective Spaces / Svetlana Topalova, Stela Zhelezova
                 / 162--172 \\
                 Classification of Linear Codes by Extending Their
                 Residuals / Stefka Bouyuklieva, Iliya Bouyukliev /
                 173--180 \\
                 The Program Generation in the Software Package
                 QextNewEdition / Iliya Bouyukliev / 181--189 \\
                 Polyhedral Methods in Geometry and Optimization \\
                 Front Matter / / 191--191 \\
                 Algebraic Polytopes in Normaliz / Winfried Bruns /
                 193--201 \\
                 Real Tropical Hyperfaces by Patchworking in polymake /
                 Michael Joswig, Paul Vater / 202--211 \\
                 Practical Volume Estimation of Zonotopes by a New
                 Annealing Schedule for Cooling Convex Bodies /
                 Apostolos Chalkis, Ioannis Z. Emiris, Vissarion
                 Fisikopoulos / 212--221 \\
                 Slack Ideals in Macaulay2 / Antonio Macchia, Amy Wiebe
                 / 222--231 \\
                 Hyperplane Arrangements in polymake / Lars Kastner,
                 Marta Panizzut / 232--240 \\
                 A Convex Programming Approach to Solve Posynomial
                 Systems / Marianne Akian, Xavier Allamigeon, Marin
                 Boyet, St{\'e}phane Gaubert / 241--250 \\
                 Univalent Mathematics: Theory and Implementation \\
                 Front Matter / / 251--251 \\
                 Equality Checking for General Type Theories in
                 Andromeda 2 / Andrej Bauer, Philipp G. Haselwarter,
                 Anja Petkovi / 253--259 \\
                 Artificial Intelligence and Mathematical Software \\
                 Front Matter / / 261--261 \\
                 GeoLogic --- Graphical Interactive Theorem Prover for
                 Euclidean Geometry / Miroslav Ol{\v{s}}{\'a}k /
                 263--271 \\
                 A Formalization of Properties of Continuous Functions
                 on Closed Intervals / Yaoshun Fu, Wensheng Yu /
                 272--280 \\
                 Variable Ordering Selection for Cylindrical Algebraic
                 Decomposition with Artificial Neural Networks / Changbo
                 Chen, Zhangpeng Zhu, Haoyu Chi / 281--291 \\
                 Applying Machine Learning to Heuristics for Real
                 Polynomial Constraint Solving / Christopher W. Brown,
                 Glenn Christopher Daves / 292--301 \\
                 A Machine Learning Based Software Pipeline to Pick the
                 Variable Ordering for Algorithms with Polynomial Inputs
                 / Dorian Florescu, Matthew England / 302--311 \\
                 Databases in Mathematics \\
                 Front Matter / / 313--313 \\
                 FunGrim: A Symbolic Library for Special Functions /
                 Fredrik Johansson / 315--323 \\
                 Accelerating Innovation Speed in Mathematics by Trading
                 Mathematical Research Data \\
                 Front Matter / / 325--325 \\
                 Operational Research Literature as a Use Case for the
                 Open Research Knowledge Graph / Mila Runnwerth, Markus
                 Stocker, S{\"o}ren Auer / 327--334 \\
                 Making Presentation Math Computable: Proposing a
                 Context Sensitive Approach for Translating {\LaTeX} to
                 Computer Algebra Systems / Andr{\'e} Greiner-Petter,
                 Moritz Schubotz, Akiko Aizawa, Bela Gipp / 335--341 \\
                 Employing C++ Templates in the Design of a Computer
                 Algebra Library / Alexander Brandt, Robert H. C. Moir,
                 Marc Moreno Maza / 342--352 \\
                 Mathematical World Knowledge Contained in the
                 Multilingual Wikipedia Project / Dennis Tobias Halbach
                 / 353--361 \\
                 Archiving and Referencing Source Code with Software
                 Heritage / Roberto Di Cosmo / 362--373 \\
                 The Jupyter Environment for Computational Mathematics
                 \\
                 Front Matter / / 375--375 \\
                 Polymake.jl: A New Interface to polymake / Marek
                 Kaluba, Benjamin Lorenz, Sascha Timme / 377--385 \\
                 Web Based Notebooks for Teaching, an Experience at
                 Universidad de Zaragoza / Miguel Angel Marco Buzunariz
                 / 386--392 \\
                 Phase Portraits of Bi-dimensional Zeta Values / Olivier
                 Bouillot / 393--405 \\
                 Prototyping Controlled Mathematical Languages in
                 Jupyter Notebooks / Jan Frederik Schaefer, Kai Amann,
                 Michael Kohlhase / 406--415 \\
                 General Session \\
                 Front Matter / / 417--417 \\
                 Method to Create Multiple Choice Exercises for Computer
                 Algebra System / Tatsuyoshi Hamada, Yoshiyuki Nakagawa,
                 Makoto Tamura / 419--425 \\
                 A Flow-Based Programming Environment for Geometrical
                 Construction / Kento Nakamura, Kazushi Ahara / 426--431
                 \\
                 MORLAB --- A Model Order Reduction Framework in MATLAB
                 and Octave / Peter Benner, Steffen W. R. Werner /
                 432--441 \\
                 FlexRiLoG --- A SageMath Package for Motions of Graphs
                 / Georg Grasegger, Jan Legersk{\'y} / 442--450 \\
                 Markov Transition Matrix Analysis of Mathematical
                 Expression Input Models / Francis Quinby, Seyeon Kim,
                 Sohee Kang, Marco Pollanen, Michael G. Reynolds, Wesley
                 S. Burr / 451--461 \\
                 Certifying Irreducibility in $\mathbb{Z}[ ]$ / John
                 Abbott / 462--472 \\
                 A Content Dictionary for In-Object Comments / Lars
                 Hellstr{\"o}m / 473--481 \\
                 Implementing the Tangent Graeffe Root Finding Method /
                 Joris van der Hoeven, Michael Monagan / 482--492 \\
                 Back Matter / / 493--494",
}

@Proceedings{Krzhizhanovskaya:2020:CSI,
  editor =       "Valeria V. Krzhizhanovskaya and G{\'a}bor
                 Z{\'a}vodszky and Michael H. Lees and Jack J. Dongarra
                 and Peter M. A. Sloot and S{\'e}rgio Brissos and
                 Jo{\~a}o Teixeira",
  booktitle =    "{Computational Science --- ICCS 2020 20th
                 International Conference, Amsterdam, The Netherlands,
                 June 3--5, 2020, Proceedings, Part II}",
  title =        "{Computational Science --- ICCS 2020 20th
                 International Conference, Amsterdam, The Netherlands,
                 June 3--5, 2020, Proceedings, Part II}",
  volume =       "12138",
  publisher =    pub-SV,
  address =      pub-SV:adr,
  pages =        "xix + 697",
  year =         "2020",
  DOI =          "https://doi.org/10.1007/978-3-030-50417-5",
  ISBN =         "3-030-50416-6, 3-030-50417-4 (e-book)",
  ISBN-13 =      "978-3-030-50416-8, 978-3-030-50417-5 (e-book)",
  ISSN =         "0302-9743 (print), 1611-3349 (electronic)",
  bibdate =      "Thu Jun 25 08:21:10 2020",
  bibsource =    "https://www.math.utah.edu/pub/bibnet/authors/d/dongarra-jack-j.bib;
                 https://www.math.utah.edu/pub/tex/bib/fparith.bib;
                 https://www.math.utah.edu/pub/tex/bib/julia.bib;
                 https://www.math.utah.edu/pub/tex/bib/matlab.bib;
                 https://www.math.utah.edu/pub/tex/bib/prng.bib",
  series =       ser-LNCS,
  URL =          "https://link.springer.com/book/10.1007/978-3-030-50417-5",
  acknowledgement = ack-nhfb,
  tableofcontents = "Front Matter / / i--xix \\
                 Modified Binary Tree in the Fast PIES for 2D Problems
                 with Complex Shapes / Andrzej Ku{\.z}elewski, Eugeniusz
                 Zieniuk, Agnieszka Bo{\l}tu{\'c}, Krzystof Szersze{\'n}
                 / 1--14 \\
                 Generating Random Floating--Point Numbers by Dividing
                 Integers: A Case Study / Fr{\'e}d{\'e}ric Goualard /
                 15--28 \\
                 An Effective Stable Numerical Method for Integrating
                 Highly Oscillating Functions with a Linear Phase /
                 Leonid A. Sevastianov, Konstantin P. Lovetskiy, Dmitry
                 S. Kulyabov / 29--43 \\
                 Fitting Penalized Logistic Regression Models Using QR
                 Factorization / Jacek Klimaszewski, Marcin Korze{\'n} /
                 44--57 \\
                 Uncertainty Quantification in Fractional Stochastic
                 Integro--Differential Equations Using Legendre Wavelet
                 Collocation Method / Abhishek Kumar Singh, Mani Mehra /
                 58--71 \\
                 A Direct High--Order Curvilinear Triangular Mesh
                 Generation Method Using an Advancing Front Technique /
                 Fariba Mohammadi, Shusil Dangi, Suzanne M. Shontz,
                 Cristian A. Linte / 72--85 \\
                 Data--Driven Partial Differential Equations Discovery
                 Approach for the Noised Multi--dimensional Data /
                 Mikhail Maslyaev, Alexander Hvatov, Anna Kalyuzhnaya /
                 86--100 \\
                 Preconditioning Jacobian Systems by Superimposing
                 Diagonal Blocks / M. Ali Rostami, H. Martin B{\"u}cker
                 / 101--115 \\
                 NURBS Curves in Parametric Integral Equations System
                 for Modeling and Solving Boundary Value Problems in
                 Elasticity / Marta Kapturczak, Eugeniusz Zieniuk,
                 Andrzej Ku{\.z}elewski / 116--123 \\
                 Parameterizations and Lagrange Cubics for Fitting
                 Multidimensional Data / Ryszard Kozera, Lyle Noakes,
                 Magdalena Wilko{\l}azka / 124--140 \\
                 Loop Aggregation for Approximate Scientific Computing /
                 June Sallou, Alexandre Gauvain, Johann Bourcier, Benoit
                 Combemale, Jean--Raynald de Dreuzy / 141--155 \\
                 Numerical Computation for a Flow Caused by a
                 High--Speed Traveling Train and a Stationary Overpass /
                 Shotaro Hamato, Masashi Yamakawa, Yongmann M. Chung,
                 Shinichi Asao / 156--169 \\
                 B{\'e}zier Surfaces for Modeling Inclusions in PIES /
                 Agnieszka Bo{\l}tu{\'c}, Eugeniusz Zieniuk, Krzysztof
                 Szersze{\'n}, Andrzej Ku{\.z}elewski / 170--183 \\
                 Impact of Water on Methane Adsorption in Nanopores: A
                 Hybrid GCMC--MD Simulation Study / Ji Zhou, Wenbin
                 Jiang, Mian Lin, Lili Ji, Gaohui Cao / 184--196 \\
                 A Stable Discontinuous Galerkin Based Isogeometric
                 Residual Minimization for the Stokes Problem / Marcin
                 {\L}o{\'s}, Sergio Rojas, Maciej Paszy{\'n}ski, Ignacio
                 Muga, Victor M. Calo / 197--211 \\
                 Numerical Modeling of the Two--Phase Flow of Water with
                 Ice in the Tom River / Vladislava Churuksaeva,
                 Alexander Starchenko / 212--224 \\
                 Remarks on Kaczmarz Algorithm for Solving Consistent
                 and Inconsistent System of Linear Equations / Xinyin
                 Huang, Gang Liu, Qiang Niu / 225--236 \\
                 Investigating the Benefit of FP16--Enabled
                 Mixed--Precision Solvers for Symmetric Positive
                 Definite Matrices Using GPUs / Ahmad Abdelfattah, Stan
                 Tomov, Jack Dongarra / 237--250 \\
                 Simulation Versus an Ordered Fuzzy--Numbers--Driven
                 Approach to the Multi--depot Vehicle Cyclic Routing and
                 Scheduling Problem / Grzegorz Bocewicz, Zbigniew
                 Banaszak, Czeslaw Smutnicki, Katarzyna Rudnik, Marcin
                 Witczak, Robert W{\'o}jcik / 251--266 \\
                 Epigenetic Modification of Genetic Algorithm / Kornel
                 Chrominski, Magdalena Tkacz, Mariusz Boryczka /
                 267--278 \\
                 ITP--KNN: Encrypted Video Flow Identification Based on
                 the Intermittent Traffic Pattern of Video and
                 $K$-Nearest Neighbors Classification / Youting Liu, Shu
                 Li, Chengwei Zhang, Chao Zheng, Yong Sun, Qingyun Liu /
                 279--293 \\
                 DeepAD: A Joint Embedding Approach for Anomaly
                 Detection on Attributed Networks / Dali Zhu, Yuchen Ma,
                 Yinlong Liu / 294--307 \\
                 SciNER: Extracting Named Entities from Scientific
                 Literature / Zhi Hong, Roselyne Tchoua, Kyle Chard, Ian
                 Foster / 308--321 \\
                 GPU--Embedding of kNN--Graph Representing Large and
                 High--Dimensional Data / Bartosz Minch, Mateusz Nowak,
                 Rafa{\l} Wcis{\l}o, Witold Dzwinel / 322--336 \\
                 Evolving Long Short--Term Memory Networks / Vicente
                 Coelho Lobo Neto, Leandro Aparecido Passos, Jo{\~a}o
                 Paulo Papa / 337--350 \\
                 Personality Recognition from Source Code Based on
                 Lexical, Syntactic and Semantic Features / Miko{\l}aj
                 Biel, Marcin Kuta, Jacek Kitowski / 351--363 \\
                 Data Fitting by Exponential Sums with Equal Weights /
                 Petr Chunaev, Ildar Safiullin / 364--371 \\
                 A Combination of Moment Descriptors, Fourier Transform
                 and Matching Measures for Action Recognition Based on
                 Shape / Katarzyna Go{\'s}ciewska, Dariusz Frejlichowski
                 / 372--386 \\
                 Improving Accuracy and Speeding Up Document Image
                 Classification Through Parallel Systems / Javier
                 Ferrando, Juan Luis Dom{\'\i}nguez, Jordi Torres,
                 Ra{\'u}l Garc{\'\i}a, David Garc{\'\i}a, Daniel Garrido
                 et al. / 387--400 \\
                 Computation of the Airborne Contaminant Transport in
                 Urban Area by the Artificial Neural Network / Anna
                 Wawrzynczak, Monika Berendt--Marchel / 401--413 \\
                 Exploring Musical Structure Using Tonnetz Lattice
                 Geometry and LSTMs / Manuchehr Aminian, Eric Kehoe,
                 Xiaofeng Ma, Amy Peterson, Michael Kirby / 414--424 \\
                 Modeling of Anti--tracking Network Based on
                 Convex--Polytope Topology / Changbo Tian, Yongzheng
                 Zhang, Tao Yin / 425--438 \\
                 A Workload Division Differential Privacy Algorithm to
                 Improve the Accuracy for Linear Computations / Jun Li,
                 Huan Ma, Guangjun Wu, Yanqin Zhang, Bingnan Ma, Zhen
                 Hui et al. / 439--452 \\
                 On the Automated Assessment of Open--Source Cyber
                 Threat Intelligence Sources / Andrea Tundis, Samuel
                 Ruppert, Max M{\"u}hlh{\"a}user / 453--467 \\
                 Malicious Domain Detection Based on K--means and SMOTE
                 / Qing Wang, Linyu Li, Bo Jiang, Zhigang Lu, Junrong
                 Liu, Shijie Jian / 468--481 \\
                 Microservice Disaster Crash Recovery: A Weak Global
                 Referential Integrity Management / Maude Manouvrier,
                 Cesare Pautasso, Marta Rukoz / 482--495 \\
                 Hashing Based Prediction for Large--Scale Kernel
                 Machine / Lijing Lu, Rong Yin, Yong Liu, Weiping Wang /
                 496--509 \\
                 Picking Peaches or Squeezing Lemons: Selecting
                 Crowdsourcing Workers for Reducing Cost of Redundancy /
                 Paulina Adamska, Marta Ju{\'z}win, Adam Wierzbicki /
                 510--523 \\
                 Are $n$-gram Categories Helpful in Text Classification?
                 / Jakub Kruczek, Paulina Kruczek, Marcin Kuta /
                 524--537 \\
                 Calculating Reactive Power Compensation for
                 Large--Scale Street Lighting / Sebastian Ernst, Leszek
                 Kotulski, Tomasz Lerch, Micha{\l} Rad, Adam
                 S{\k{e}}dziwy, Igor Wojnicki / 538--550 \\
                 Developing a Decision Support App for Computational
                 Agriculture / Andrew Lewis, Marcus Randall, Ben
                 Stewart--Koster / 551--561 \\
                 Optimal Location of Sensors for Early Detection of
                 Tsunami Waves / Angelie R. Ferrolino, Jose Ernie C.
                 Lope, Renier G. Mendoza / 562--575 \\
                 A Novel Formulation for Inverse Distance Weighting from
                 Weighted Linear Regression / Leonardo Ramos
                 Emmendorfer, Gra{\c{c}}aliz Pereira Dimuro / 576--589
                 \\
                 Addressing the Robustness of Resource Allocation in the
                 Presence of Application and System Irregularities via
                 PEPA Based Modeling / Srishti Srivastava, Ioana
                 Banicescu, William S. Sanders / 590--603 \\
                 An Adaptive Computational Network Model for Strange
                 Loops in Political Evolution in Society / Julia Anten,
                 Jordan Earle, Jan Treur / 604--617 \\
                 Joint Entity Linking for Web Tables with Hybrid
                 Semantic Matching / Jie Xie, Yuhai Lu, Cong Cao,
                 Zhenzhen Li, Yangyang Guan, Yanbing Liu / 618--631 \\
                 A New Coefficient of Rankings Similarity in
                 Decision--Making Problems / Wojciech Sa abun, Karol
                 Urbaniak / 632--645 \\
                 Innovativeness Analysis of Scholarly Publications by
                 Age Prediction Using Ordinal Regression / Pavel Savov,
                 Adam Jatowt, Radoslaw Nielek / 646--660 \\
                 Advantage of Using Spherical over Cartesian Coordinates
                 in the Chromosome Territories 3D Modeling / Magdalena
                 A. Tkacz, Kornel Chromi{\'n}ski / 661--673 \\
                 Adaptive and Efficient Transfer for Online Remote
                 Visualization of Critical Weather Applications / Preeti
                 Malakar, Vijay Natarajan, Sathish S. Vadhiyar /
                 674--693 \\
                 Back Matter / / 695--697",
}