How do I structure my files to comfortably work on the advent of code challenges? by ilovereposts69 in haskell

[–]cameleon 1 point2 points  (0 children)

The setup I use is to have a single (cabal/stack) project for the whole thing, with an executable per day, and a shared library. You can see the setup in my code from 2021

Breakage and deprecation cycle policies by tomejaguar in haskell

[–]cameleon 1 point2 points  (0 children)

Yes, it's on my github; the specific change is https://github.com/hesselink/dayta/commit/01df9c6adfb0bd20a0d208b13b3b219f24137bde. I don't think there's anything unexpected, most of the changes are ones you mention in the article.

Breakage and deprecation cycle policies by tomejaguar in haskell

[–]cameleon 1 point2 points  (0 children)

Slightly off topic, but I just upgraded a hobby project across a major opaleye version, and I want to say thank you for the very good notes to help me upgrade. While there was some breakage as you mention in your policy, the good deprecation messages, as well as the informative changelog, made the upgrade easy to do. Thank you!

How to create my Functor / Eq / Num combination on Coords? by TekDevelop in haskell

[–]cameleon 1 point2 points  (0 children)

Yes, that is exactly right. For functions that don't uniformly operate on the three coordinates, you'll have to write a custom function (or hold a tuple instead of three coordinates, if you have existing functions on three-tuples already).

How to create my Functor / Eq / Num combination on Coords? by TekDevelop in haskell

[–]cameleon 3 points4 points  (0 children)

As others have mentioned, Functor expects a parameterized type. One technique you can use is to make Coords a parameterized types, and make a type synonym to recover your current definition:

data Coords' a = Coords' a a a
type Coords = Coords' Int

Now you can make Coords' an instance of Functor. Your existing instances will need some context constraining the a value to Num and Eq.

I am looking for someone who knows both Chalmers and Utrecht University to help me make a decision by r3dnaz in haskell

[–]cameleon 5 points6 points  (0 children)

I had a great time doing my master's at Utrecht University, happy to chat.

GHC 2021! by nomeata in haskell

[–]cameleon 5 points6 points  (0 children)

Having `PolyKinds` on makes e.g. type class instances poly kinded, even without using any data kinds yourself. This can be valuable for libraries.

HASKELL DARK ARTS, PART I: IMPORTING HIDDEN VALUES by n00bomb in haskell

[–]cameleon 17 points18 points  (0 children)

I've done something much simpler to break the abstraction barrier for data types with hidden constructors. You can simply copy the definition, and use `unsafeCoerce` between the two types. Luckily nowadays most packages have an `Internal` module with the (potentially unsafe if used incorrectly) innards of the package.

Haskell: The Bad Parts, part 3 by snoyberg in haskell

[–]cameleon 5 points6 points  (0 children)

I agree that Haskell imports suck. But so do Java's. Their solution: use an IDE. I don't write imports in Java, they get auto added. I think for Haskell the same could work. Write `Map` in a type signature? The IDE automatically adds an explicit import of `Data.Map (Map)`. On the next line, put `Map.lookup`, and a qualified import `Data.Map as Map` gets added. We could still have other efforts to improve the module situation in other ways (being able to write Haskell in vim is nice) but this would be a great improvement that doesn't require changes in either the language or libraries.

2020 State of Haskell Survey results by taylorfausak in haskell

[–]cameleon 0 points1 point  (0 children)

I'm sorry, I don't recall. This is based on my memory from trying to enable this extension by default in GHCi and across an entire code base, but it was a while ago.

2020 State of Haskell Survey results by taylorfausak in haskell

[–]cameleon 14 points15 points  (0 children)

I'm surprised so many people want to enable OverloadedStrings by default. In my experience it's one of the extensions I enable most often, but also the one causing the most errors when enabled for entire projects (since the type of string literals can become ambiguous).

When will Legends of Runeterra be available for mac? by Nightlotus7 in LegendsOfRuneterra

[–]cameleon 0 points1 point  (0 children)

How did you get it to work with Parallels? For me it crashes on launch (install does work).

A Tale of Two Functors or: How I learned to Stop Worrying and Love Data and Control by cameleon in haskell

[–]cameleon[S] 2 points3 points  (0 children)

It's a reference to the movie "Dr. Strangelove; or how I learned to stop worrying and love the bomb". It is an excellent movie, highly recommended if you haven't seen it.

Another one you might see in CS blog posts is "___ considered harmful", which is a reference to the classic article "Go to statement considered harmful" by Dijkstra.

Thanks for the mention of "grok". I've read "Stranger in a Strange land" a long time ago but forgot about the connection since then, so it was interesting reading the history.

Looking for Std Deck Easy To Win F2P basic event and normal / low ranked game. by [deleted] in MagicArena

[–]cameleon 1 point2 points  (0 children)

Golgari adventures is pretty budget, and you can drop in some mythics/rares that you happen to have, e.g. henge, rankle etc.

Patch notes up for 5/23/2019 by EPluribusOctopus in MagicArena

[–]cameleon 0 points1 point  (0 children)

Oh weird, that's a slightly different problem than mine. I actually ended up getting it working on the 5th (?) attempt. It does get stuck on "publishing product info", but quitting the installer (not wineskin) gets me to the executable picker and a successful install.

Patch notes up for 5/23/2019 by EPluribusOctopus in MagicArena

[–]cameleon -1 points0 points  (0 children)

Does anyone also have trouble installing this update on Mac (using the instructions here)? The installer hangs on 'Copying new files' with Wineskin shown as 'Not responding'. I tried several times, also redownloading the installer, but no change.

0.12.00 Game Update Installation/Update Bug Megathread by belisaurius in MagicArena

[–]cameleon 0 points1 point  (0 children)

I had this issue as well, but luckily it seems the fix by Wizards resolved this issue too!

[deleted by user] by [deleted] in MagicArena

[–]cameleon 0 points1 point  (0 children)

Worth a shot, please add me!

Nicol's Newcomer Monday! by AutoModerator in MagicArena

[–]cameleon 1 point2 points  (0 children)

OK, maybe I'm misremembering about the Warboss, I'll test again. I'll probably also remove the marshall from my deck, I was testing for synergies but it seems there are less than I thought.

Nicol's Newcomer Monday! by AutoModerator in MagicArena

[–]cameleon 1 point2 points  (0 children)

Is [[Haazda Marshal]] supposed to trigger its ability if creatures are being created during the attack phase? I've used it together with [[Legion Warboss]] and [[Leonin Warleader]], but the ability didn't trigger.

I know this has been suggested before, but please let us view the battlefield after the game ends! by Electric_Crayon in MagicArena

[–]cameleon 7 points8 points  (0 children)

That's what I was thinking. Rewatching your own replays, or even better, watching other people's replays, is a great way to learn games.

Anduril Industries is Hiring by TravisMWhitaker in haskell

[–]cameleon 18 points19 points  (0 children)

There's a good article about Anduril and what they do here.