What should a good parallel language express?