jxxcarlson's comments

jxxcarlson | 3 years ago | on: Ask HN: What Happened to Elm?

Also, brilliant.org and exosphere.app, both with large and active Elm code bases. I worked for brilliant for a time and now work for exosphere.

Also, my own project, https://scripta.io. About 45kloc of code split between the app (lamdera/elm) and the MicroLaTex-to-HTML compiler (elm).

Have been working with Elm for five years and have been happy with both the experience and the results. E.g. radical refactors of core data structures are simply no big deal.

jxxcarlson | 6 years ago | on: A nice app on Elm street

My own two cents worth on Elm.

I've worked with many languages, beginning with Fortran in my student days that I had to punch my own cards, then doing Basic, Pascal, C, C++, Python, Ruby, Javascript, Lisp, Scheme, some Haskell, not necessarily in that order. I've never had more fun and felt more productive than with Elm. The ability to do "extreme refactoring" and come out on the other side with everything working is liberating, exhilarating, and makes code maintainable and growable over the long term.

Been using it now for three years.

jxxcarlson | 6 years ago | on: Asset minification with Elm (2018)

I wrote a library that parses a subset of LaTeX and renders it as HTML. See https://demo.minilatex.app/ or more at https://minilatex.io I was astonished by what is possible to do with Elm. This is a continuing project. It is easy to go back to the code even after leaving it untouched for several months. I've engaged in "extreme refactoring" many times. No fears!

I've also written a bunch of small mathy apps, e.g. https://jxxcarlson.io/apps/

Elm has been a joy to work with.

jxxcarlson | 6 years ago | on: Asset minification with Elm (2018)

Yes, something like that. Almost everyone who writes Elm code uses elm-format which is very "spacey". So foo = 1 is formatted with foo = on one line and 1 on the next, with some leading space.

jxxcarlson | 7 years ago | on: Small Assets without the Headache in Elm 0.19

One more point. Writing something like the MiniLatex parser would be somewhere between impossible altogether and nightmarish without an expressive type system. Below is the definition of the type of the abstract syntax tree (AST) for MiniLatex. Just eleven lines of code. Yes, I know. No typeclasses in Elm. But Elm's type system is surprisingly expressive, and with it one can do some rather sophisticated work. I've been very happy with it.

    type LatexExpression
        = LXString String
        | Comment String
        | Item LatexExpression
        | InlineMath String
        | DisplayMath String
        | SMacro String (List LatexExpression) (List LatexExpression) LatexExpression 
        | Macro String (List LatexExpression) (List LatexExpression) 
        | Environment String (List LatexExpression) LatexExpression 
        | LatexList (List LatexExpression)
        | LXError (List DeadEnd)

jxxcarlson | 7 years ago | on: Small Assets without the Headache in Elm 0.19

Just wanted to say what a joy it has been to work with the 0.19 compiler. For the project at https://knode.io, it was a game-changer: the elm/parser library is so fast that it makes live rendering of LaTeX to HTML a reality.

See

- Demo: https://jxxcarlson.github.io/app/miniLatexLive/index.html

- Blog post: https://medium.com/@jxxcarlson/elm-0-19-its-parser-and-minil...

Many thanks to Evan for this amazing release. The wait for it was very much worth while. Faster compiling, smaller asset size, and more. Yay!!

jxxcarlson | 7 years ago | on: The Hitchhiker's Guide to Elm

I've been working on a project, now at http://www.knode.io for quite some time. It went from Rails to an Elixir back end with an Angular 1 frontend, then a brief experiment with an Angular 2 frontend, and finally to an Elm frontend. It is a complex project with JS interop using ports to render (a) mathematical text and (b) Asciidoc. Plus, there is a Latex-to-Html parser-differ-renderer package that I wrote entirely in Elm (2K of code).

I couldn't be happier with Elm in this project. Many major refactors: instead of the usual white-knuckle experience with prior languages/frameworks, it was, like, zen.

jxxcarlson | 11 years ago | on: Announcing noteshare.io

Noteshare.io is a platform for creating and distributing online notebooks: lecture notes, homework problem sets, machine shop manuals, collections of poetry and art. You name it. Supports mathematical notation (via LaTeX) and easy-to-enter chemical formulas and reactions. Powered by asciidoctor. Currently in beta test. Join with access code C7092.
page 1