Re: [Nix-dev] Perl -> C++

2016-01-08 Thread zimbatm
On top of better defining the language it would also be helpful if the nix
commands could be classified in core vs plumbing like git does. In theory
only the core commands and the nixpkgs are required to bootstrap a
fully-functioning nix platform right ?

On Thu, 7 Jan 2016 at 13:18 Tomasz Czyż  wrote:

> <:)>
> Let's make each script a REST API in any language we want!
> 
>
> 2016-01-07 3:26 GMT+00:00 Jakob Gillich :
>
>> > I think there are few enough people who contribute to the nix repo as
>> it is now.
>>
>> That is actually an argument in favor of a rewrite, C++ is not very
>> popular in the Linux community. Contributing to Nix will become a lot
>> more attractive when it's written in a language that people actually
>> enjoy using. At least that's how I personally feel about it, I'm just
>> not interested in doing any C++ anymore.
>>
>> On Wed, Jan 6, 2016, at 09:26 PM, Vladimír Čunát wrote:
>> > On 01/06/2016 06:36 PM, stewart mackenzie wrote:
>> > > Shall we start defining the nix language?
>> >
>> > None of the perl stuff deals directly with the nix language, so that
>> > seems rather a much independent issue. Personally, I think there are few
>> > enough people who contribute to the nix repo as it is now. Do you think
>> > starting another implementation would help the quality or something
>> > else? Even in a horizon of up to several years?
>> >
>> > --Vladimir
>> >
>> >
>> > ___
>> > nix-dev mailing list
>> > nix-dev@lists.science.uu.nl
>> > http://lists.science.uu.nl/mailman/listinfo/nix-dev
>> > Email had 1 attachment:
>> > + smime.p7s
>> >   5k (application/pkcs7-signature)
>> ___
>> nix-dev mailing list
>> nix-dev@lists.science.uu.nl
>> http://lists.science.uu.nl/mailman/listinfo/nix-dev
>>
>
>
>
> --
> Tomasz Czyż
> ___
> nix-dev mailing list
> nix-dev@lists.science.uu.nl
> http://lists.science.uu.nl/mailman/listinfo/nix-dev
>
___
nix-dev mailing list
nix-dev@lists.science.uu.nl
http://lists.science.uu.nl/mailman/listinfo/nix-dev


Re: [Nix-dev] Perl -> C++

2016-01-07 Thread Tomasz Czyż
<:)>
Let's make each script a REST API in any language we want!


2016-01-07 3:26 GMT+00:00 Jakob Gillich :

> > I think there are few enough people who contribute to the nix repo as it
> is now.
>
> That is actually an argument in favor of a rewrite, C++ is not very
> popular in the Linux community. Contributing to Nix will become a lot
> more attractive when it's written in a language that people actually
> enjoy using. At least that's how I personally feel about it, I'm just
> not interested in doing any C++ anymore.
>
> On Wed, Jan 6, 2016, at 09:26 PM, Vladimír Čunát wrote:
> > On 01/06/2016 06:36 PM, stewart mackenzie wrote:
> > > Shall we start defining the nix language?
> >
> > None of the perl stuff deals directly with the nix language, so that
> > seems rather a much independent issue. Personally, I think there are few
> > enough people who contribute to the nix repo as it is now. Do you think
> > starting another implementation would help the quality or something
> > else? Even in a horizon of up to several years?
> >
> > --Vladimir
> >
> >
> > ___
> > nix-dev mailing list
> > nix-dev@lists.science.uu.nl
> > http://lists.science.uu.nl/mailman/listinfo/nix-dev
> > Email had 1 attachment:
> > + smime.p7s
> >   5k (application/pkcs7-signature)
> ___
> nix-dev mailing list
> nix-dev@lists.science.uu.nl
> http://lists.science.uu.nl/mailman/listinfo/nix-dev
>



-- 
Tomasz Czyż
___
nix-dev mailing list
nix-dev@lists.science.uu.nl
http://lists.science.uu.nl/mailman/listinfo/nix-dev


Re: [Nix-dev] Perl -> C++

2016-01-06 Thread Herwig Hochleitner
As I understand it, the primary motivation for reimplementing those tools
is to tighten the bootstrapping - cycle for new platforms. So while there
might many conveivable languages to do this in (I'd personally lean towards
an existing, self-hosted vm like pypy or racket), discussing just the
language misses the point.

The focus is getting NixOS onto a completely new platform, like "gcc just
started supporting it" new. That means no existing linux distro whose tools
we can reappropriate. It means manually cross-compiling everything you need
to get nix itself running. As an excercise, try to port nixos onto
Raspberry PI, without starting from the existing build or from Raspbian.

While I find Rust and other new languages appealing, any serious proposal
needs to start from the following points:
- what platforms does it support
- how hard is it to cross-compile
- how hard is it to target to new machine architectures
- how big is the build-time closure

