Wehe ʻo IBM i CodeNet no nā ʻōnaehana aʻo mīkini e unuhi a hōʻoia i ke code

Ua wehe ʻo IBM i kāna CodeNet initiative, e manaʻo ana e hāʻawi i ka poʻe noiʻi me kahi ʻikepili e hiki ai iā lākou ke hoʻāʻo me ka hoʻohana ʻana i nā ʻenehana aʻo mīkini e hana i nā unuhi ʻōlelo papahana, nā mea hana code a me nā loiloi. Loaʻa i ka CodeNet kahi hōʻiliʻili o 14 miliona mau hiʻohiʻona code e hoʻoponopono i nā pilikia hoʻonohonoho maʻamau 4053. Ma ka huina holoʻokoʻa, aia ma kahi o 500 miliona mau laina code a uhi ʻia nā ʻōlelo papahana 55, nā ʻōlelo hou e like me C ++, Java, Python a me Go, a me nā ʻōlelo hoʻoilina me COBOL, Pascal a me FORTRAN. Hāʻawi ʻia nā mea hoʻomohala o ka papahana ma lalo o ka laikini Apache 2.0, a ua hoʻolālā ʻia nā pūʻulu ʻikepili e hoʻohele ʻia ma ke ʻano o ka lehulehu.

Hōʻike ʻia nā hiʻohiʻona a hoʻokō i nā algorithm like ʻole ma nā ʻōlelo papahana like ʻole. Manaʻo ʻia e kōkua ka pūʻulu i manaʻo ʻia e hoʻomaʻamaʻa i nā ʻōnaehana aʻo mīkini a hoʻomohala i nā mea hou i ke kahua o ka unuhi ʻana a me ka hoʻopaʻa ʻana i nā code mīkini, e like me ke kōkua ʻana o ka waihona kiʻi annotated ImageNet i ka hoʻomohala ʻana i ka ʻike kumu a me nā ʻōnaehana ʻike kamepiula. ʻO nā hoʻokūkū papahana like ʻole kekahi o nā kumu nui o ka hoʻokumu ʻana i ka hōʻiliʻili.

ʻAʻole like me nā unuhi kuʻuna, i hoʻokō ʻia ma muli o nā lula unuhi, hiki i nā ʻōnaehana aʻo mīkini ke hopu a noʻonoʻo i ka pōʻaiapili o ka hoʻohana code. I ka hoʻololi ʻana mai kekahi ʻōlelo hoʻolālā a i kekahi, ʻano koʻikoʻi ka pōʻaiapili e like me ka unuhi ʻana mai kekahi ʻōlelo kanaka i kekahi. ʻO kēia hemahema o ka noʻonoʻo ʻana i ka pōʻaiapili ka mea e pale ai i ka hoʻololi ʻana i nā code mai nā ʻōlelo hoʻoilina e like me COBOL.

ʻO ka loaʻa ʻana o kahi waihona nui o nā hoʻokō algorithm ma nā ʻōlelo like ʻole e kōkua i ka hana ʻana i nā ʻōnaehana aʻo mīkini honua, ma kahi o ka unuhi pololei ʻana ma waena o nā ʻōlelo kikoʻī, e hoʻopololei i kahi hōʻike kikoʻī o ke code, kūʻokoʻa i nā ʻōlelo papahana kikoʻī. Hiki ke hoʻohana ʻia ia ʻōnaehana ma ke ʻano he unuhi, unuhi i ke code i hoʻouna ʻia ma kekahi o nā ʻōlelo i kākoʻo ʻia i loko o kāna hōʻike abstract kūloko, a laila hiki ke hana ʻia ke code ma nā ʻōlelo he nui.

Hiki i ka ʻōnaehana ke hana i nā hoʻololi bidirectional. No ka laʻana, hoʻohana mau nā panakō a me nā keʻena aupuni i nā papahana ma ka ʻōlelo COBOL kahiko. Hiki i ka unuhi ʻōlelo aʻo mīkini ke hoʻololi i ka code COBOL i hōʻike Java, a inā pono, e unuhi hou i ka ʻāpana Java i ka code COBOL.

Ma waho aʻe o ka unuhi ʻana ma waena o nā ʻōlelo, ua ʻōlelo ʻia nā wahi o ka noi ʻana o CodeNet e like me ka hoʻokumu ʻana i nā ʻōnaehana huli code akamai a me ka automation o ka ʻike clone, a me ka hoʻomohala ʻana i nā mea hoʻoponopono a me nā ʻōnaehana hoʻoponopono code. Ma keʻano kūikawā, ua lako nā hiʻohiʻona i hōʻike ʻia ma CodeNet me ka metadata e wehewehe ana i nā hopena o ka hoʻāʻo ʻana, ka nui o ka papahana, ka hoʻohana ʻana i ka hoʻomanaʻo a me ka mokuʻāina, e hiki ai iā mākou ke hoʻokaʻawale i ke code pololei mai ke code me nā hewa (e hoʻokaʻawale i ke code pololei mai ka code hewa, ka Loaʻa ka hōʻiliʻili i nā hiʻohiʻona me nā hewa, ʻo ka hapa o ia mea he 29.5%). Hiki i ka ʻōnaehana aʻo mīkini ke lawe i kēia metadata no ka hoʻopuka ʻana i ke code maikaʻi loa a i ʻole e ʻike i nā regressions i loko o ke code i kālailai ʻia (hiki i ka ʻōnaehana ke hoʻomaopopo ʻaʻole i hoʻokō maikaʻi ʻia ka algorithm i ka code i waiho ʻia a i ʻole nā ​​hewa).

Source: opennet.ru

Pākuʻi i ka manaʻo hoʻopuka