Skip to content
This repository has been archived by the owner on Dec 10, 2020. It is now read-only.

Suggestion to use TypeScript #10

Closed
shamoons opened this issue May 10, 2018 · 12 comments
Closed

Suggestion to use TypeScript #10

shamoons opened this issue May 10, 2018 · 12 comments

Comments

@shamoons
Copy link

Description

We should consider using TypeScript for this, since it'll make data handling a bit easier to handle

Possible Implementation

UI

Reference Implementations / Links

@holgerd77
Copy link
Member

Hi @shamoons, we had various requests on this on different ethereumjs libraries (like e.g. ethereumjs/rlp#25). Things are a bit stalled on this front though since noone in the active ethereumjs team is a TypeScript user and so there is no one who could really maintain this.

If we want to finally have TypeScript support we (someone) have (has) to start in the different underlying ethereumjs libraries first (blockchain, block,...) and probably will also have to commit to support this for some time.

@LogvinovLeon
Copy link

@holgerd77 I would be happy to start on that and commit some of my time.
I'm on the dev tools team of 0xProject and we have our whole monorepo in TS. I've been using TS for more than a year in production in different environments. I've also just contributed external TS typings to ethereumjs-tx and ethereumjs-abi.
Would be happy though to move those typings directly into those projects.

@stefek99
Copy link

stefek99 commented Jun 1, 2018

TypeScript is a quantum leap.

In another job took me 2 days to become proficient.

Massive productivity gain onwards.

Full support to this proposal.

Lowest common denominator? HMMM...

@hnqlv
Copy link

hnqlv commented Jun 1, 2018

I'm a fan of TS but have mixed feelings about using it in open source projects. It becomes a barrier for a lot of developers keen to contribute. @LogvinovLeon is super talented I'm sure he would do great. Adopting TS would mean to have at least one or two weapons like him fully committed to this project. That's my two cents 😊

@LogvinovLeon
Copy link

@henriquea It's also hard for new developers to try to guess the types. When working with an untyped code you should be extremely careful and have much more context, because all the errors will reveal themselves only at runtime. I'm not saying TS is free. It adds overhead and complexity. I'm just saying that from all the people I know who've made this choice - I know no one who regrets it. (Disclaimer: I'm obviously biased)

@EdsonAlcala
Copy link

I have started to code TS recently, I could help and commit some of my time !

@shumailxyz
Copy link

Fully support the proposal. Though TS comes with complexity & overhead, I believe that the gains are significant compared to added overhead.

@holgerd77
Copy link
Member

Just doing some reading on this, started with:

Sounds doable also for existing projects, I have a strong tendency towards it.

@holgerd77
Copy link
Member

Just opened a generic issue on our organization repository: ethereumjs/organization#28

For a broader discussion you can also go there.

@tomonari-t
Copy link
Contributor

tomonari-t commented Jun 8, 2020

TS and JS can coexist and dependency libraries(ethereumjs-x) are written by TS.

So I think it's better to move to TS step by step.

It will be helpful when the number of project member increases.

@holgerd77
Copy link
Member

@ryanio will be the man to talk to for this 😄

@holgerd77
Copy link
Member

Fixed by #144 and following, will close.

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

8 participants