I don't think anything comes close to C(++) for those points. I think the
best trade-off for high-level features might be in languages that transpile
to dependency-free C, like http://nim-lang.org/, maybe also
ultra-lightweight embedded vms like lua.
___
nix-dev mailing list
nix-dev@lists.science.uu.nl
http://lists.science.uu.nl/mailman/listinfo/nix-dev


Re: [Nix-dev] Perl -> C++

2016-01-06 Thread stewart mackenzie
Good god man, please stop using the term 'transpile', the correct term you
want is 'compile'.

If a new nix language backend is to be created the first step is to define
the nix language (using something like ABNF) as previously suggested.
Otherwise you open up a whole class of exploits, see Patterson et al on
Langsec.

On 7 Jan 2016 01:12, "Herwig Hochleitner"  wrote:
> As I understand it, the primary motivation for reimplementing those tools
is to tighten the bootstrapping - cycle for new platforms. So while there
might many conveivable languages to do this in (I'd personally lean towards
an existing, self-hosted vm like pypy or racket), discussing just the
language misses the point.

One advantage using LLVM based languages: Rust targets LLVM IR. This IR can
be compiled to any backend available to LLVM (given a robust enough
implementation).

nim-lang is a dependency, gcc is a dependency, the question is: is the
dependency widely available on many platforms? I personally don't care
about this as long as there is a simple short set of instructions to setup.

Shall we start defining the nix language?
___
nix-dev mailing list
nix-dev@lists.science.uu.nl
http://lists.science.uu.nl/mailman/listinfo/nix-dev


Re: [Nix-dev] Perl -> C++

2016-01-06 Thread Jakob Gillich
> I think there are few enough people who contribute to the nix repo as it is 
> now.

That is actually an argument in favor of a rewrite, C++ is not very
popular in the Linux community. Contributing to Nix will become a lot
more attractive when it's written in a language that people actually
enjoy using. At least that's how I personally feel about it, I'm just
not interested in doing any C++ anymore.

On Wed, Jan 6, 2016, at 09:26 PM, Vladimír Čunát wrote:
> On 01/06/2016 06:36 PM, stewart mackenzie wrote:
> > Shall we start defining the nix language?
> 
> None of the perl stuff deals directly with the nix language, so that
> seems rather a much independent issue. Personally, I think there are few
> enough people who contribute to the nix repo as it is now. Do you think
> starting another implementation would help the quality or something
> else? Even in a horizon of up to several years?
> 
> --Vladimir
> 
> 
> ___
> nix-dev mailing list
> nix-dev@lists.science.uu.nl
> http://lists.science.uu.nl/mailman/listinfo/nix-dev
> Email had 1 attachment:
> + smime.p7s
>   5k (application/pkcs7-signature)
___
nix-dev mailing list
nix-dev@lists.science.uu.nl
http://lists.science.uu.nl/mailman/listinfo/nix-dev


Re: [Nix-dev] Perl -> C++

2016-01-06 Thread Vladimír Čunát
On 01/06/2016 06:36 PM, stewart mackenzie wrote:
> Shall we start defining the nix language?

None of the perl stuff deals directly with the nix language, so that
seems rather a much independent issue. Personally, I think there are few
enough people who contribute to the nix repo as it is now. Do you think
starting another implementation would help the quality or something
else? Even in a horizon of up to several years?

--Vladimir




smime.p7s
Description: S/MIME Cryptographic Signature
___
nix-dev mailing list
nix-dev@lists.science.uu.nl
http://lists.science.uu.nl/mailman/listinfo/nix-dev


Re: [Nix-dev] Perl -> C++

2016-01-05 Thread Profpatsch
On 16-01-04 12:34am, em...@vfemail.net wrote:
> If someone is interested in a pure Rust implementation, then a prerequsite 
> would be to 
> come up with a rigorous definition of the language and all of the builtins, 
> and then 
> identifying the unix specific builitins and derivation behavior. I say this 
> because that 
> alone would be a worthwile effort, it is something that I would like to see 
> done, and 
> should be enough work to discourage anyone who thinks rewriting Nix is a good 
> idea.
> 
> Emery

fyi jwiegley is working on a Haskell implementation. 
https://github.com/jwiegley/hnix 
 
Of course this leads to discovery of undocumented bits of the language, 
e.g. the shadowing of identifiers imported by with vs. created by let. 


-- 
Proudly written in Mutt with Vim on NixOS.
Q: Why is this email five sentences or less?
A: http://five.sentenc.es
May take up to five days to read your message. If it’s urgent, call me.


signature.asc
Description: PGP signature
___
nix-dev mailing list
nix-dev@lists.science.uu.nl
http://lists.science.uu.nl/mailman/listinfo/nix-dev


Re: [Nix-dev] Perl -> C++

