Xah Talk Show 2021-04-24 Lisp and Wolfram Language Syntax Isomorphism and Design
- https://youtu.be/LOj1omG6k6Q
- Xah Talk Show 2021-04-24 Lisp and Wolfram Language Syntax Isomorphism and Design
- Timestamp
- 04:47 main topic starts
lisp syntax, called symbolic expression (aka sexp) (f ...) (f (f ...) ...) use space to separate atoms, for example (f 3 4) Wolfram Language syntax f[] f[ f[...], ...] use comma to separate atoms, for example (f 3 4) f[3 , 4]
these are matchfix notation: example, array, or list in most language [3 4 5] example, code block { return 3 + 5; }
Side note, nameing of things. Naming of concepts. Jargons. Example: lambda vs Function. Example: list, array, tuple, vector. Example: hash, hash table, dictionary, map, associative list.
common infix notation for polynomial x^3 + y * z^2 in lisp form would be: (plus (power x 3) (times y (power z 2)))
notation of sugar syntax, is not well defined.
for example
i++ vs
i=i+1.
these are not syntactically equivalent, nor
semantically equivalent
;; this creates a function, and apply it to two arguments, 2 and 3. it should return 5 ((lambda (x y) (+ x y)) 2 3 )
Links and topics:
- Wolfram: Download Wolfram Engine
- first, explain the isomorphism of ideal lisp syntax and Wolfram Language FullForm. that is,
(f x)vsf[x]. Show my article. - Concepts and Confusions of Prefix, Infix, Postfix and Lisp Notations (2006)
- explain fully, Wolfram Language FullForm and InputForm, with analogy to lisp's symbolic expression (sexp) and the meta expression (mexp)
- start easy. Show 1+1, 2*3, List, prefix, postfix notations.
- Origin of Unix Pipe (by Alfred Aho. 2010)
- JavaScript Method Chaining is not Postfix Operator (2016)
- JS: Function Chaining
- LISP Infix Syntax Survey (2013)