Logs: freenode/#haskell
| 2021-03-05 20:28:35 | <ADG1089__> | (Operator applied to too few arguments: #) |
| 2021-03-05 20:28:36 | <tomsmeding> | Wezl: you might try saying 'export TMPDIR=/some/writable/path' |
| 2021-03-05 20:28:45 | <tomsmeding> | ADG1089__: {-# LANGUAGE MagicHash #-} ? |
| 2021-03-05 20:29:23 | × | crobbins quits (~crobbins@2601:2c1:200:ec50:4511:efcb:5dfa:3325) (Ping timeout: 260 seconds) |
| 2021-03-05 20:29:30 | → | mikoto-chan joins (~anass@gateway/tor-sasl/mikoto-chan) |
| 2021-03-05 20:30:14 | → | tromp joins (~tromp@dhcp-077-249-230-040.chello.nl) |
| 2021-03-05 20:30:14 | × | Wezl quits (~u0_a61@2601:14b:4400:8850:20c6:4fff:fe76:8f44) (Read error: Connection reset by peer) |
| 2021-03-05 20:30:29 | → | Wezl joins (~u0_a61@2601:14b:4400:8850:20c6:4fff:fe76:8f44) |
| 2021-03-05 20:30:31 | <Wezl> | tomsmeding: it's already set to one |
| 2021-03-05 20:32:33 | × | mayleesia quits (4db762ff@x4db762ff.dyn.telefonica.de) (Quit: Connection closed) |
| 2021-03-05 20:32:34 | <tomsmeding> | Wezl: might try setting TMP or TEMP instead, but if it doesn't pick those up either, I'm afraid you'd have to dive into the build system to change what it does |
| 2021-03-05 20:32:58 | × | myShoggoth quits (~myShoggot@75.164.81.55) (Ping timeout: 245 seconds) |
| 2021-03-05 20:33:07 | <Wezl> | hopefully there's a simple ./configure option |
| 2021-03-05 20:33:11 | <ADG1089__> | tomsmeding: can't define [Int64#] . I think [] don't work with unlifted type, maybe I have to use UList |
| 2021-03-05 20:33:40 | <tomsmeding> | ADG1089__: similarly you might have issues with Map on unlifted types, I think |
| 2021-03-05 20:35:03 | × | apache8080 quits (~rishi@wsip-70-168-153-252.oc.oc.cox.net) (Ping timeout: 245 seconds) |
| 2021-03-05 20:35:21 | × | merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 264 seconds) |
| 2021-03-05 20:36:26 | <ADG1089__> | tomsmeding: what do you suggest? how can i unbox my Int64 usage? |
| 2021-03-05 20:36:27 | → | stree joins (~stree@68.36.8.116) |
| 2021-03-05 20:36:39 | <tomsmeding> | are you sure you need to? |
| 2021-03-05 20:37:34 | <tomsmeding> | to ask the eternal question: what in the profiling report suggested that unboxing might be a good idea? :) |
| 2021-03-05 20:37:48 | <tomsmeding> | (which implicitly asks: did you profile?) |
| 2021-03-05 20:38:22 | <mikoto-chan> | Do cabal commands that support sandboxing still use the new-* prefix? |
| 2021-03-05 20:39:17 | <dcoutts> | mikoto-chan: do you mean the new project style or the old sandboxing style? |
| 2021-03-05 20:39:23 | × | Wezl quits (~u0_a61@2601:14b:4400:8850:20c6:4fff:fe76:8f44) (Read error: Connection reset by peer) |
| 2021-03-05 20:39:42 | → | Wezl joins (~u0_a61@2601:14b:4400:8850:20c6:4fff:fe76:8f44) |
| 2021-03-05 20:40:45 | × | tromp quits (~tromp@dhcp-077-249-230-040.chello.nl) (Remote host closed the connection) |
| 2021-03-05 20:41:28 | → | apache8080 joins (~rishi@wsip-70-168-153-252.oc.oc.cox.net) |
| 2021-03-05 20:41:32 | <mikoto-chan> | dcoutts: I'm merely a beginner that read in a book that cabal will be sandboxing and caching build dependencies in the future for projects to prevent version clashes :( |
| 2021-03-05 20:41:56 | <ADG1089__> | tomsmeding: was going through steps as mentioned here: https://wiki.haskell.org/Performance/GHC |
| 2021-03-05 20:42:02 | × | ixlun quits (~user@213.205.241.12) (Read error: Connection reset by peer) |
| 2021-03-05 20:42:09 | <dcoutts> | mikoto-chan: then it probably means project support, and yes the future has arrived and that is the default now in cabal-install version 3+ |
| 2021-03-05 20:43:09 | <tomsmeding> | ADG1089__: ah I see |
| 2021-03-05 20:43:11 | <ADG1089__> | tomsmeding: GC was negligible, it's only 2 modules, and the third things was unboxed types |
| 2021-03-05 20:43:54 | <tomsmeding> | ADG1089__: how many things are in that Map? I think it's important to be aware that a Map will be a tree of boxes anyway |
| 2021-03-05 20:44:17 | <tomsmeding> | so the leaves may very well be unboxed -- if that's even supported -- but that won't really matter if the rest of the tree is boxed :p |
| 2021-03-05 20:44:18 | → | ixlun joins (~user@213.205.241.12) |
| 2021-03-05 20:44:24 | <ADG1089__> | tomsmeding: 3429 |
| 2021-03-05 20:44:33 | × | andrybak quits (~andrybak@2001:a61:245b:4401:6893:7a82:3e23:36db) (Ping timeout: 260 seconds) |
| 2021-03-05 20:44:37 | <geekosaur> | tbh if you're using lists that may itself be an issue, depending on what you're doing. in particular they are linked lists, not arrays/vectors, and indexing will be very slow |
| 2021-03-05 20:45:00 | × | ClaudiusMaximus quits (~claude@unaffiliated/claudiusmaximus) (Quit: ->) |
| 2021-03-05 20:45:06 | × | Guest_24 quits (dfbc579a@223.188.87.154) (Quit: Connection closed) |
| 2021-03-05 20:45:30 | <tomsmeding> | ADG1089__: you might want to replace that Map with a Data.Vector.Unboxed, sort that thing, and use explicit binary search on the vector instead of Map.lookupLE |
| 2021-03-05 20:45:39 | → | __minoru__shirae joins (~shiraeesh@109.166.58.196) |
| 2021-03-05 20:45:43 | <ADG1089__> | tomsmeding: let me try |
| 2021-03-05 20:46:35 | <tomsmeding> | then you're not using an intermediate Map, which is like a big fat hammer among breadcrumbs if you're trying to shave off the last bits of runtime using unboxed types |
| 2021-03-05 20:46:37 | → | crobbins joins (~crobbins@2600:1700:48eb:8490:a9f2:bb00:baa5:51b1) |
| 2021-03-05 20:46:55 | <tomsmeding> | okay unboxing may have significant effects in some cases, true |
| 2021-03-05 20:47:18 | <tomsmeding> | but if you go unboxed, you need to unbox everything for it to make sense |
| 2021-03-05 20:48:04 | → | romesrf joins (~romesrf@44.190.189.46.rev.vodafone.pt) |
| 2021-03-05 20:49:30 | × | romesrf quits (~romesrf@44.190.189.46.rev.vodafone.pt) (Client Quit) |
| 2021-03-05 20:49:32 | <monochrom> | "go (x : xs) prod = go xs prod +? (if prod <= lim `div` x then go xs (prod * x) else 0)" is a space-expensive algorithm and it is not because some Int64s are boxed. |
| 2021-03-05 20:49:40 | → | myShoggoth joins (~myShoggot@75.164.81.55) |
| 2021-03-05 20:50:06 | <monochrom> | You're looking at basically "f x = f (x-1) + f(x-2)" |
| 2021-03-05 20:51:34 | <monochrom> | I wouldn't be surprised that it is an expoential-time algorithm, too. |
| 2021-03-05 20:51:45 | <monochrom> | s/that/if/ |
| 2021-03-05 20:52:26 | × | rj quits (~x@gateway/tor-sasl/rj) (Ping timeout: 268 seconds) |
| 2021-03-05 20:54:07 | → | tromp joins (~tromp@dhcp-077-249-230-040.chello.nl) |
| 2021-03-05 20:54:11 | <ADG1089__> | monochrom: maximum depth of recursion is 543. Yeah it's exponential, but I reversed hps so lot of values got filtered and practically it is really fast. Just reversing brought the time from 14 sec to 1.5 sec |
| 2021-03-05 20:54:17 | <ADG1089__> | I'm trying to reach <1sec |
| 2021-03-05 20:54:45 | <monochrom> | What is the current running time? |
| 2021-03-05 20:54:53 | <mikoto-chan> | Hmmm ... when I install a package with 'cabal install foo' I don't see it appear in 'ghci' but when I do 'cabal new-install foo' and 'cabal v2-repl' everything is working fine ... is this normal with ghcup? |
| 2021-03-05 20:55:11 | <tomsmeding> | mikoto-chan: what's your cabal version? |
| 2021-03-05 20:55:59 | <maerwald> | mikoto-chan: ghci knows nothing about the cabal store |
| 2021-03-05 20:56:03 | → | rj joins (~x@gateway/tor-sasl/rj) |
| 2021-03-05 20:56:26 | <mikoto-chan> | 3.2, latest and greates |
| 2021-03-05 20:56:28 | <mikoto-chan> | t |
| 2021-03-05 20:56:32 | <monochrom> | Also "cabal install foo" means exe only. |
| 2021-03-05 20:56:39 | <sclv> | you shouldn't really be using `cabal install` in the new workflow |
| 2021-03-05 20:56:50 | <mikoto-chan> | sclv: How do I undo the damage? |
| 2021-03-05 20:56:55 | → | andrybak joins (~andrybak@2001:a61:245b:4401:6893:7a82:3e23:36db) |
| 2021-03-05 20:57:08 | <sclv> | don't worry about it, just don't use it :-) |
| 2021-03-05 20:57:15 | × | hiroaki_ quits (~hiroaki@2a02:8108:8c40:2bb8:303:be6a:2a48:3133) (Ping timeout: 240 seconds) |
| 2021-03-05 20:57:18 | <mikoto-chan> | But I already installed something |
| 2021-03-05 20:57:22 | <tomsmeding> | it didn't do damage, it just took some extra disk space |
| 2021-03-05 20:57:26 | <monochrom> | If foo has no exe, you didn't do any damage. |
| 2021-03-05 20:57:29 | <mikoto-chan> | Ouch |
| 2021-03-05 20:57:38 | × | hiroaki quits (~hiroaki@2a02:8108:8c40:2bb8:68e3:9c1f:887c:d5b3) (Ping timeout: 264 seconds) |
| 2021-03-05 20:57:58 | × | Wezl quits (~u0_a61@2601:14b:4400:8850:20c6:4fff:fe76:8f44) (Ping timeout: 260 seconds) |
| 2021-03-05 20:58:23 | <tomsmeding> | mikoto-chan: the idea with using new cabal is that you always work within a project, with a .cabal file that lists dependencies |
| 2021-03-05 20:58:32 | × | _ht quits (~quassel@82-169-194-8.biz.kpn.net) (Remote host closed the connection) |
| 2021-03-05 20:58:57 | <mikoto-chan> | tomsmeding: Is cabal.readthedocs.io up to date? There's a bunch of tutorials that still use the old commands |
| 2021-03-05 20:59:05 | <mikoto-chan> | Thanks for the help by the way |
| 2021-03-05 20:59:05 | <monochrom> | Yes. |
| 2021-03-05 20:59:15 | → | hiroaki joins (~hiroaki@2a02:8108:8c40:2bb8:8dfa:c309:9698:bf3a) |
| 2021-03-05 20:59:25 | <monochrom> | Also as of a week ago, the latest and greatest and recommended is 3.4. |
| 2021-03-05 20:59:45 | <monochrom> | Although, 3.2 is not very far behind 3.4. |
| 2021-03-05 21:00:10 | <mikoto-chan> | How do you go about updating ghcup? |
| 2021-03-05 21:00:14 | → | jakalx joins (~jakalx@base.jakalx.net) |
| 2021-03-05 21:00:23 | <tomsmeding> | mikoto-chan: also, by the way, if you really want to not work in a project, there are workarounds like described in https://mail.haskell.org/pipermail/haskell-cafe/2021-February/133425.html and other emails in the same thread (see related posts in the thread overview: https://mail.haskell.org/pipermail/haskell-cafe/2021-February/thread.html) |
| 2021-03-05 21:00:34 | <tomsmeding> | but please work in a project :) |
| 2021-03-05 21:00:53 | <tomsmeding> | mikoto-chan: ghcup upgrade; ghcup install cabal 3.4.0.0; ghcup rm cabal 3.2.0.0 |
| 2021-03-05 21:00:55 | → | hiroaki_ joins (~hiroaki@2a02:8108:8c40:2bb8:303:be6a:2a48:3133) |
| 2021-03-05 21:00:58 | <tomsmeding> | but note there is also 'ghcup tui' |
| 2021-03-05 21:01:09 | <mikoto-chan> | tomsmeding: *I never made any projects I'm just learning Cabal :^)* |
| 2021-03-05 21:01:18 | → | iomonad joins (~iomonad@unaffiliated/iomonad) |
| 2021-03-05 21:01:35 | <geekosaur> | if you want to learn cabal you should learn working in projects |
| 2021-03-05 21:02:17 | <sclv> | the point of cabal is to work with projects. on its own it doesn't do much |
| 2021-03-05 21:03:13 | <sclv> | if you want to just pop open a repl with some libs in scope outside of a project, do sometihng like "cabal3 repl --build-depends=text" |
| 2021-03-05 21:03:48 | × | takuan quits (~takuan@178-116-218-225.access.telenet.be) (Remote host closed the connection) |
All times are in UTC.