2016-01-03 Thread emery
If someone is interested in a pure Rust implementation, then a prerequsite 
would be to 
come up with a rigorous definition of the language and all of the builtins, and 
then 
identifying the unix specific builitins and derivation behavior. I say this 
because that 
alone would be a worthwile effort, it is something that I would like to see 
done, and 
should be enough work to discourage anyone who thinks rewriting Nix is a good 
idea.

Emery



signature.asc
Description: Digital signature
___
nix-dev mailing list
nix-dev@lists.science.uu.nl
http://lists.science.uu.nl/mailman/listinfo/nix-dev


Re: [Nix-dev] Perl -> C++

2016-01-03 Thread Mateusz Czaplinski
On Thu, Dec 31, 2015 at 12:13 PM, Domen Kožar  wrote:

> I really don't see a correlation between rewriting perl parts in C++ and
> why/how we should rewrite Nix in a different language. Could we separate
> the threads?
> Mateusz, did you get an answer to your questions to be able to start
> contributing?
>

No. I'll let myself restart the discussion with a separate post. My main
questions seem to have fallen victim to the secondary ones' attractiveness;
maybe splitting them as you suggest will make it easier for readers to
distinguish the threads.
___
nix-dev mailing list
nix-dev@lists.science.uu.nl
http://lists.science.uu.nl/mailman/listinfo/nix-dev


Re: [Nix-dev] Perl -> C++

2016-01-02 Thread Christian Theune
Hi,

smallest two cents possible: everyone has a favorite language and once done 
porting a shared project like Nix there’ll be the next language that we could 
port it to … ;)

I try to stay out of those discussions (but wanted to ad 0.0002€) as long as 
there’s no huge and clear advantage or problem fixed. For me this looks like 
bike-shedding about language choice.

Happy new year!

Theuni

> On 02 Jan 2016, at 12:12, stewart mackenzie  wrote:
> 
> hmm I suppose the real question is who'd be willing to do this?
> 
> 1) C++ only, makes nix more portable and reduces deps but adds C++ memory 
> model.
> 2) Rust adds deps, stop gapping till a long term stable port happens then 
> it'll be rust only.
> 3) Rust's windows support is still flaky (correct me pls)
> 4) Is nix that broken to call for a re-implementation?
> 5) There is enough C++ experience to maintain this project, do we have enough 
> willing Rust hands?
> 
> It really revolves around who's propared to sink time into this large amount 
> of work?
> Some feel it a waste of energy, others see it as a learning opportunity.
> 
> So let's put it out there - is there enough solidarity to get a pure Rust 
> implementation of nix out there? If not then we kill Rust in favour of C++ 
> for this thread?
> 
> P.S.  I'd love it if we could use Fractalide to implement Nix but now I'm 
> being bias!
> 
> On 2 Jan 2016 21:41, "Jakob Gillich"  > wrote:
> >
> > Nix doesn't have to be rewritten at once; you can rewrite the Perl stuff in 
> > Rust and call them from C++ code via a C interface[1].
> 
> I'm aware that Rust can replace Perl via FFI it's the added deps that concern 
> me
> 
> > This is what Mozilla does in Firefox, which is also mostly C++. So the 
> > question should be, do we want to get rid of C++ in the long term?
> 
> ___
> nix-dev mailing list
> nix-dev@lists.science.uu.nl
> http://lists.science.uu.nl/mailman/listinfo/nix-dev

--
Christian Theune · c...@flyingcircus.io · +49 345 219401 0
Flying Circus Internet Operations GmbH · http://flyingcircus.io
Forsterstraße 29 · 06112 Halle (Saale) · Deutschland
HR Stendal HRB 21169 · Geschäftsführer: Christian. Theune, Christian. Zagrodnick



signature.asc
Description: Message signed with OpenPGP using GPGMail
___
nix-dev mailing list
nix-dev@lists.science.uu.nl
http://lists.science.uu.nl/mailman/listinfo/nix-dev


Re: [Nix-dev] Perl -> C++

2016-01-02 Thread Jakob Gillich
Nix doesn't have to be rewritten at once; you can rewrite the Perl stuff
in Rust and call them from C++ code via a C interface[1]. This is what
Mozilla does in Firefox, which is also mostly C++. So the question
should be, do we want to get rid of C++ in the long term?

[1]: https://doc.rust-lang.org/book/ffi.html


On Thu, Dec 31, 2015, at 12:36 PM, Luca Bruno wrote:
> Nix is already C++. It's just that some tools are written in perl. Nix
> certainly isn't going to be rewritten in another language, at this
> time would be a waste of efforts in my opinion. The perl->c++ is about
> reducing the nix closure even more, but translating perl tools to c++.
>
> On Thu, Dec 31, 2015 at 12:33 PM, Tomasz Czyż
>  wrote:
>> Domen, I think this evolved from why perl -> c++ not perl -> X. Not
>> sure this went to nix -> X. But if decision was already made that c++
>> is the one, probably discussion is over :)?
>>
>
> _
> nix-dev mailing list nix-dev@lists.science.uu.nl
> http://lists.science.uu.nl/mailman/listinfo/nix-dev
___
nix-dev mailing list
nix-dev@lists.science.uu.nl
http://lists.science.uu.nl/mailman/listinfo/nix-dev


Re: [Nix-dev] Perl -> C++

2016-01-02 Thread stewart mackenzie
hmm I suppose the real question is who'd be willing to do this?

1) C++ only, makes nix more portable and reduces deps but adds C++ memory
model.
2) Rust adds deps, stop gapping till a long term stable port happens then
it'll be rust only.
3) Rust's windows support is still flaky (correct me pls)
4) Is nix that broken to call for a re-implementation?
5) There is enough C++ experience to maintain this project, do we have
enough willing Rust hands?

It really revolves around who's propared to sink time into this large
amount of work?
Some feel it a waste of energy, others see it as a learning opportunity.

So let's put it out there - is there enough solidarity to get a pure Rust
implementation of nix out there? If not then we kill Rust in favour of C++
for this thread?

P.S.  I'd love it if we could use Fractalide to implement Nix but now I'm
being bias!

On 2 Jan 2016 21:41, "Jakob Gillich"  wrote:
>
> Nix doesn't have to be rewritten at once; you can rewrite the Perl stuff
in Rust and call them from C++ code via a C interface[1].

I'm aware that Rust can replace Perl via FFI it's the added deps that
concern me

> This is what Mozilla does in Firefox, which is also mostly C++. So the
question should be, do we want to get rid of C++ in the long term?
___
nix-dev mailing list
nix-dev@lists.science.uu.nl
http://lists.science.uu.nl/mailman/listinfo/nix-dev


Re: [Nix-dev] Perl -> C++

2016-01-02 Thread Jookia
On Sat, Jan 02, 2016 at 10:12:50PM +1100, stewart mackenzie wrote:
> I'm aware that Rust can replace Perl via FFI it's the added deps that
> concern me

Could you elaborate on this? I've seen a lot of talk about dependencies but what
exactly is the problem? Portability sounds like a genuine concern, but you can
still be portable with a lot of dependencies as long as they're portable.
___
nix-dev mailing list
nix-dev@lists.science.uu.nl
http://lists.science.uu.nl/mailman/listinfo/nix-dev


Re: [Nix-dev] Perl -> C++

2016-01-02 Thread Harald van Dijk
On 02/01/2016 18:44, Jookia wrote:
> On Sat, Jan 02, 2016 at 10:12:50PM +1100, stewart mackenzie wrote:
>> I'm aware that Rust can replace Perl via FFI it's the added deps that
>> concern me
>
> Could you elaborate on this? I've seen a lot of talk about dependencies but 
> what
> exactly is the problem? Portability sounds like a genuine concern, but you can
> still be portable with a lot of dependencies as long as they're portable.

If I want to compile and run Nix on a non-NixOS distribution, I would 
need to first install Rust, preferably from that distro's packages. 
There's a risk that the distro doesn't provide Rust at all. There's a 
risk that if the distro does provide Rust, then it isn't the right 
version for Nix. In either of those cases, I would then first need to 
install Rust without the help of *any* package manager. That's a serious 
obstacle for new users to getting started with Nix. That's a potentially 
serious obstacle for existing users to converting other systems to 
Nix/NixOS as well.

The current dependencies (bzip2, curl, sqlite, perl) could already be a 
small problem for the same reason, but at least it is a list of very 
stable software that's widely available in pretty much all package 
repositories. Rust is not yet in the same category, as far as I know.

Cheers,
Harald van Dijk
___
nix-dev mailing list
nix-dev@lists.science.uu.nl
http://lists.science.uu.nl/mailman/listinfo/nix-dev


Re: [Nix-dev] Perl -> C++

2016-01-01 Thread stewart mackenzie
On 31 Dec 2015 22:36, "Luca Bruno"  wrote:
> Nix is already C++. It's just that some tools are written in perl.

I missed this information in the beginning; yes, C++ sensible.
___
nix-dev mailing list
nix-dev@lists.science.uu.nl
http://lists.science.uu.nl/mailman/listinfo/nix-dev


Re: [Nix-dev] Perl -> C++

2016-01-01 Thread zimbatm
C++ supports on whole lot more platforms than the proposed alternatives. If
Nix is to become a universal package manager it seems important as a
feature.
That being said, we're bound to have security issues if the nix-daemon is
it's written in an unsafe language.

On Thu, 31 Dec 2015 at 11:36 Luca Bruno  wrote:

