Skip to content

doc: Comparison to relative LISP based languages (like Clojure) #146

@jasalt

Description

@jasalt

For onboarding lispers from other languages, it would be beneficial to provide documentation of the differences between Phel and (mainly) Clojure so that users could get up and running faster without having to discover the differences themselves.

Pretty good example in Basilisp ("Phel" for Python) docs "Differences from Clojure" https://basilisp.readthedocs.io/en/latest/differencesfromclojure.html

Some topics discussed there with few notes that came to my mind:

  • Type Differences
  • Arithmetic Comparison (note that PHP feature is "fixed" Avoid coercing nil to 0 in math operations phel-lang#887)
  • Reader
    • Macros (syntax is like in Janet, plus auto-gensym like Clojure)
    • Regular Expressions (e.g. PHP regex uses surrounding slashes (?))
    • Special Forms (e.g. lambda syntax #(%) v.s. |($))
  • Compilation
  • Evaluation
  • REPL
  • Namespaces
  • Core namespace differences (e.g. with-out-str v.s. with-output-buffer, no multi-methods)
  • Core library equivalents (not much exist but might in future)
  • Host Interop
  • Concurrent Programming

More examples from ClojureScript https://www.clojurescript.org/about/differences and ClojureDart https://github.com/Tensegritics/ClojureDart/blob/main/doc/differences.md

Metadata

Metadata

Assignees

No one assigned

    Labels

    documentationImprovements or additions to documentationgood first issueGood for newcomers

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions