ANN Julia Quick Syntax Reference (Apress, Nov 2019)

Hello… still hot from the press… “Julia Quick Syntax Reference” (November 2019, Apress).

This book is in reality a largely updated, expanded and revised (not least, in the language, thanks to a professional copy-editor…) version of my “Julia Concise Tutorial”.

What’s particular of it ?
I would say that it’s very practical for beginners. It covers many different aspects of the language (…it’s still “concise” :wink: ) and of the main packages, while speaking to a public that is not necessarily those of this forum… (I would say a bit of “widening” the community more than “deepening” it).
And it is updated. The latest versions of DataFrames, JuMP and JuliaInterpreter/Juno debugging are all treated. The code has been tested with v1.3-rc4. The only really missing thing is the new Thread API.

This is the list of the chapters with the main packages discussed (unfortunately I couldn’t convince the editor to release the book open source (…it would change little for me, but I can understand them…). A more detailed table of content is available here together with an introduction.

Ch01 - Getting started

Ch02 - Data types and structures

Ch03 - Control flow and functions

Ch04 - Custom types

Ch05 - Input/Output

  • CSV.jl v0.5.11
  • HTTP.jl v0.8.4
  • XLSX.jl v0.5.4
  • JSON2.jl v0.3.1

Ch06 - Metaprogramming and macro

Ch07 - Interfacing Julia with other languages

  • Cxx.jl v0.3.2
  • PyCall.jl v1.91.2
  • PyJulia v0.4.1
  • RCall.jl v0.13.3
  • JuliaCall v0.16.5

Ch08 - Effectively write efficient code

  • BenchmarkTools.jl v0.4.2
  • ProfileView.jl v0.4.1
  • JuliaInterpreter.jl v0.6.1
  • Juno v0.9.1 (Atom.jl) / v0.9.4 (atom-julia-client)

Ch09 - Working with data

  • DataFrames.jl v0.19.2
  • DataFramesMeta.jl v0.5.0
  • Query.jl v0.12.1
  • IndexedTabless.jl v0.12.2
  • LAJuliaUtils.jl v0.2.0
  • Pipe.jl v1.1.0
  • Plots.jl v0.26.1
  • StatsPlots.jl v0.10.2

Ch10 - Mathematical Libraries

  • JuMP.jl v0.19.2
  • GLPK.jl v0.10.0
  • Ipopt.jl v0.5.4
  • SymPy.jl v1.0.5
  • LsqFit.jl v0.8.1

Ch11 - Utilities

  • Weave.jl v0.9.1
  • ZipFile.jl v0.8.3
  • Interact.jl v0.10.2
  • Mux.jl v0.7.0

Above all, thanks to all of you for having answered my “dump” questions here or on S.O…

9 Likes

Would it be possible to add the tutorial and the book on the “Learning” page ?
Who should I contact for that ?

I believe you should make a PR.

2 Likes

Ah, got it… I didn’t know that also the site was based on a github repository… thank you…

Is there any interest in adding JDF.jl to this chapter? I use it to save DataFrames now

Could you make a pull request on this file, so I will track it ?

(It doesn’t have to wait a 2nd edition, I’ll try to implement it first in the tutorial…)

1 Like

Bad, It is very bad idea to write a book with the title that is not suit to its content.

??

Aside that the title has been chosen by the publisher, I think they have a serie with “LangXXX Quick Syntax Reference”, I try to make clear what’s inside both in the description of the book and in what the publisher allowed to be made public/prewieved (and any how the same day of release the full pdf has been released in the well known sites).

So I don’t think anyone get the book thinking that it claims to be the julia reference (that already exists). I believe most people got that it is just a “quick syntax” reference, how to quickly move with doing stuff of interest, get the interest/motivation, before deepening into the language.

unless my english (and the table of content) misguides me severely… the book is not dedicated to the Julia syntax and it is not quick…