> Nix is already C++. It's just that some tools are written in perl. Nix
> certainly isn't going to be rewritten in another language, at this time
> would be a waste of efforts in my opinion.
> The perl->c++ is about reducing the nix closure even more, but translating
> perl tools to c++.
>
>
> On Thu, Dec 31, 2015 at 12:33 PM, Tomasz Czyż 
> wrote:
>
>> Domen, I think this evolved from why perl -> c++ not perl -> X. Not sure
>> this went to nix -> X.
>> But if decision was already made that c++ is the one, probably discussion
>> is over :)?
>>
>
> ___
> nix-dev mailing list
> nix-dev@lists.science.uu.nl
> http://lists.science.uu.nl/mailman/listinfo/nix-dev
>
___
nix-dev mailing list
nix-dev@lists.science.uu.nl
http://lists.science.uu.nl/mailman/listinfo/nix-dev


Re: [Nix-dev] Perl -> C++

2015-12-31 Thread Tomasz Czyż
Why not haskell?

It's functional (like nix), can be compiled, in nixos, there is already
infrastructure for it.

2015-12-31 10:26 GMT+00:00 Anderson Torres :

> The main motivation is to get rid of dependencies. It would greatly
> help in porting Nix to other architectures and systems.
>
> 2015-12-31 4:06 GMT-02:00 stewart mackenzie :
> > This is our usage of Rust: https://github.com/fractalide/rustfbp
> > The nix scripts to build all the rust components with capnproto
> > dependencies in a deterministic fashion:
> > https://github.com/fractalide/fractalide
> > we use nix basically to replace make, it's still a WIP.
> >
> > I'm okay which most implementation languages used for nix, including
> > Perl. I'm merely sharing my opinion on Rust.
> > Though I would _like_ to see Rust used because of the barrage of
> > niceties associated with it.
> >
> > peace
> > /sjm
> >
> > On Thu, Dec 31, 2015 at 3:36 PM, Shea Levy  wrote:
> >> Nothing's stopping you from starting the conversion. If it's clearly
> >> better, it will be a lot easier to convince people once you have actual
> >> code to show.
> > ___
> > nix-dev mailing list
> > nix-dev@lists.science.uu.nl
> > http://lists.science.uu.nl/mailman/listinfo/nix-dev
> ___
> nix-dev mailing list
> nix-dev@lists.science.uu.nl
> http://lists.science.uu.nl/mailman/listinfo/nix-dev
>



-- 
Tomasz Czyż
___
nix-dev mailing list
nix-dev@lists.science.uu.nl
http://lists.science.uu.nl/mailman/listinfo/nix-dev


Re: [Nix-dev] Perl -> C++

2015-12-31 Thread Tomasz Czyż
Domen, I think this evolved from why perl -> c++ not perl -> X. Not sure
this went to nix -> X.
But if decision was already made that c++ is the one, probably discussion
is over :)?

2015-12-31 11:13 GMT+00:00 Domen Kožar :

> I really don't see a correlation between rewriting perl parts in C++ and
> why/how we should rewrite Nix in a different language. Could we separate
> the threads?
>
>
> Mateusz, did you get an answer to your questions to be able to start
> contributing?
>
> On Thu, Dec 31, 2015 at 12:05 PM, stewart mackenzie 
> wrote:
>
>> Language features of the implementation language are generally lost when
>> implementing a new language.
>>
>> So we are left with: "can be compiled and existing infrastructure."
>>
>> Leveraging LLVM would be astute.
>>
>> On 31 Dec 2015 21:47, "Tomasz Czyż"  wrote:
>> >
>> > Why not haskell?
>> >
>> > It's functional (like nix), can be compiled, in nixos, there is already
>> infrastructure for it.
>>
>> ___
>> nix-dev mailing list
>> nix-dev@lists.science.uu.nl
>> http://lists.science.uu.nl/mailman/listinfo/nix-dev
>>
>>
>


-- 
Tomasz Czyż
___
nix-dev mailing list
nix-dev@lists.science.uu.nl
http://lists.science.uu.nl/mailman/listinfo/nix-dev


Re: [Nix-dev] Perl -> C++

2015-12-31 Thread Domen Kožar
I really don't see a correlation between rewriting perl parts in C++ and
why/how we should rewrite Nix in a different language. Could we separate
the threads?


Mateusz, did you get an answer to your questions to be able to start
contributing?

On Thu, Dec 31, 2015 at 12:05 PM, stewart mackenzie 
wrote:

> Language features of the implementation language are generally lost when
> implementing a new language.
>
> So we are left with: "can be compiled and existing infrastructure."
>
> Leveraging LLVM would be astute.
>
> On 31 Dec 2015 21:47, "Tomasz Czyż"  wrote:
> >
> > Why not haskell?
> >
> > It's functional (like nix), can be compiled, in nixos, there is already
> infrastructure for it.
>
> ___
> nix-dev mailing list
> nix-dev@lists.science.uu.nl
> http://lists.science.uu.nl/mailman/listinfo/nix-dev
>
>
___
nix-dev mailing list
nix-dev@lists.science.uu.nl
http://lists.science.uu.nl/mailman/listinfo/nix-dev


