Just spent a good half hour pulling my hair out trying to figure out why one of the #elisp functions I had just written was always returning nil
when I tested it. Turns out, my test was mistakenly passing its inputs to the wrong (but similarly named) function (pivot-table-get-columns
instead of pivot-table-get-body
).
#Haskell's type system would've caught this. 🙃
I am in urgent job search mode, so I'm gonna throw this out here and see if anything comes of it.
I am a #Canadian, fluent in both #English and #French. I have experience with several programming languages. My strongest proficiency is with #Haskell and #C. I also have a reasonable grasp of #HTML, #JavaScript, #SQL, #Python, #Lua, #Linux system administration, #bash scripting, #Perl, #AWK, some #Lisp (common, scheme, and emacs), and probably several others I've forgotten to mention.
I am not necessarily looking for something in tech. I just need something stable. I have done everything from software development, to customer support, to factory work, though my current circumstances make in-person work more difficult than remote work. I have been regarded as a hard worker in every job I have ever held.
like this
reshared this
Accueil | OVHcloud carrières
OVHcloud Recrute ! Retrouvez l'ensemble des offres d'emploi du groupe dans le monde et postulez directement en ligne.careers.ovhcloud.com
So, I've been taking another run at learning #CommonLisp. The last time I tried, I simply could not wrap my brain around macros. I'm reading the same book again, but this time am a more experienced programmer, and it all just clicked in my head.
I might actually end up enjoying #Lisp after all. I don't know if it'll dethrone #Haskell, but I'm starting to get why people like it.
like this
reshared this
Does #Haskell's microlens-platform
really not have a function of type Int -> Lens' [a] a
?
That seems an odd omission.
Has anyone successfully cross-compiled a #Haskell project to .exe from a *NIX system (preferably Debian)? I've casually looked into it in the past, but never given it a serious try.
Jeremy List likes this.
Haskell Users Group (unofficial) reshared this.
I'm of the understanding that it can perhaps be done with Haskell.nix?
Edit: typo
Haskell Users Group (unofficial) reshared this.
I hate it when I make an official release of a program with an ugly snippet of code that I can't figure out how to write more cleanly, only to come up with a solution 10 minutes after pushing the release. I just make the change in the dev branch so it gets incorporated into the next version.
In my defense, the thing I was overlooking was that #Haskell's Maybe
type is an instance of Foldable
. It's not the kind of data type that exactly screams Foldable
, is it?
Side note: I should use Hoogle's search by type signature feature more frequently. I needed a function that looked like this: Monad m => (a -> m ()) -> Maybe a -> m ()
, which is literally just mapM_
.
like this
!Haskell Users Group (unofficial)
So, I created a #Haskell #TUI program using brick. I wanted to have it support cursor keys, as well as vim and Emacs-style cursor movement, but for whatever reason I can't get it to register C-n
and C-p
keypresses. C-f
and C-b
worked fine though.
Anyone have any ideas as to why this might be?
The repository is at: git.fingerprintsoftware.ca/jla…
like this
reshared this
data Foo = Bar { val :: Int } | Baz { val :: Int }
is valid #Haskell. I wouldn't have thought you could define
val
twice like that.
I'm an idiot.
I was trying to install #Haskell on a machine and thought the installer was taking a really long time. In my defense, the last line of text was:
Installation may take a while.
It sat at this stage for over an hour while I did other stuff, because I hadn't bothered to read the previous line:
Press ENTER to proceed or ctrl-c to abort.
Jonathan Lamothe likes this.
It's actually annoying in ghci because the warning gets repeated every time you define something.
--pedantic
flag though (which turns warnings into errors).
Omar Antolín
in reply to Jonathan Lamothe • • •Oriel Jutty
in reply to Jonathan Lamothe • • •This is why C89 wisely limits external symbols to 6 significant characters.
/s
Jonathan Lamothe
in reply to Oriel Jutty • •@Oriel Jutty
*twitch*
Kazinator
in reply to Jonathan Lamothe • • •C's type system would also have caught it, and it isn't worth a hill of beans.
By caught it what do we mean? This is not a case of some undetected error escaping your attention due to dynamic typing. You know you got a nil which is unexpected and wrong. It's in a test case which catches it.
The only thing a type system would change is that you would instead waste a half hour not understanding how your obviously correct function call can possibly have the wrong return type.
Jonathan Lamothe
in reply to Kazinator • •nil
is about the least useful failure state there is.