since import { NonEmptyArray , nonEmptyArray , URI , cons , head , tail } from 'fp-ts/lib/NonEmptyArray' ; import { These , both } from 'fp-ts/lib/These' ; import { alignArray } from '../Align/Array' ; import { Semialign1 } from './' ; since export const semialignNonEmptyArray = { URI , map : nonEmptyArray . map , example since alignWith : < A , B , C > ( fa , fb , f ) : NonEmptyArray < C > => { return cons ( f ( both ( head ( fa ) , head ( fb ) ) ) , alignArray . alignWith ( tail ( fa ) , tail ( fb ) , f ) ) ; } , example since align : < A , B > ( fa , fb ) : NonEmptyArray < These < A , B > > => { return cons ( both ( head ( fa ) , head ( fb ) ) , alignArray . align ( tail ( fa ) , tail ( fb ) ) ) ; } } ;