Where communities thrive


  • Join over 1.5M+ people
  • Join over 100K+ communities
  • Free without limits
  • Create your own community
People
Activity
    Hugo Granström
    @HugoGranstrom
    I tried to read it once upon a time, but the topics weren't really my cup of tea 😅
    Some kind of parallelization would be fun though but I don't think async and await is really the right way to go then
    Just using parallell for loops is probably all we need
    I've ported all the integrators from the old to the new version now and the fixed timestep versions are consistently faster than the old ones, probably because we are using when-statements to control if the code for the adaptive integrators should be used or not
    Hugo Granström
    @HugoGranstrom
    One thing that has bugged me the past few days is how the start time and end time is set by the user. tStart is set in an ODEoption which is quite inconvenient if you only want to change the it and not the other parameters. And the endTime is a bit fuzzy how it is set as well atm. What way do you find the most intuitive for a user to set the start and end times of the simulation? For example if you compare the different methods used by others like JuliaDiffEq and Matlab
    Hugo Granström
    @HugoGranstrom
    I appreciate the shootout in your PariNim repo (which seems very interesting and I could definitely have a bit of fun with it in the future) but I have to say you yourself deserve 99% of the credit on that part. You came in like a fresh wind and lit my open-source fire again 😊 It's rather me who should thank you for the inspiration you have brought me! 😉 Thank you!
    matrixbot
    @matrixbot
    BarrOff I was rather busy the last days, so I did not respond earlier. It is nice to hear that I brought you inspiration. I wanted to thank you because you are the first person I encountered in an open source project. If that person would have been harsh, it might have stopped me from continuing. But you were welcoming and motivating. 😃👍
    Hugo Granström
    @HugoGranstrom
    I'm glad you found it so 😊 It's just unwise to scare people away who wants to work for free , don't you think? 🤪😂 Jokes aside, it's a whole lot more fun to have others to talk to and get inspiration from than working by yourself ☺️
    What do you have in mind with Pari? Is it something you yourself are using usually or just something you find cool and wanted to test your skills at? :-D
    matrixbot
    @matrixbot
    BarrOff I use pari/gp from time to time. Looking for a library to test Nim's FFI and nimterop it came to my mind and I was like: why not give it a try? 😜
    BarrOff Also, do you know project Euler? Pari is really well suited for that
    Hugo Granström
    @HugoGranstrom
    I've dabbled with it a few years ago but I used Python so it took some time for my codes to run, especially when considering that my code probably was very suboptimal 😂
    Pari sounds really useful for that 👍
    Great way to combine learning and joy 😉
    Making high-level wrappers is quite fun actually, it feels like you have accomplished something when you're able to simplify the use of something complicated
    matrixbot
    @matrixbot
    BarrOff Yeah, that's true. Nimterop can't convert functions as parameters of functions. Choosing to wrap PARI was maybe not the wisest decision, because it is based on closures. 🤪 I still need to wrap about more than 200 functions.
    Hugo Granström
    @HugoGranstrom
    Oh my.... 🙈😅 That sounds aweful 😬
    That definitely sounds like a test of patience 😂
    matrixbot
    @matrixbot
    BarrOff At least it isn't very difficult, just needs time and concentration. I have been trying to use nimarchive on Linux, MacOS and FreeBSD, but nowhere did it work. I allready filed an issue, but could you do a quick check on it? Just the simple example on the github page would be enough.

    BarrOff Like
    import nimarchive

    extract("archive.tar.gz", "outdir")

    Hugo Granström
    @HugoGranstrom
    I'm also getting a error:
    Error: undeclared identifier: 'getProjectCacheDir'
    But it seems to be another than you get
    I'm on Windows btw
    matrixbot
    @matrixbot
    BarrOff Interesting. 😂
    Hugo Granström
    @HugoGranstrom
    Haha there are apparently more than two sides on this coin 😂🙈 poor maintainer 😬
    Bug fixes are the least fun part of coding 😅
    Vindaar
    @Vindaar
    Hello there! Just noticed you have a gitter room for numericalnim :)
    Hugo Granström
    @HugoGranstrom
    Good afternoon 😄 Yeah it was BarrOff's idea to use Gitter for discussions rather than cluttering Issues and PRs.
    Vindaar
    @Vindaar
    Yeah, it makes sense for some things, especially simpler "how to do x" questions and this sort of stuff
    Hugo Granström
    @HugoGranstrom
    Yeah definitely :)
    The data science packages for Nim is starting to stack up now, Arraymancer and ggplotnim is a really promising start to make Nim more attractive to new users when they see we got both a great Dataframe/Plotting library and a nd-array library.
    The key now I guess is to make sure they all cooperate with each other, that is one of the main strengths of the Scipy ecosystem that everything works together
    So I think mratsim's question to us and brentp this morning was really good. To make sure his changes doesn't break the other stuff that's out there.
    Vindaar
    @Vindaar

    Thanks for the kind words :)

    The key now I guess is to make sure they all cooperate with each other, that is one of the main strengths of the Scipy ecosystem that everything works together

    and yes, this is something I've been thinking about more and more, since I rewrote ggplotnim's data frame

    I agree
    The thing I've been wondering about most lately however is whether we should strive for a single library "which does everything", kinda like scipy itself, you know?
    That is regarding pure numerical calculations of course
    data frames and plotting don't belong in there
    but integration routines and a lot of stuff I have in my seqmath fork here: https://github.com/vindaar/seqmath
    that would both help to maintain code working together, put more eyes on the written code and most importantly would help more with discoverability of the functionality for newer nim users
    Essentially people will certainly stumble over arraymancer, if they check out nim in regards to data science. And it might help to make use of that
    Vindaar
    @Vindaar
    sorry for the ramble :D
    Hugo Granström
    @HugoGranstrom
    A single big library would probably work really good in Nim as it only compiles the code which is used so the binaries doesn't blow up in size just because of it
    So iI think that would be a great idea! SciNim or NumNim could be two possible names 😂 (the reason I didn't go for NumNim instead of NumericalNim was actually so that there wouldn't be any name conflicts in the future) 😅
    Having multiple people working together rather than in separate packages is also a really neat thing we would get from this
    Hugo Granström
    @HugoGranstrom
    As it is right now it's really easy to miss cool packages like your seqmath simply because they aren't mentioned that often (although I do recall it being mentioned quite a bit in the past)
    So uniting all these packages into a God Package would definitely help with bringing functionality to the users
    Vindaar
    @Vindaar
    yes, definitely!
    for the single big library I think one has to do one thing though. At least if I consider arraymancer. At the moment arraymancer has a single arraymancer.nim, which imports and exports all submodules. But due to how nim imports work, I think one cannot actually import only parts of arraymancer, e.g. import arraymancer / tensor just doesn't work for some reason.
    And obviously importing everything for each piece is not really a good idea. But that should be easy to solve