Sacha Verweij and Jane Herriman
Sacha Verweij and Jane Herriman
Sacha Verweij and Jane Herriman
_ _ _(_)_
(_) | (_) (_)
_ _ _| |_ __ _
| | | | | | |/ _` |
| | |_| | | | (_| |
_/ |\__'_|_|_|\__'_|
|__/
, ,&
productive performant
(lisp, python, ruby, matlab) (asm, fortran, c, c++)
# python # julia
def sum(a): function sum(a)
s = 0.0 s = 0.0
for x in a: for x in a
s += x s += x
return s end
return s
end
…feels like lisp…
homoiconic
dynamic
parametric
multiple dispatch
highly polymorphic
…
…runs like c…
# python # julia
def sum(a): function sum(a)
s = 0.0 s = 0.0
for x in a: for x in a
s += x s += x
return s end
return s
end
“looks like python, feels like lisp, runs like c“
github stars
1.0 release
_
_ _ _(_)_
(_) | (_) (_)
_ _ _| |_ __ _
| | | | | | |/ _` |
| | |_| | | | (_| |
_/ |\__'_|_|_|\__'_|
|__/
, ,&
_
_ _ _(_)_
(_) | (_) (_)
_ _ _| |_ __ _
| | | | | | |/ _` |
| | |_| | | | (_| |
_/ |\__'_|_|_|\__'_|
|__/
, ,&
an two language problem for teaching?
intro CS advanced CS
(loops, variables, (types, architectures,
functions, control flow, …) compilers, performance, …)
_
_ _ _(_)_
Linear Algebra: Foundations to LAFF-On Programming for LAFF-On Programming for High Linear Algebra: Foundations to
Frontiers (LAFF) Correctness (LAFF-On) Performance (LAFF-On PfHP) Frontiers - Notes on Numerical
Linear Algebra
A MOOC on the edX platform. A MOOC on the edX platform. Materials under development. Notes for a graduate level
numerical linear algebra course.
Current offering Fall 2018 (Aug. Offering that started May 15,
1, 2018 - Dec. 17, 2018) 2018 is now archived.
Reviews
Download! Linear Algebra: Download! LAFF-On Download! LAFF-On Download! Linear Algebra:
Foundations to Frontiers - Programming for Correctness Programming for High Foundations to Frontiers -
Notes to LAFF With (Complete notes with answers.) Performance Notes on Numerical Linear
(Notes and materials under Algebra
development)
An e-book (PDF) that integrates An e-book (PDF) that integrates An e-book (PDF) that is a
the materials for LAFF, including the materials for LAFF-On, A constantly changing e-book collection of notes written for an
270+ short videos, answers to including short videos, answers (PDF) with programming introductory graduate level
exercises, browser-based to exercises, browser-based exercises. For now, the course on Numerical Linear
activities, and programming activities, and programming document will give you an idea Algebra.
exercises for MATLAB. exercises for MATLAB. of what is coming. If you want to
be kept informed of major
milestones, join the ULAFF-On
google group. Some of the
programming activities are now
Watch the "Sizzle" Video": Watch the "Sizzle" Video": available on github. Stand by!
matlab c
pseudocode down to the metal
prototyping transparent performance model
exploration
testing
benching
plotting WE HAD TO USE MEX FILES
_
_ _ _(_)_
(_) | (_) (_)
_ _ _| |_ __ _
| | | | | | |/ _` |
| | |_| | | | (_| |
_/ |\__'_|_|_|\__'_|
|__/
, ,&
_
_ _ _(_)_
(_) | (_) (_)
_ _ _| |_ __ _
| | | | | | |/ _` |
| | |_| | | | (_| |
_/ |\__'_|_|_|\__'_|
|__/
E X
*.M