Re: [Nix-dev] Perl -> C++

2015-12-31 Thread Anderson Torres
The main motivation is to get rid of dependencies. It would greatly
help in porting Nix to other architectures and systems.

2015-12-31 4:06 GMT-02:00 stewart mackenzie :
> This is our usage of Rust: https://github.com/fractalide/rustfbp
> The nix scripts to build all the rust components with capnproto
> dependencies in a deterministic fashion:
> https://github.com/fractalide/fractalide
> we use nix basically to replace make, it's still a WIP.
>
> I'm okay which most implementation languages used for nix, including
> Perl. I'm merely sharing my opinion on Rust.
> Though I would _like_ to see Rust used because of the barrage of
> niceties associated with it.
>
> peace
> /sjm
>
> On Thu, Dec 31, 2015 at 3:36 PM, Shea Levy  wrote:
>> Nothing's stopping you from starting the conversion. If it's clearly
>> better, it will be a lot easier to convince people once you have actual
>> code to show.
> ___
> nix-dev mailing list
> nix-dev@lists.science.uu.nl
> http://lists.science.uu.nl/mailman/listinfo/nix-dev
___
nix-dev mailing list
nix-dev@lists.science.uu.nl
http://lists.science.uu.nl/mailman/listinfo/nix-dev


Re: [Nix-dev] Perl -> C++

2015-12-31 Thread Luca Bruno
Nix is already C++. It's just that some tools are written in perl. Nix
certainly isn't going to be rewritten in another language, at this time
would be a waste of efforts in my opinion.
The perl->c++ is about reducing the nix closure even more, but translating
perl tools to c++.

On Thu, Dec 31, 2015 at 12:33 PM, Tomasz Czyż  wrote:

> Domen, I think this evolved from why perl -> c++ not perl -> X. Not sure
> this went to nix -> X.
> But if decision was already made that c++ is the one, probably discussion
> is over :)?
>
___
nix-dev mailing list
nix-dev@lists.science.uu.nl
http://lists.science.uu.nl/mailman/listinfo/nix-dev


Re: [Nix-dev] Perl -> C++

2015-12-31 Thread stewart mackenzie
Language features of the implementation language are generally lost when
implementing a new language.

So we are left with: "can be compiled and existing infrastructure."

Leveraging LLVM would be astute.

On 31 Dec 2015 21:47, "Tomasz Czyż"  wrote:
>
> Why not haskell?
>
> It's functional (like nix), can be compiled, in nixos, there is already
infrastructure for it.
___
nix-dev mailing list
nix-dev@lists.science.uu.nl
http://lists.science.uu.nl/mailman/listinfo/nix-dev


Re: [Nix-dev] Perl -> C++

2015-12-30 Thread Shea Levy
Nothing's stopping you from starting the conversion. If it's clearly 
better, it will be a lot easier to convince people once you have actual 
code to show.

On 2015-12-30 20:30, stewart mackenzie wrote:
> On Thu, Dec 31, 2015 at 4:04 AM, jeaye  wrote:
>> As C++ devs, I think it's important that we consider using a safer, 
>> more
>> functional language everywhere we can. Rust does this very well, to 
>> the
>> point where me enumerating its benefits would be redundant. The 
>> point I
>> want to make is that, if there's ever a choice between C++ and Rust, 
>> and
>> some niche features like template meta-programming aren't required, 
>> Rust
>> is the safer, more modern option.
>
> In agreement.
>
> Adopting Rust turned out to be one of the better moves we made.
> ___
> nix-dev mailing list
> nix-dev@lists.science.uu.nl
> http://lists.science.uu.nl/mailman/listinfo/nix-dev

___
nix-dev mailing list
nix-dev@lists.science.uu.nl
http://lists.science.uu.nl/mailman/listinfo/nix-dev


Re: [Nix-dev] Perl -> C++

2015-12-30 Thread Arseniy Seroka

Also, are you considering using some different languages (too?)?

AFAIK we need c++ only (because of dependences).

--
Sincerely,
Arseniy Seroka



On 30 December 2015 19:15:54 Mateusz Czaplinski  wrote:


I've seen the https://github.com/NixOS/nix/issues/341 issue. I'm a total
newbie to Nix, and I'd like to try learning the codebase by contributing to
this issue. Could anybody possibly help me kickstart on that by giving some
hints towards:
  - how I might try to setup a dev environment for that, ideally in NixOS?
  - where in the codebase can I find some "main entry point" to "core nix
