ClojureScript for Skeptics - Derek Slager

Поделиться
HTML-код
  • Опубликовано: 19 дек 2024

Комментарии • 29

  • @domaincontroller
    @domaincontroller 5 лет назад +11

    07:00 Web Development Spectrum
    09:25 new framework
    14:55 tooling
    16:35 interop
    23:40 types
    ~ 26:00 editor
    28:00 templates
    29:33 workflow
    31:43 shaky foundation, javascript, one-liner
    33:09 code size

  • @ManuelMontoyaRdz
    @ManuelMontoyaRdz 6 лет назад +46

    Developing on a modern Lisp language in back and front end avoiding JS: feels like heaven.

  • @valwaeselynck4529
    @valwaeselynck4529 9 лет назад +24

    Thank you! This is a great talk for everyone who wants to bridge the gap between ClojureScript programmers and JavaScript developers.

  • @craigfiebig8357
    @craigfiebig8357 9 лет назад +10

    The only person on the planet who can make this topic interesting and useful for that 180 degree arc of intellect that spans marketing to SDE.

  • @ChadStovern
    @ChadStovern 9 лет назад +11

    Excellent talk, thank you for a great pitch for the javascript community!

  • @KentOJohnson
    @KentOJohnson 4 года назад +14

    This is very helpful. Is there a recent update of this comprehensive nature for the current state of the ecosystem?

  • @wheelindex8983
    @wheelindex8983 2 года назад

    Really good talk. Experienced speaker, still relevant in 2022.

  • @orestismarkou534
    @orestismarkou534 6 лет назад +21

    Revisiting the Objections* section today:
    First Run: New quickstart page is much better
    Types: Clojure.spec is available for ClojureScript
    Editors: Guides available on the site
    Java: Still here

  • @LucasWiener
    @LucasWiener 7 лет назад +6

    Really nice presentation!

  • @androth1502
    @androth1502 5 лет назад +6

    is closurescript doing anything to integrate with webasm?

  • @marcopompili3763
    @marcopompili3763 8 лет назад +2

    At 25:35: What about Light Table as a good starting editor for ClojureScript ? Based on electron (same as Atom) and written in ClojureScript.

    • @irandomedthisnick
      @irandomedthisnick 8 лет назад

      Agreed. I've started to learn Clojure with Light Table and it is a really cool editor (I am used to Sublime Text). The inline REPL is a great experience for a first run!!

  • @chrisvouga8832
    @chrisvouga8832 4 года назад +2

    Very good speaker!

  • @davidyanceyjr
    @davidyanceyjr 8 лет назад +6

    Enjoyed the video. I have watched several clojure videos in an attempt to answer one question. Is this relatively new eco system worth learning if your new to programming?

  • @ashtonsix2980
    @ashtonsix2980 9 лет назад +8

    Good talk & I defo want to start using ClojureScript.
    Examples of verbosity in JS are cherrypicked though and can all be done in one line:
    ISO date string:
    (new Date()).toString()
    Iterate w/ previous & next value (eh, could be better):
    const iterate = (a, f) => a.map((v, i) => f(v, a[i-1]))
    Trim:
    _.trim(str)
    Clone:
    _.cloneDeep(obj)
    Check for empty string:
    str === ''

    • @ashtonsix2980
      @ashtonsix2980 9 лет назад

      +Ashton War I agree w/ the comments about templates, they suck. I wrote a library based on react-hyperscript that solves this in native JS. So I'd write something like:
      div([
      span(`Hello ${name}`)
      ul(
      options.map((v, i) => li(`Option ${i}`))
      )
      ])

    • @ashtonsix2980
      @ashtonsix2980 9 лет назад

      +Ashton War Immutability + hot reloading, yep JS sucks at this and we don't have good solutions. +2 for clojurescrupt here

    • @ashtonsix2980
      @ashtonsix2980 9 лет назад +1

      +Ashton War Yeah, your right about Java, biggest thing making me want to stay away from Clojure

    • @ashtonsix2980
      @ashtonsix2980 9 лет назад

      +Ashton War That async / callback hell problem you put up is a little tricky, the people working on RxJS have solved this in native JS but the ideas haven't spread to the wider JS community yet.

    • @ashtonsix2980
      @ashtonsix2980 9 лет назад

      +Ashton War Though async / await in es7 could be seen as a step in that direction

  • @MrWholphin
    @MrWholphin 9 лет назад +6

    Impressive

  • @nielsvanklaveren3315
    @nielsvanklaveren3315 8 лет назад +1

    I get where you come from when starting up IntelliJ/Cursive and start New Project, but choose Leiningen and just ignore the first screen and you're golden.

  • @wotwot6868
    @wotwot6868 7 лет назад +2

    And here I am still using jQuery. Oh btw, also using JSPs. And best of all, we also don't use SCM/versioning.

  • @capability-snob
    @capability-snob 7 месяцев назад

    Tony Hoare had many brilliant ideas, but CSP really wasn't one of them. This is the one part of working in ClojureScript that I remain worried about: I don't want the components I'm using to make use of unsafe concurrency primitives. In javascript, I can be confident that my event runs to completion before the next microtask is executed, but in clojurescript afaict, any number of unrelated events may be processed before some library function resumes. This means the developer can no longer reason locally about effect order.

  • @uzaarnaam
    @uzaarnaam 9 лет назад +1

    fwiw that ""javascript"" code example contains experimental ES7 features that are part of an early draft standard and require bleeding edge, experimental babel plugins: babeljs.io/blog/2015/05/14/function-bind/ It's misleading to say "this is javascript [right now in 2015]" :)

    • @uzaarnaam
      @uzaarnaam 9 лет назад +3

      +S ཨཽཨཽཨཽ Once point you didn't make but could, however, is that "javascript runs in the browser" is no longer a valid argument. Modern javascript REQUIRES a compile step (babel), so clojurescript really is not at a disadvantage here.

  • @chriscarlson9394
    @chriscarlson9394 3 года назад +3

    Interesting but pretty outdated.