Where communities thrive


  • Join over 1.5M+ people
  • Join over 100K+ communities
  • Free without limits
  • Create your own community
People
Activity
  • Sep 30 12:07
    memptr starred dylan-lang/opendylan
  • Sep 27 06:26
    elsvc starred dylan-hackers/marlais
  • Sep 26 03:57
    housel commented #1354
  • Sep 23 05:03
    elsvc starred dylan-lang/opendylan
  • Sep 22 23:02

    cgay on master

    Fix regular-expressions depende… (compare)

  • Sep 20 23:24

    cgay on master

    Fix lsp-dylan-test-suite regist… Update to latest dylan-tool Merge pull request #16 from cga… (compare)

  • Sep 20 23:24
    cgay closed #16
  • Sep 20 23:24
    cgay commented #16
  • Sep 20 18:57
    cgay opened #16
  • Sep 19 13:20
    esdnm starred dylan-lang/opendylan
  • Sep 19 04:49
    cgay closed #1373
  • Sep 19 04:49
    cgay commented #1373
  • Sep 19 04:46

    cgay on master

    libraries-test-suite: Stifle se… console compiler: exit with err… console compiler: add -allow-se… and 2 more (compare)

  • Sep 19 04:46
    cgay closed #1439
  • Sep 19 04:19
    cgay synchronize #1439
  • Sep 18 18:29
    cgay synchronize #1439
  • Sep 18 16:48
    cgay synchronize #1439
  • Sep 18 16:34
    cgay synchronize #1439
  • Sep 18 10:04
  • Sep 18 01:04
    Techcable starred dylan-lang/opendylan
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
promovicz
@promovicz
I just pushed another long swath of marlais commits. It's not the cleanest history in the world, but I am making progress.
bignums mostly work now, though division is still missing, most of the build system level configuration works...
Lots of bugs fixed on the way. Cleaning up the namespace brought a lot of them to light. Others were compiler warnings...
Carl Gay
@cgay
Nice
promovicz
@promovicz
I tore out the path search for loaded source files, so you have to launch the interpreter from the "lib" directory for now. I'll introduce MARLAIS_PATH as a replacement.
Carl Gay
@cgay
For my time library I'm tempted to squash the entire history up to the current moment into one commit; the history is that bad. :)
promovicz
@promovicz
one thing that I really like about the direction this interpreter is going is the ability to define any integer type as a limited integer type. I should be able to represent any C integer, and that should help a lot with FFI.
not that c-ffi ain't any good. I actually think it's excellent.
(within its limitations)
for this sort of thing it's actually an advantage that our base language is small compared to the libraries.
marlais can definitely be a complete dylan. that wouldn't be so easy if we had more subsystems in the language core.
promovicz
@promovicz
with regards to macros I'm still thinking. I'm tending towards wanting a macro expander implemented in dylan because we already have that code. the parsers of the interpreters would have to emit a (possibly shared) d-expr representation.
that way the code could be borrowed from dfmc, dbmc or d2c. they all kind of do this already. the dfmc version probably has the code with the best factoring.
it also has the best features (template calls).
Jon Godbout
@Slids
How do I get format statements to print before dylan finishes?
Carl Gay
@cgay
force-out() and/or force-err()