functionalities"?
  - what would you suggest I start translating first? (which .pm files) I'm
open to all suggestions, including "hard but very useful" ones, as well as
"easy but close to useless".

Also, are you considering using some different languages (too?)? (Rust? Go?
Lua in place of Perl?) I know C++ quite good, and thus I'm painfully aware
of its flaws. (By the way, which version & toolchain are you assuming for
Nix development? and do you have some coding conventions doc?) I'm fairly
experienced in Go (more) and Lua (less), so I'm happy to discuss them; I
have no experience with Rust, but I believe it has some nice advantages
(including that IIUC it could be introduced gradually).

Thanks,
/Mateusz.



--
___
nix-dev mailing list
nix-dev@lists.science.uu.nl
http://lists.science.uu.nl/mailman/listinfo/nix-dev

___
nix-dev mailing list
nix-dev@lists.science.uu.nl
http://lists.science.uu.nl/mailman/listinfo/nix-dev


[Nix-dev] Perl -> C++

2015-12-30 Thread Mateusz Czaplinski
I've seen the https://github.com/NixOS/nix/issues/341 issue. I'm a total
newbie to Nix, and I'd like to try learning the codebase by contributing to
this issue. Could anybody possibly help me kickstart on that by giving some
hints towards:
  - how I might try to setup a dev environment for that, ideally in NixOS?
  - where in the codebase can I find some "main entry point" to "core nix
functionalities"?
  - what would you suggest I start translating first? (which .pm files) I'm
open to all suggestions, including "hard but very useful" ones, as well as
"easy but close to useless".

Also, are you considering using some different languages (too?)? (Rust? Go?
Lua in place of Perl?) I know C++ quite good, and thus I'm painfully aware
of its flaws. (By the way, which version & toolchain are you assuming for
Nix development? and do you have some coding conventions doc?) I'm fairly
experienced in Go (more) and Lua (less), so I'm happy to discuss them; I
have no experience with Rust, but I believe it has some nice advantages
(including that IIUC it could be introduced gradually).

Thanks,
/Mateusz.
___
nix-dev mailing list
nix-dev@lists.science.uu.nl
http://lists.science.uu.nl/mailman/listinfo/nix-dev


Re: [Nix-dev] Perl -> C++

2015-12-30 Thread Arseniy Seroka
In **my opinion** go is not a good language. And lua is not a language that 
is needed in that kind of program.


And in general - Eelco uses c++ in nix, and that's why we need this language.

--
Sincerely,
Arseniy Seroka



On 30 December 2015 23:14:11 Mateusz Czaplinski  wrote:


On Wed, Dec 30, 2015 at 5:42 PM, Arseniy Seroka  wrote:


> Also, are you considering using some different languages (too?)?
AFAIK we need c++ only (because of dependences).


This may still leave the question open on:
- gccgo? (distributed with GCC)
- Lua? (you usually embed Lua, e.g. like boost, so no additional
dependencies)

And just to remind, I'm still acutely interested in help/hints with all the
primary questions.

Thanks,
/Mateusz.

On 30 December 2015 19:15:54 Mateusz Czaplinski  wrote:



I've seen the https://github.com/NixOS/nix/issues/341 issue. I'm a total
newbie to Nix, and I'd like to try learning the codebase by contributing to
this issue. Could anybody possibly help me kickstart on that by giving some
hints towards:
  - how I might try to setup a dev environment for that, ideally in NixOS?
  - where in the codebase can I find some "main entry point" to "core nix
functionalities"?
  - what would you suggest I start translating first? (which .pm files)
I'm open to all suggestions, including "hard but very useful" ones, as well
as "easy but close to useless".

Also, are you considering using some different languages (too?)? (Rust?
Go? Lua in place of Perl?) I know C++ quite good, and thus I'm painfully
aware of its flaws. (By the way, which version & toolchain are you assuming
for Nix development? and do you have some coding conventions doc?) I'm
fairly experienced in Go (more) and Lua (less), so I'm happy to discuss
them; I have no experience with Rust, but I believe it has some nice
advantages (including that IIUC it could be introduced gradually).

Thanks,
/Mateusz.
___
nix-dev mailing list
nix-dev@lists.science.uu.nl
http:/​/​lists​.​science​.​uu​.​nl/​mailman/​listinfo/​nix-dev







--
___
nix-dev mailing list
nix-dev@lists.science.uu.nl
http://lists.science.uu.nl/mailman/listinfo/nix-dev

___
nix-dev mailing list
nix-dev@lists.science.uu.nl
http://lists.science.uu.nl/mailman/listinfo/nix-dev


Re: [Nix-dev] Perl -> C++

2015-12-30 Thread Mateusz Czaplinski
On Wed, Dec 30, 2015 at 5:42 PM, Arseniy Seroka  wrote:

