Giter Club home page Giter Club logo

Comments (7)

mpilquist avatar mpilquist commented on May 22, 2024

👍 Scalariform would also be nice to standardize syntax.

from cats.

ceedubs avatar ceedubs commented on May 22, 2024

👍 to Scalastyle and WartRemover (at least what we can enable - we probably will have some things like isInstanceOf for performance hacks).

Scalariform may be okay in this project, but my previous experience in a project that used Shapeless was that there was no permutation of options that would allow me to tell it not to reformat HList literals into an unreadable mess.

from cats.

non avatar non commented on May 22, 2024

I think this is a good suggestion. My feeling is that we should produce a (relatively detailed) document explaining the coding style/standard for type classes etc. and then try to reify some of those guidelines in a linter tool.

Like @ceedubs I'm wary of code rewriting but if we can find a set of settings that doesn't mangle nice code I'm definitely open to it.

from cats.

coltfred avatar coltfred commented on May 22, 2024

👍 for Scalariform. Without some sort of automated code formatting tool it's really hard to tell if I'm conforming to style. Linter and WartRemover make builds glacial, but we've had really good success with having them in a different target which we run just before pushing.

from cats.

wedens avatar wedens commented on May 22, 2024

automatic formatters is good only in simple cases. when you have some high-arity functions and parameters, formatter will create unreadable mess from it (as @ceedubs said).

from cats.

ceedubs avatar ceedubs commented on May 22, 2024

I started a branch on my cats fork to add Scalastyle. It did a good job of catching some whitespace issues, but I ran into an issue. It uses Scalariform internally, which fails to parse Free.scala. I left more info in a commit message and will try to follow up when I get some time.

from cats.

non avatar non commented on May 22, 2024

Fixed by #77

from cats.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.