No video

High-performance Tree Wrangling, the APL Way // Aaron Hsu // Dyalog '18

  Рет қаралды 4,471

Dyalog User Meetings

Dyalog User Meetings

Күн бұрын

Aaron Hsu, Indiana University (U.S.A.)
Don't let hierarchical tree like structures get you down in APL-land. Despite what modern C.S. theorists would have you believe, there's more than one way to prune, chop, graft and otherwise mangle and wrestle with tree data.
Aaron discusses a novel approach to interacting with Trees, particularly in the manipulation and transformation of trees, that leverages the unique and special qualities of APL to achieve not only greatly reduced code size, but also improved performance, amenability to parallelisation and ease of maintenance/productivity improvements. These techniques are easy to pick up, general and practical.
TL;DR - Why everything you learned about working with trees in University is wrong.

Пікірлер: 1
@BobArmstrong_CoSy
@BobArmstrong_CoSy 5 жыл бұрын
To paraphrase James Watson's comment in The Double Helix on Linus Pauling's comment : "The alpha helix is very interesting" , this is very interesting to those of us interested in it . A tree is equivalent to a less or more sparse array . Are there any simple algorithms for operations , eg: to "transpose" , your representations , that is , to interchange order of the nesting ? This has made me reexamine my ' flip function which I ended up deciding to just return the flip of the shorter of the 2 counts rather than what I did first , given CoSy's modulo indexing , replicate the shorter to match the longer rather than just throw an error . Here's what it currently looks like in CoSy Forth . : flip ( CSob -- CSob ) | Transpose list of 2 lists . | returns list of each item of 1th list w corresponding item of 1st subject | to the minimum length of the 2 lists . | dup @ if ;then | transpose of a simple obj is itself dup i# 0;drop | same for empty refs+> dup ['] rho 'm ,/ ['] min _./ >_ cellVecInit >aux> | ob nbdy i# 0 ?do dup i _nth refs+> aux@ i i! loop refs- aux> ;
Patterns and Anti-patterns in APL // Aaron Hsu // Dyalog '17
59:03
Dyalog User Meetings
Рет қаралды 5 М.
Co-dfns Update 2023 // Aaron Hsu // Dyalog '23
18:00
Dyalog User Meetings
Рет қаралды 512
MISS CIRCLE STUDENTS BULLY ME!
00:12
Andreas Eskander
Рет қаралды 18 МЛН
Does APL Need a Type System? by Aaron W Hsu at #FnConf18
54:31
Will You Play APL With Me? // Rodrigo Girão Serrão // APL Seeds '21
45:02
Dyalog User Meetings
Рет қаралды 8 М.
Dyalog Modern Programming Language | Morten Kromberg | Talks at Google
1:17:23
Algorithms as a Tool of Thought // Conor Hoekstra // APL Seeds '21
44:38
Dyalog User Meetings
Рет қаралды 18 М.
EnthusiastiCon 2019 - An Introduction to APL
16:51
EnthusiastiCon
Рет қаралды 23 М.
APL demonstration 1975
28:00
Imperial College London
Рет қаралды 103 М.
Simple Code, High Performance
2:50:14
Molly Rocket
Рет қаралды 240 М.