« first day (205 days earlier)      last day (752 days later) » 

00:10
@ASCII-only wait why are we mangling again
@ASCII-only pls halp
oh wait I remember
it needed otherwise critical bork happen
00:38
func main(args: String[]) {
    let b = "A"
    if true {
        print(b)
        let b = 1
        print(b)
    }
}
^ random test for scoping
okay so for scoping:
ok finally finished ><> submission but still not happy with the golfing :(
set: id -> store & return mangled id
get: mangledId -> return value
get: normalId -> for each (mangled id) compare w/ original
@ASCII-only :(
halp scoping confuse gaot ;_;
@Downgoat what's with the second get
because we do three things:
1) variable declarations (var a)
2) unmangled variable accessing (a + 1), in this case we need to find a's mangled name
3) mangled variable accessing (a23_long_mangled_name), this is for like transformers
00:53
pls halp though vrey confuse how make efficient
hmm?
hello
trying to do variable mangling 0/10 very difficult
actually do I even need to do manglin
hm
Pro Tip: do not load global satellite data at once or computer will crash
 
1 hour later…
02:19
@ASCII-only pls ping when added generics/array/tuple/dict stuff
btw we will need VSL documentation generator >_>
 
2 hours later…
04:09
@ASCII-only generic is kinda holdback rn, I'm working on scope generation but generic is important pls :3
@Downgoat ok what do i do for generic? everything?
just parse
in primitives.ne there is type thing
that needs to have <foo> thing
also in class.ne
@Downgoat ok pls build and tell what bork
04:17
@ASCII-only bork alert:
> mkdir -p lib/vsl/parser && nearleyc src/vsl/parser/grammar/parser.ne -o lib/vsl/parser/parser.es6.js && babel lib/vsl/parser/parser.es6.js -o lib/vsl/parser/parser.js

SyntaxError: lib/vsl/parser/parser.es6.js: Invalid left-hand side in assignment expression (72:33)
  70 |         ], [
  71 |             [[3], id],
> 72 |             [[3, "<", 15, ">"], (d, l) =? new t.Generic(d[0], d[2])]
     |                                  ^
  73 |         ], [
  74 |             [[2, ".", 2]]
  75 |         ], [
ok i fix
huh, apparently imperative languages are super easy to generate
04:33
@Downgoat really? link pls
@ASCII-only no link just if you think about it
all you need is like:
class Generator { let expressionCount = 0 }
Then you can just recursively generate an "Expression"
1 + 1 * 2 would call genrator for 1 * 2 then 1 + 1
you would just do:
%0 = mul i32 1 i32 2
for the first one
oh yeah
and then just increment expressionCount
etc.
05:05
@Downgoat ok what do i do now
tuples and arrays and stuff?
@Downgoat Empty array = [,], empty dictionary = [], good idea or bad idea
 
9 hours later…
13:59
@ASCII-only bad
[:] for empty dict
 
8 hours later…
21:44
@Downgoat wat why
22:08
@ASCII-only because [,] is worse
[:] is pretty good imo
Makes sense
Because dictionary is [key: value]
23:02
@Downgoat but seems like equals [empty key: empty value]
23:50
@ASCII-only generated first 3 lines of LLVM code!! :D
@Downgoat :D :D :DDDD

« first day (205 days earlier)      last day (752 days later) »