> > Also, are you considering using some different languages (too?)?
> AFAIK we need c++ only (because of dependences).
>
This may still leave the question open on:
- gccgo? (distributed with GCC)
- Lua? (you usually embed Lua, e.g. like boost, so no additional
dependencies)

And just to remind, I'm still acutely interested in help/hints with all the
primary questions.

Thanks,
/Mateusz.

On 30 December 2015 19:15:54 Mateusz Czaplinski  wrote:
>
>> I've seen the https://github.com/NixOS/nix/issues/341 issue. I'm a total
>> newbie to Nix, and I'd like to try learning the codebase by contributing to
>> this issue. Could anybody possibly help me kickstart on that by giving some
>> hints towards:
>>   - how I might try to setup a dev environment for that, ideally in NixOS?
>>   - where in the codebase can I find some "main entry point" to "core nix
>> functionalities"?
>>   - what would you suggest I start translating first? (which .pm files)
>> I'm open to all suggestions, including "hard but very useful" ones, as well
>> as "easy but close to useless".
>>
>> Also, are you considering using some different languages (too?)? (Rust?
>> Go? Lua in place of Perl?) I know C++ quite good, and thus I'm painfully
>> aware of its flaws. (By the way, which version & toolchain are you assuming
>> for Nix development? and do you have some coding conventions doc?) I'm
>> fairly experienced in Go (more) and Lua (less), so I'm happy to discuss
>> them; I have no experience with Rust, but I believe it has some nice
>> advantages (including that IIUC it could be introduced gradually).
>>
>> Thanks,
>> /Mateusz.
>> ___
>> nix-dev mailing list
>> nix-dev@lists.science.uu.nl
>> http:/​/​lists​.​science​.​uu​.​nl/​mailman/​listinfo/​nix-dev
>> 
>>
>>
___
nix-dev mailing list
nix-dev@lists.science.uu.nl
http://lists.science.uu.nl/mailman/listinfo/nix-dev


Re: [Nix-dev] Perl -> C++

2015-12-30 Thread Kevin Cox
On Dec 30, 2015 21:21, "Arseniy Seroka"  wrote:
>
> In **my opinion** go is not a good language. And lua is not a language
that is needed in that kind of program.
>

I have to agree with this. Rust is awesome for it's strong type system but
c++ is so standard that it might be worth sticking with it.
___
nix-dev mailing list
nix-dev@lists.science.uu.nl
http://lists.science.uu.nl/mailman/listinfo/nix-dev


Re: [Nix-dev] Perl -> C++

2015-12-30 Thread jeaye
On Wed, Dec 30, 2015 at 04:13:08PM -0500, Kevin Cox wrote:
>On Dec 30, 2015 21:21, "Arseniy Seroka" <[1]ars.ser...@gmail.com> wrote:
>>
>> In **my opinion** go is not a good language. And lua is not a language
>that is needed in that kind of program.
>>
> 
>I have to agree with this. Rust is awesome for it's strong type system but
>c++ is so standard that it might be worth sticking with it.

As C++ devs, I think it's important that we consider using a safer, more
functional language everywhere we can. Rust does this very well, to the
point where me enumerating its benefits would be redundant. The point I
want to make is that, if there's ever a choice between C++ and Rust, and
some niche features like template meta-programming aren't required, Rust
is the safer, more modern option.

If Nix is ever to adopt Rust, as a C++ replacement or otherwise, there's
no better time than the present.
___
nix-dev mailing list
nix-dev@lists.science.uu.nl
http://lists.science.uu.nl/mailman/listinfo/nix-dev


Re: [Nix-dev] Perl -> C++

2015-12-30 Thread stewart mackenzie
On Thu, Dec 31, 2015 at 4:04 AM, jeaye  wrote:
> As C++ devs, I think it's important that we consider using a safer, more
> functional language everywhere we can. Rust does this very well, to the
> point where me enumerating its benefits would be redundant. The point I
> want to make is that, if there's ever a choice between C++ and Rust, and
> some niche features like template meta-programming aren't required, Rust
> is the safer, more modern option.

In agreement.

Adopting Rust turned out to be one of the better moves we made.
___
nix-dev mailing list
nix-dev@lists.science.uu.nl
http://lists.science.uu.nl/mailman/listinfo/nix-dev


Re: [Nix-dev] Perl -> C++

2015-12-30 Thread stewart mackenzie
On Thu, Dec 31, 2015 at 7:21 AM, Arseniy Seroka  wrote:
> And in general - Eelco uses c++ in nix, and that's why we need this
> language.

hmm in a rather tongue in cheek fashion, we've all had to learn
Eelco's Nix Expression language, I'm sure he could learn a language
the community chooses :-)
___
nix-dev mailing list
nix-dev@lists.science.uu.nl
http://lists.science.uu.nl/mailman/listinfo/nix-dev