产权理论研究综述——基于“三权分置”改革分析

发布日期:2024-04-11

2024年3月31日晚,广州大学新结构经济学研究中心举行2023年下半学期第五次组内讨论。本次讨论中心硕士研究生生肖涵晨同学进行汇报,除中心相关老师及在读研究生外,同时吸引到南昌大学、南开大学等学校的老师同学参与,与本中心成员一道进行学习与交流。

肖涵晨同学讲的产权理论是一个综述,把数月来学的产权理论做了一个简约梳理。总的讲,昨晚的报告把科思以来的产权理论,包括巴泽尔的、阿尔钦的、张五常的、威廉姆森的讲了一通,最后落脚到中国农地的三权分置,对这个制度做了若干分析,甚至还讨论了历史上的公社制等等。总的讲,涵晨同学的思路是清楚的,研究的意识是强的,是力求把产权理论梳理出一个体系来的,这是值得肯定的。当然,也有若干要改进的地方。比如,马克思的所有权理论未涉及,我们历来认为,马克思的政治经济学及他的历史唯物主义是元命题,是本体,不研究不行。科思、阿尔钦、巴泽尔、张五常、威廉姆森的产权理论算作新古典学派,像科思、张五常等甚至由此引发出来了新的自由主义经济学说,即私产制度成为社会经济运行的“纲”了。涵晨同学意识到了产权理论可以用来分析公社制和承包制,这说明她在这个根本问题是“通透”的,但是,由于她未及理解经济史的结构与变迁,没能把产权理论与现实中的土地制度真正打通,提出的解释力是不够有力的,是不能说服人的。


新古典只是一个讨论产权问题的视角,不是全部。产权本质上是权利关系,也就是,它本质上是社会生产关系中的重要的内质,无疑地要联系社会生产力的发展阶段才能对此有一个深刻的体悟。即使光就新古典而言,未讨论哈特、未讨论委托代理理论、未讨论赫姆斯特姆、米尔格雷姆,此外,还有一个专门研究公共治理的学者,因为公共产权同样是一个重要的话题,这些文献要补上去,才比较全面。涵晨同学注意到了用合约结构去理解产权,这是对的,因为产权是一组权利,不是单个权利,而如果是一组权利,则必由缔约而成,涉及到许多的讨价还价,那么进一步,任何产权组合便都是合约结构,进一步引申开来,都是制度结构,微观上甚至表现为组织结构,它们之间是相通的,但不能混同,可以分辨出来的。而要把这些说明白,则只能回到历史中去找寻其具体形态,因此,要具备一些经济史的知识和背景,要研究历史上的具体的地权,要下功夫,要多阅读,这样,才能形成一条清晰的线索,则整个综述才能写得下来,写下来了有价值,不光人们愿看,杂志也愿意发表,就是说,要联系历史和现实来展现产权的逻辑。垄断权、特许权、定价权、食利者阶层所依凭的地产制度,等等,都在产权之列,都值得研究。

昨天讨论得比较热烈,例如,剑锋老师、宝亮老师、太超老师、赵燕老师、月圆老师等都做了很好的评论和拓展。邓宏图老师也做了系列评论。太超老师提到了做扎根研究的重要性,提出一方面读文献,一方面读社会之书,两者结合,才能研究真问题,研究得更深刻。最后,邓宏图老师做了简单总结。

(广州大学新结构经济学研究中心学术通讯员:肖涵晨撰)

下一篇:农业增效与农民增收——基于主粮种植的适度规模测算 ''标签解析异常!
Execution Timeout Expired. The timeout period elapsed prior to completion of the operation or the server is not responding.
at System.Data.SqlClient.SqlConnection.OnError(SqlException exception, Boolean breakConnection, Action`1 wrapCloseInAction) at System.Data.SqlClient.SqlInternalConnection.OnError(SqlException exception, Boolean breakConnection, Action`1 wrapCloseInAction) at System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning(TdsParserStateObject stateObj, Boolean callerHasConnectionLock, Boolean asyncClose) at System.Data.SqlClient.TdsParserStateObject.ReadSniError(TdsParserStateObject stateObj, UInt32 error) at System.Data.SqlClient.TdsParserStateObject.ReadSniSyncOverAsync() at System.Data.SqlClient.TdsParserStateObject.TryReadNetworkPacket() at System.Data.SqlClient.TdsParserStateObject.TryPrepareBuffer() at System.Data.SqlClient.TdsParserStateObject.TryReadByteArray(Byte[] buff, Int32 offset, Int32 len, Int32& totalRead) at System.Data.SqlClient.TdsParser.TrySkipPlpValue(UInt64 cb, TdsParserStateObject stateObj, UInt64& totalBytesSkipped) at System.Data.SqlClient.TdsParser.TrySkipValue(SqlMetaDataPriv md, Int32 columnOrdinal, TdsParserStateObject stateObj) at System.Data.SqlClient.TdsParser.TrySkipRow(_SqlMetaDataSet columns, Int32 startCol, TdsParserStateObject stateObj) at System.Data.SqlClient.SqlDataReader.TryCleanPartialRead() at System.Data.SqlClient.SqlDataReader.TryCloseInternal(Boolean closeReader) at System.Data.SqlClient.SqlDataReader.Close() at System.Data.Common.DbDataReader.Dispose(Boolean disposing) at System.Data.Common.DbDataReader.Dispose() at System.Data.Common.DbDataAdapter.FillInternal(DataSet dataset, DataTable[] datatables, Int32 startRecord, Int32 maxRecords, String srcTable, IDbCommand command, CommandBehavior behavior) at System.Data.Common.DbDataAdapter.Fill(DataSet dataSet, Int32 startRecord, Int32 maxRecords, String srcTable, IDbCommand command, CommandBehavior behavior) at System.Data.Common.DbDataAdapter.Fill(DataSet dataSet) at Whir.Repository.Database.Query(String sql, Object[] args) at Whir.Label.Dynamic.Content.GetColumnFileValue() at Whir.Label.Dynamic.Content.Render(HtmlTextWriter output)