Where communities thrive


  • Join over 1.5M+ people
  • Join over 100K+ communities
  • Free without limits
  • Create your own community
People
Activity
  • 00:46
    viv718918 starred dylan-lang/opendylan
  • Aug 13 22:35
    cgay opened #1442
  • Aug 13 22:02
    cgay closed #1438
  • Aug 13 22:02

    cgay on master

    Fix compiler command-line parsi… Merge pull request #1438 from c… (compare)

  • Aug 13 21:21
    cgay edited #1441
  • Aug 13 21:19
    cgay synchronize #1441
  • Aug 13 21:17
    cgay review_requested #1441
  • Aug 13 21:17
    cgay opened #1441
  • Aug 13 20:30
    cgay labeled #1440
  • Aug 13 20:29
    cgay opened #1440
  • Aug 09 17:52
    cgay commented #1439
  • Aug 09 16:58
    housel commented #1439
  • Aug 08 02:45
    cgay synchronize #1439
  • Aug 08 00:07
    cgay opened #1439
  • Aug 07 00:03
    cgay opened #1438
  • Aug 03 21:32
    cgay commented #1411
  • Aug 03 19:21
    housel commented #1411
  • Jul 30 11:52
    Spresley70 starred dylan-lang/opendylan
  • Jul 19 22:04
  • Jul 18 02:12
    cgay commented #1406
Jon Godbout
@Slids
what versions of Dylan are currently being maintained?
distributions not versions
promovicz
@promovicz
only opendylan gets serious maintenance.
before opendylan there used to be an effort around gwydion dylan, but that is considered obsolete now.
Carl Gay
@cgay
@promovicz what about the recent Marlais attention? :)
promovicz
@promovicz
I see that as an experiment for now. it also has some major rough edges left.
Carl Gay
@cgay
Unlike Open Dylan. /snicker
promovicz
@promovicz
hehe. true, but they are less fundamental.
I've been working on the build system today, and bignums.
I should really push this run. let's start rebasing.
Jon Godbout
@Slids
So https://github.com/Slids/advent-of-code-2021/blob/e5d4f4a949716f4f57ffe52305137bb246a4f995/day-13/day-13.dylan#L34 I create a fold-x fold-y local, but it should be simple to just have fold (seq, int) and then use curry to give map a function (setting the value of int to 0 or 1)
nvm, rtfm
Carl Gay
@cgay
Yes, you can do that.
(with rcurry in that case, of course)
Jon Godbout
@Slids
I know realize I can also remove the duplication and put the if statements inside the rcurry
Carl Gay
@cgay
mmmm, curry
dunno why I tweak it after I've solved the problem, the point is to solve the problem, no grade for code
Carl Gay
@cgay
Good, cuz I see more ways to tweak it. :-)
Jon Godbout
@Slids
you could do better by making a tree...
but that would require real thought,
Carl Gay
@cgay
I don't actually know what problem you're solving so I can only look at it locally. This member?(vector(x, y), points, test: method(a,b) a[0] = b[0] & a[1] = b[1] end) can be written member?(vector(x, y), points, test: \=)
Jon Godbout
@Slids
does = work on vectors?
Carl Gay
@cgay
yes
Jon Godbout
@Slids
I thought = was basically eq
Carl Gay
@cgay
that's ==
Peter S. Housel
@housel
== is eq
= is EQUAL
Jon Godbout
@Slids
ah ty
i also keep writing :test instead of test: for the test keyword...
Carl Gay
@cgay
TBH I had to check to make sure first. https://play.opendylan.org/shared/b92d81dad57ac674
heh, I did exactly the opposite when writing CL again.
Jon Godbout
@Slids
The last two AoC problems were on par with what I might ask for an interview question
Jon Godbout
@Slids
not that it's hard to make, but does dylan come with a count function on sequence?
promovicz
@promovicz
@Slids I don't think we have count(seq, test). I remember using size(choose(seq, test)) instead.
(which is not the most efficient solution, but easy to read)
Jon Godbout
@Slids
Also, can I use non-let to set value from a multipel return function, say
define function foo (a :: <integer>) => (_ :: <integer>, _ :: <integer>) 
  values(a + 1, a+2);
end;


let (a, b) = foo(1);
(a, b) := foo2; // This line fails to compile
The documentation I found only uses let
promovicz
@promovicz
I don't think you can. the assignment operator only has one "lvalue".
Carl Gay
@cgay
Could write a macro. set-values(a, b := foo(1)) or something like that, perhaps.
Jon Godbout
@Slids
Yea, but then different users have different macros for similiar things (I recall you comment on this a lot with cl)
promovicz
@promovicz
sure, but we can just put things in common-dylan. ;)
technically a multiple-assign could be possible even with the operator, even with setter expansion. it just doesn't seem to be in the language.
promovicz
@promovicz
count(seq, test, #various-keys) sounds like a good common-dylan thing.
Carl Gay
@cgay
But I agree these things are more useful in common-dylan.
Carl Gay
@cgay
Horrible thought: let n = 0; choose(method (x) test(x) & (n := n + 1); #f end, seq)
Jon Godbout
@Slids
We've reached an AoC problem that just feels like toil...
promovicz
@promovicz
.o(it must be symbol of the times we live in)
Jon Godbout
@Slids
(symbol-p *of-time*) => 't