funcool

A channel for discussing and asking questions about Funcool libraries https://github.com/funcool/
2016-11-22T01:02:21.000225Z

FYI I started working on a CLJS port of some of the Buddy components, entitled “Pal”: https://github.com/leppert/pal-core https://github.com/leppert/pal-hashers At the moment it’s not entirely useful (though much of the hashers functionality is there) but the hope is that it might one day be robust enough to provide syntactic familiarity between Clojure Buddy projects and Node Pal projects.

niwinz 2016-11-22T08:01:33.000227Z

@leppert very nice!

niwinz 2016-11-22T08:01:48.000228Z

it is nodejs target or any js environment?

niwinz 2016-11-22T08:02:49.000229Z

I have started in the past something with nodejs target https://github.com/funcool/dost

niwinz 2016-11-22T08:03:29.000231Z

but I did't had enough time for it

niwinz 2016-11-22T08:07:39.000233Z

After read a little bit the code, now I have the answer: yes seems like it target to nodejs

niwinz 2016-11-22T08:08:27.000234Z

in this case I think that some code from funcool/dost can serve you

niwinz 2016-11-22T08:13:45.000235Z

@leppert Will be welcome if I port some changes from dost to pal? I think that nodejs native hashes and hmac supports is better than the google closure library, just because they are native implementation. Also I have support for nodejs streams in dost that is useful for hash big files without blocking too much.

niwinz 2016-11-22T08:28:56.000237Z

On the other hand, js and jvm environments are pretty different, so I don't recommend try to have the exact api with buddy

niwinz 2016-11-22T08:29:32.000238Z

many things can be similar or equal but many other can't be and I don't recommend force to have a similar api.

2016-11-22T11:58:47.000239Z

@niwinz any help would be greatly appreciated. In terms of targeting node vs all js environments, I'd love for it to be generally portable so I'll put that in as a future goal, but node is my current use case and, as you said, node offers some specific speed and convenience that we couldn't get with browser restrictions.

2016-11-22T12:01:34.000240Z

With regards to keeping the APIs the same, I think you summed it up well. I'm going to shoot for them to be as close as possible but won't sacrifice sanity or usability at the expense of perfection.

niwinz 2016-11-22T12:04:15.000242Z

@leppert nice to know!

niwinz 2016-11-22T12:04:25.000243Z

I have an other question...

niwinz 2016-11-22T12:04:46.000244Z

any chance to not use EPL as license?

2016-11-22T12:05:08.000245Z

I'm open to other licenses. What are you thinking?

niwinz 2016-11-22T12:05:40.000246Z

apache2 if you are ok with permisiviness or MPL2.0 that is similar to EPL but better compatibility with gpl

niwinz 2016-11-22T12:08:48.000247Z

In any case, this is not big issue, I'm just not a big fan of EPL

niwinz 2016-11-22T12:09:24.000248Z

I'll try open a PR porting many stuff from dost to pal-core

2016-11-22T12:09:50.000249Z

@niwinz: I'm okay with it being as permissive as possible. Apache2 works for me; I'll add a commit with new licenses later this morning.

niwinz 2016-11-22T12:10:01.000250Z

nice!

niwinz 2016-11-22T12:10:07.000251Z

thanks!

2016-11-22T12:10:17.000252Z

Not a problem!