CINXE.COM
Notre Dame Philosophical Reviews | University of Notre Dame
<!doctype html> <html lang="en" class="no-js"> <head> <meta charset="utf-8"> <script type="text/javascript">window.NREUM||(NREUM={});NREUM.info={"beacon":"bam.nr-data.net","errorBeacon":"bam.nr-data.net","licenseKey":"db51011748","applicationID":"9339","transactionName":"Il8IQ0sLDVVVR05QXQ9UE1RNCxMWXVQIXQ==","queueTime":0,"applicationTime":350,"agent":""}</script> <script type="text/javascript">(window.NREUM||(NREUM={})).init={ajax:{deny_list:["bam.nr-data.net"]}};(window.NREUM||(NREUM={})).loader_config={licenseKey:"db51011748",applicationID:"9339"};;/*! For license information please see nr-loader-rum-1.274.0.min.js.LICENSE.txt */ (()=>{var e,t,r={8122:(e,t,r)=>{"use strict";r.d(t,{a:()=>i});var n=r(944);function i(e,t){try{if(!e||"object"!=typeof e)return(0,n.R)(3);if(!t||"object"!=typeof t)return(0,n.R)(4);const r=Object.create(Object.getPrototypeOf(t),Object.getOwnPropertyDescriptors(t)),o=0===Object.keys(r).length?e:r;for(let a in o)if(void 0!==e[a])try{if(null===e[a]){r[a]=null;continue}Array.isArray(e[a])&&Array.isArray(t[a])?r[a]=Array.from(new Set([...e[a],...t[a]])):"object"==typeof e[a]&&"object"==typeof t[a]?r[a]=i(e[a],t[a]):r[a]=e[a]}catch(e){(0,n.R)(1,e)}return r}catch(e){(0,n.R)(2,e)}}},2555:(e,t,r)=>{"use strict";r.d(t,{Vp:()=>c,fn:()=>s,x1:()=>u});var n=r(384),i=r(8122);const o={beacon:n.NT.beacon,errorBeacon:n.NT.errorBeacon,licenseKey:void 0,applicationID:void 0,sa:void 0,queueTime:void 0,applicationTime:void 0,ttGuid:void 0,user:void 0,account:void 0,product:void 0,extra:void 0,jsAttributes:{},userAttributes:void 0,atts:void 0,transactionName:void 0,tNamePlain:void 0},a={};function s(e){try{const t=c(e);return!!t.licenseKey&&!!t.errorBeacon&&!!t.applicationID}catch(e){return!1}}function c(e){if(!e)throw new Error("All info objects require an agent identifier!");if(!a[e])throw new Error("Info for ".concat(e," was never set"));return a[e]}function u(e,t){if(!e)throw new Error("All info objects require an agent identifier!");a[e]=(0,i.a)(t,o);const r=(0,n.nY)(e);r&&(r.info=a[e])}},9417:(e,t,r)=>{"use strict";r.d(t,{D0:()=>g,gD:()=>h,xN:()=>p});var n=r(993);const i=e=>{if(!e||"string"!=typeof e)return!1;try{document.createDocumentFragment().querySelector(e)}catch{return!1}return!0};var o=r(2614),a=r(944),s=r(384),c=r(8122);const u="[data-nr-mask]",d=()=>{const e={mask_selector:"*",block_selector:"[data-nr-block]",mask_input_options:{color:!1,date:!1,"datetime-local":!1,email:!1,month:!1,number:!1,range:!1,search:!1,tel:!1,text:!1,time:!1,url:!1,week:!1,textarea:!1,select:!1,password:!0}};return{ajax:{deny_list:void 0,block_internal:!0,enabled:!0,harvestTimeSeconds:10,autoStart:!0},distributed_tracing:{enabled:void 0,exclude_newrelic_header:void 0,cors_use_newrelic_header:void 0,cors_use_tracecontext_headers:void 0,allowed_origins:void 0},feature_flags:[],generic_events:{enabled:!0,harvestTimeSeconds:30,autoStart:!0},harvest:{tooManyRequestsDelay:60},jserrors:{enabled:!0,harvestTimeSeconds:10,autoStart:!0},logging:{enabled:!0,harvestTimeSeconds:10,autoStart:!0,level:n.p_.INFO},metrics:{enabled:!0,autoStart:!0},obfuscate:void 0,page_action:{enabled:!0},page_view_event:{enabled:!0,autoStart:!0},page_view_timing:{enabled:!0,harvestTimeSeconds:30,autoStart:!0},performance:{capture_marks:!1,capture_measures:!1},privacy:{cookies_enabled:!0},proxy:{assets:void 0,beacon:void 0},session:{expiresMs:o.wk,inactiveMs:o.BB},session_replay:{autoStart:!0,enabled:!1,harvestTimeSeconds:60,preload:!1,sampling_rate:10,error_sampling_rate:100,collect_fonts:!1,inline_images:!1,fix_stylesheets:!0,mask_all_inputs:!0,get mask_text_selector(){return e.mask_selector},set mask_text_selector(t){i(t)?e.mask_selector="".concat(t,",").concat(u):""===t||null===t?e.mask_selector=u:(0,a.R)(5,t)},get block_class(){return"nr-block"},get ignore_class(){return"nr-ignore"},get mask_text_class(){return"nr-mask"},get block_selector(){return e.block_selector},set block_selector(t){i(t)?e.block_selector+=",".concat(t):""!==t&&(0,a.R)(6,t)},get mask_input_options(){return e.mask_input_options},set mask_input_options(t){t&&"object"==typeof t?e.mask_input_options={...t,password:!0}:(0,a.R)(7,t)}},session_trace:{enabled:!0,harvestTimeSeconds:10,autoStart:!0},soft_navigations:{enabled:!0,harvestTimeSeconds:10,autoStart:!0},spa:{enabled:!0,harvestTimeSeconds:10,autoStart:!0},ssl:void 0,user_actions:{enabled:!0}}},l={},f="All configuration objects require an agent identifier!";function g(e){if(!e)throw new Error(f);if(!l[e])throw new Error("Configuration for ".concat(e," was never set"));return l[e]}function p(e,t){if(!e)throw new Error(f);l[e]=(0,c.a)(t,d());const r=(0,s.nY)(e);r&&(r.init=l[e])}function h(e,t){if(!e)throw new Error(f);var r=g(e);if(r){for(var n=t.split("."),i=0;i<n.length-1;i++)if("object"!=typeof(r=r[n[i]]))return;r=r[n[n.length-1]]}return r}},3371:(e,t,r)=>{"use strict";r.d(t,{V:()=>f,f:()=>l});var n=r(8122),i=r(384),o=r(6154),a=r(9324);let s=0;const c={buildEnv:a.F3,distMethod:a.Xs,version:a.xv,originTime:o.WN},u={customTransaction:void 0,disabled:!1,isolatedBacklog:!1,loaderType:void 0,maxBytes:3e4,onerror:void 0,ptid:void 0,releaseIds:{},appMetadata:{},session:void 0,denyList:void 0,timeKeeper:void 0,obfuscator:void 0},d={};function l(e){if(!e)throw new Error("All runtime objects require an agent identifier!");if(!d[e])throw new Error("Runtime for ".concat(e," was never set"));return d[e]}function f(e,t){if(!e)throw new Error("All runtime objects require an agent identifier!");d[e]={...(0,n.a)(t,u),...c},Object.hasOwnProperty.call(d[e],"harvestCount")||Object.defineProperty(d[e],"harvestCount",{get:()=>++s});const r=(0,i.nY)(e);r&&(r.runtime=d[e])}},9324:(e,t,r)=>{"use strict";r.d(t,{F3:()=>i,Xs:()=>o,xv:()=>n});const n="1.274.0",i="PROD",o="CDN"},6154:(e,t,r)=>{"use strict";r.d(t,{OF:()=>c,RI:()=>i,WN:()=>d,bv:()=>o,gm:()=>a,mw:()=>s,sb:()=>u});var n=r(1863);const i="undefined"!=typeof window&&!!window.document,o="undefined"!=typeof WorkerGlobalScope&&("undefined"!=typeof self&&self instanceof WorkerGlobalScope&&self.navigator instanceof WorkerNavigator||"undefined"!=typeof globalThis&&globalThis instanceof WorkerGlobalScope&&globalThis.navigator instanceof WorkerNavigator),a=i?window:"undefined"!=typeof WorkerGlobalScope&&("undefined"!=typeof self&&self instanceof WorkerGlobalScope&&self||"undefined"!=typeof globalThis&&globalThis instanceof WorkerGlobalScope&&globalThis),s=Boolean("hidden"===a?.document?.visibilityState),c=/iPad|iPhone|iPod/.test(a.navigator?.userAgent),u=c&&"undefined"==typeof SharedWorker,d=((()=>{const e=a.navigator?.userAgent?.match(/Firefox[/\s](\d+\.\d+)/);Array.isArray(e)&&e.length>=2&&e[1]})(),Date.now()-(0,n.t)())},1687:(e,t,r)=>{"use strict";r.d(t,{Ak:()=>c,Ze:()=>l,x3:()=>u});var n=r(7836),i=r(3606),o=r(860),a=r(2646);const s={};function c(e,t){const r={staged:!1,priority:o.P3[t]||0};d(e),s[e].get(t)||s[e].set(t,r)}function u(e,t){e&&s[e]&&(s[e].get(t)&&s[e].delete(t),g(e,t,!1),s[e].size&&f(e))}function d(e){if(!e)throw new Error("agentIdentifier required");s[e]||(s[e]=new Map)}function l(e="",t="feature",r=!1){if(d(e),!e||!s[e].get(t)||r)return g(e,t);s[e].get(t).staged=!0,f(e)}function f(e){const t=Array.from(s[e]);t.every((([e,t])=>t.staged))&&(t.sort(((e,t)=>e[1].priority-t[1].priority)),t.forEach((([t])=>{s[e].delete(t),g(e,t)})))}function g(e,t,r=!0){const o=e?n.ee.get(e):n.ee,s=i.i.handlers;if(!o.aborted&&o.backlog&&s){if(r){const e=o.backlog[t],r=s[t];if(r){for(let t=0;e&&t<e.length;++t)p(e[t],r);Object.entries(r).forEach((([e,t])=>{Object.values(t||{}).forEach((t=>{t[0]?.on&&t[0]?.context()instanceof a.y&&t[0].on(e,t[1])}))}))}}o.isolatedBacklog||delete s[t],o.backlog[t]=null,o.emit("drain-"+t,[])}}function p(e,t){var r=e[1];Object.values(t[r]||{}).forEach((t=>{var r=e[0];if(t[0]===r){var n=t[1],i=e[3],o=e[2];n.apply(i,o)}}))}},7836:(e,t,r)=>{"use strict";r.d(t,{P:()=>c,ee:()=>u});var n=r(384),i=r(8990),o=r(3371),a=r(2646),s=r(5607);const c="nr@context:".concat(s.W),u=function e(t,r){var n={},s={},d={},l=!1;try{l=16===r.length&&(0,o.f)(r).isolatedBacklog}catch(e){}var f={on:p,addEventListener:p,removeEventListener:function(e,t){var r=n[e];if(!r)return;for(var i=0;i<r.length;i++)r[i]===t&&r.splice(i,1)},emit:function(e,r,n,i,o){!1!==o&&(o=!0);if(u.aborted&&!i)return;t&&o&&t.emit(e,r,n);for(var a=g(n),c=h(e),d=c.length,l=0;l<d;l++)c[l].apply(a,r);var p=m()[s[e]];p&&p.push([f,e,r,a]);return a},get:v,listeners:h,context:g,buffer:function(e,t){const r=m();if(t=t||"feature",f.aborted)return;Object.entries(e||{}).forEach((([e,n])=>{s[n]=t,t in r||(r[t]=[])}))},abort:function(){f._aborted=!0,Object.keys(f.backlog).forEach((e=>{delete f.backlog[e]}))},isBuffering:function(e){return!!m()[s[e]]},debugId:r,backlog:l?{}:t&&"object"==typeof t.backlog?t.backlog:{},isolatedBacklog:l};return Object.defineProperty(f,"aborted",{get:()=>{let e=f._aborted||!1;return e||(t&&(e=t.aborted),e)}}),f;function g(e){return e&&e instanceof a.y?e:e?(0,i.I)(e,c,(()=>new a.y(c))):new a.y(c)}function p(e,t){n[e]=h(e).concat(t)}function h(e){return n[e]||[]}function v(t){return d[t]=d[t]||e(f,t)}function m(){return f.backlog}}(void 0,"globalEE"),d=(0,n.Zm)();d.ee||(d.ee=u)},2646:(e,t,r)=>{"use strict";r.d(t,{y:()=>n});class n{constructor(e){this.contextId=e}}},9908:(e,t,r)=>{"use strict";r.d(t,{d:()=>n,p:()=>i});var n=r(7836).ee.get("handle");function i(e,t,r,i,o){o?(o.buffer([e],i),o.emit(e,t,r)):(n.buffer([e],i),n.emit(e,t,r))}},3606:(e,t,r)=>{"use strict";r.d(t,{i:()=>o});var n=r(9908);o.on=a;var i=o.handlers={};function o(e,t,r,o){a(o||n.d,i,e,t,r)}function a(e,t,r,i,o){o||(o="feature"),e||(e=n.d);var a=t[o]=t[o]||{};(a[r]=a[r]||[]).push([e,i])}},3878:(e,t,r)=>{"use strict";function n(e,t){return{capture:e,passive:!1,signal:t}}function i(e,t,r=!1,i){window.addEventListener(e,t,n(r,i))}function o(e,t,r=!1,i){document.addEventListener(e,t,n(r,i))}r.d(t,{DD:()=>o,jT:()=>n,sp:()=>i})},5607:(e,t,r)=>{"use strict";r.d(t,{W:()=>n});const n=(0,r(9566).bz)()},9566:(e,t,r)=>{"use strict";r.d(t,{LA:()=>s,bz:()=>a});var n=r(6154);const i="xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx";function o(e,t){return e?15&e[t]:16*Math.random()|0}function a(){const e=n.gm?.crypto||n.gm?.msCrypto;let t,r=0;return e&&e.getRandomValues&&(t=e.getRandomValues(new Uint8Array(30))),i.split("").map((e=>"x"===e?o(t,r++).toString(16):"y"===e?(3&o()|8).toString(16):e)).join("")}function s(e){const t=n.gm?.crypto||n.gm?.msCrypto;let r,i=0;t&&t.getRandomValues&&(r=t.getRandomValues(new Uint8Array(e)));const a=[];for(var s=0;s<e;s++)a.push(o(r,i++).toString(16));return a.join("")}},2614:(e,t,r)=>{"use strict";r.d(t,{BB:()=>a,H3:()=>n,g:()=>u,iL:()=>c,tS:()=>s,uh:()=>i,wk:()=>o});const n="NRBA",i="SESSION",o=144e5,a=18e5,s={STARTED:"session-started",PAUSE:"session-pause",RESET:"session-reset",RESUME:"session-resume",UPDATE:"session-update"},c={SAME_TAB:"same-tab",CROSS_TAB:"cross-tab"},u={OFF:0,FULL:1,ERROR:2}},1863:(e,t,r)=>{"use strict";function n(){return Math.floor(performance.now())}r.d(t,{t:()=>n})},944:(e,t,r)=>{"use strict";function n(e,t){"function"==typeof console.debug&&console.debug("New Relic Warning: https://github.com/newrelic/newrelic-browser-agent/blob/main/docs/warning-codes.md#".concat(e),t)}r.d(t,{R:()=>n})},5284:(e,t,r)=>{"use strict";r.d(t,{t:()=>c,B:()=>s});var n=r(7836),i=r(6154);const o="newrelic";const a=new Set,s={};function c(e,t){const r=n.ee.get(t);s[t]??={},e&&"object"==typeof e&&(a.has(t)||(r.emit("rumresp",[e]),s[t]=e,a.add(t),function(e={}){try{i.gm.dispatchEvent(new CustomEvent(o,{detail:e}))}catch(e){}}({loaded:!0})))}},8990:(e,t,r)=>{"use strict";r.d(t,{I:()=>i});var n=Object.prototype.hasOwnProperty;function i(e,t,r){if(n.call(e,t))return e[t];var i=r();if(Object.defineProperty&&Object.keys)try{return Object.defineProperty(e,t,{value:i,writable:!0,enumerable:!1}),i}catch(e){}return e[t]=i,i}},6389:(e,t,r)=>{"use strict";function n(e,t=500,r={}){const n=r?.leading||!1;let i;return(...r)=>{n&&void 0===i&&(e.apply(this,r),i=setTimeout((()=>{i=clearTimeout(i)}),t)),n||(clearTimeout(i),i=setTimeout((()=>{e.apply(this,r)}),t))}}function i(e){let t=!1;return(...r)=>{t||(t=!0,e.apply(this,r))}}r.d(t,{J:()=>i,s:()=>n})},5289:(e,t,r)=>{"use strict";r.d(t,{GG:()=>o,sB:()=>a});var n=r(3878);function i(){return"undefined"==typeof document||"complete"===document.readyState}function o(e,t){if(i())return e();(0,n.sp)("load",e,t)}function a(e){if(i())return e();(0,n.DD)("DOMContentLoaded",e)}},384:(e,t,r)=>{"use strict";r.d(t,{NT:()=>o,US:()=>d,Zm:()=>a,bQ:()=>c,dV:()=>s,nY:()=>u,pV:()=>l});var n=r(6154),i=r(1863);const o={beacon:"bam.nr-data.net",errorBeacon:"bam.nr-data.net"};function a(){return n.gm.NREUM||(n.gm.NREUM={}),void 0===n.gm.newrelic&&(n.gm.newrelic=n.gm.NREUM),n.gm.NREUM}function s(){let e=a();return e.o||(e.o={ST:n.gm.setTimeout,SI:n.gm.setImmediate,CT:n.gm.clearTimeout,XHR:n.gm.XMLHttpRequest,REQ:n.gm.Request,EV:n.gm.Event,PR:n.gm.Promise,MO:n.gm.MutationObserver,FETCH:n.gm.fetch,WS:n.gm.WebSocket}),e}function c(e,t){let r=a();r.initializedAgents??={},t.initializedAt={ms:(0,i.t)(),date:new Date},r.initializedAgents[e]=t}function u(e){let t=a();return t.initializedAgents?.[e]}function d(e,t){a()[e]=t}function l(){return function(){let e=a();const t=e.info||{};e.info={beacon:o.beacon,errorBeacon:o.errorBeacon,...t}}(),function(){let e=a();const t=e.init||{};e.init={...t}}(),s(),function(){let e=a();const t=e.loader_config||{};e.loader_config={...t}}(),a()}},2843:(e,t,r)=>{"use strict";r.d(t,{u:()=>i});var n=r(3878);function i(e,t=!1,r,i){(0,n.DD)("visibilitychange",(function(){if(t)return void("hidden"===document.visibilityState&&e());e(document.visibilityState)}),r,i)}},3434:(e,t,r)=>{"use strict";r.d(t,{YM:()=>c});var n=r(7836),i=r(5607);const o="nr@original:".concat(i.W);var a=Object.prototype.hasOwnProperty,s=!1;function c(e,t){return e||(e=n.ee),r.inPlace=function(e,t,n,i,o){n||(n="");const a="-"===n.charAt(0);for(let s=0;s<t.length;s++){const c=t[s],u=e[c];d(u)||(e[c]=r(u,a?c+n:n,i,c,o))}},r.flag=o,r;function r(t,r,n,s,c){return d(t)?t:(r||(r=""),nrWrapper[o]=t,function(e,t,r){if(Object.defineProperty&&Object.keys)try{return Object.keys(e).forEach((function(r){Object.defineProperty(t,r,{get:function(){return e[r]},set:function(t){return e[r]=t,t}})})),t}catch(e){u([e],r)}for(var n in e)a.call(e,n)&&(t[n]=e[n])}(t,nrWrapper,e),nrWrapper);function nrWrapper(){var o,a,d,l;try{a=this,o=[...arguments],d="function"==typeof n?n(o,a):n||{}}catch(t){u([t,"",[o,a,s],d],e)}i(r+"start",[o,a,s],d,c);try{return l=t.apply(a,o)}catch(e){throw i(r+"err",[o,a,e],d,c),e}finally{i(r+"end",[o,a,l],d,c)}}}function i(r,n,i,o){if(!s||t){var a=s;s=!0;try{e.emit(r,n,i,t,o)}catch(t){u([t,r,n,i],e)}s=a}}}function u(e,t){t||(t=n.ee);try{t.emit("internal-error",e)}catch(e){}}function d(e){return!(e&&"function"==typeof e&&e.apply&&!e[o])}},993:(e,t,r)=>{"use strict";r.d(t,{ET:()=>o,p_:()=>i});var n=r(860);const i={ERROR:"ERROR",WARN:"WARN",INFO:"INFO",DEBUG:"DEBUG",TRACE:"TRACE"},o="log";n.K7.logging},3969:(e,t,r)=>{"use strict";r.d(t,{TZ:()=>n,XG:()=>s,rs:()=>i,xV:()=>a,z_:()=>o});const n=r(860).K7.metrics,i="sm",o="cm",a="storeSupportabilityMetrics",s="storeEventMetrics"},6630:(e,t,r)=>{"use strict";r.d(t,{T:()=>n});const n=r(860).K7.pageViewEvent},782:(e,t,r)=>{"use strict";r.d(t,{T:()=>n});const n=r(860).K7.pageViewTiming},6344:(e,t,r)=>{"use strict";r.d(t,{G4:()=>i});var n=r(2614);r(860).K7.sessionReplay;const i={RECORD:"recordReplay",PAUSE:"pauseReplay",REPLAY_RUNNING:"replayRunning",ERROR_DURING_REPLAY:"errorDuringReplay"};n.g.ERROR,n.g.FULL,n.g.OFF},4234:(e,t,r)=>{"use strict";r.d(t,{W:()=>o});var n=r(7836),i=r(1687);class o{constructor(e,t){this.agentIdentifier=e,this.ee=n.ee.get(e),this.featureName=t,this.blocked=!1}deregisterDrain(){(0,i.x3)(this.agentIdentifier,this.featureName)}}},7603:(e,t,r)=>{"use strict";r.d(t,{j:()=>P});var n=r(860),i=r(2555),o=r(3371),a=r(9908),s=r(7836),c=r(1687),u=r(5289),d=r(6154),l=r(944),f=r(3969),g=r(384),p=r(6344);const h=["setErrorHandler","finished","addToTrace","addRelease","addPageAction","setCurrentRouteName","setPageViewName","setCustomAttribute","interaction","noticeError","setUserId","setApplicationVersion","start",p.G4.RECORD,p.G4.PAUSE,"log","wrapLogger"],v=["setErrorHandler","finished","addToTrace","addRelease"];var m=r(1863),b=r(2614),y=r(993);var w=r(2646),A=r(3434);function R(e,t,r,n){if("object"!=typeof t||!t||"string"!=typeof r||!r||"function"!=typeof t[r])return(0,l.R)(29);const i=function(e){return(e||s.ee).get("logger")}(e),o=(0,A.YM)(i),a=new w.y(s.P);return a.level=n.level,a.customAttributes=n.customAttributes,o.inPlace(t,[r],"wrap-logger-",a),i}function E(){const e=(0,g.pV)();h.forEach((t=>{e[t]=(...r)=>function(t,...r){let n=[];return Object.values(e.initializedAgents).forEach((e=>{e&&e.api?e.exposed&&e.api[t]&&n.push(e.api[t](...r)):(0,l.R)(38,t)})),n.length>1?n:n[0]}(t,...r)}))}const x={};function _(e,t,g=!1){t||(0,c.Ak)(e,"api");const h={};var w=s.ee.get(e),A=w.get("tracer");x[e]=b.g.OFF,w.on(p.G4.REPLAY_RUNNING,(t=>{x[e]=t}));var E="api-",_=E+"ixn-";function N(t,r,n,o){const a=(0,i.Vp)(e);return null===r?delete a.jsAttributes[t]:(0,i.x1)(e,{...a,jsAttributes:{...a.jsAttributes,[t]:r}}),j(E,n,!0,o||null===r?"session":void 0)(t,r)}function T(){}h.log=function(e,{customAttributes:t={},level:r=y.p_.INFO}={}){(0,a.p)(f.xV,["API/log/called"],void 0,n.K7.metrics,w),function(e,t,r={},i=y.p_.INFO){(0,a.p)(f.xV,["API/logging/".concat(i.toLowerCase(),"/called")],void 0,n.K7.metrics,e),(0,a.p)(y.ET,[(0,m.t)(),t,r,i],void 0,n.K7.logging,e)}(w,e,t,r)},h.wrapLogger=(e,t,{customAttributes:r={},level:i=y.p_.INFO}={})=>{(0,a.p)(f.xV,["API/wrapLogger/called"],void 0,n.K7.metrics,w),R(w,e,t,{customAttributes:r,level:i})},v.forEach((e=>{h[e]=j(E,e,!0,"api")})),h.addPageAction=j(E,"addPageAction",!0,n.K7.genericEvents),h.setPageViewName=function(t,r){if("string"==typeof t)return"/"!==t.charAt(0)&&(t="/"+t),(0,o.f)(e).customTransaction=(r||"http://custom.transaction")+t,j(E,"setPageViewName",!0)()},h.setCustomAttribute=function(e,t,r=!1){if("string"==typeof e){if(["string","number","boolean"].includes(typeof t)||null===t)return N(e,t,"setCustomAttribute",r);(0,l.R)(40,typeof t)}else(0,l.R)(39,typeof e)},h.setUserId=function(e){if("string"==typeof e||null===e)return N("enduser.id",e,"setUserId",!0);(0,l.R)(41,typeof e)},h.setApplicationVersion=function(e){if("string"==typeof e||null===e)return N("application.version",e,"setApplicationVersion",!1);(0,l.R)(42,typeof e)},h.start=()=>{try{(0,a.p)(f.xV,["API/start/called"],void 0,n.K7.metrics,w),w.emit("manual-start-all")}catch(e){(0,l.R)(23,e)}},h[p.G4.RECORD]=function(){(0,a.p)(f.xV,["API/recordReplay/called"],void 0,n.K7.metrics,w),(0,a.p)(p.G4.RECORD,[],void 0,n.K7.sessionReplay,w)},h[p.G4.PAUSE]=function(){(0,a.p)(f.xV,["API/pauseReplay/called"],void 0,n.K7.metrics,w),(0,a.p)(p.G4.PAUSE,[],void 0,n.K7.sessionReplay,w)},h.interaction=function(e){return(new T).get("object"==typeof e?e:{})};const S=T.prototype={createTracer:function(e,t){var r={},i=this,o="function"==typeof t;return(0,a.p)(f.xV,["API/createTracer/called"],void 0,n.K7.metrics,w),g||(0,a.p)(_+"tracer",[(0,m.t)(),e,r],i,n.K7.spa,w),function(){if(A.emit((o?"":"no-")+"fn-start",[(0,m.t)(),i,o],r),o)try{return t.apply(this,arguments)}catch(e){const t="string"==typeof e?new Error(e):e;throw A.emit("fn-err",[arguments,this,t],r),t}finally{A.emit("fn-end",[(0,m.t)()],r)}}}};function j(e,t,r,i){return function(){return(0,a.p)(f.xV,["API/"+t+"/called"],void 0,n.K7.metrics,w),i&&(0,a.p)(e+t,[(0,m.t)(),...arguments],r?null:this,i,w),r?void 0:this}}function k(){r.e(296).then(r.bind(r,8778)).then((({setAPI:t})=>{t(e),(0,c.Ze)(e,"api")})).catch((e=>{(0,l.R)(27,e),w.abort()}))}return["actionText","setName","setAttribute","save","ignore","onEnd","getContext","end","get"].forEach((e=>{S[e]=j(_,e,void 0,g?n.K7.softNav:n.K7.spa)})),h.setCurrentRouteName=g?j(_,"routeName",void 0,n.K7.softNav):j(E,"routeName",!0,n.K7.spa),h.noticeError=function(t,r){"string"==typeof t&&(t=new Error(t)),(0,a.p)(f.xV,["API/noticeError/called"],void 0,n.K7.metrics,w),(0,a.p)("err",[t,(0,m.t)(),!1,r,!!x[e]],void 0,n.K7.jserrors,w)},d.RI?(0,u.GG)((()=>k()),!0):k(),h}var N=r(9417),T=r(8122);const S={accountID:void 0,trustKey:void 0,agentID:void 0,licenseKey:void 0,applicationID:void 0,xpid:void 0},j={};var k=r(5284);const I=e=>{const t=e.startsWith("http");e+="/",r.p=t?e:"https://"+e};let O=!1;function P(e,t={},r,n){let{init:a,info:c,loader_config:u,runtime:l={},exposed:f=!0}=t;l.loaderType=r;const p=(0,g.pV)();c||(a=p.init,c=p.info,u=p.loader_config),(0,N.xN)(e.agentIdentifier,a||{}),function(e,t){if(!e)throw new Error("All loader-config objects require an agent identifier!");j[e]=(0,T.a)(t,S);const r=(0,g.nY)(e);r&&(r.loader_config=j[e])}(e.agentIdentifier,u||{}),c.jsAttributes??={},d.bv&&(c.jsAttributes.isWorker=!0),(0,i.x1)(e.agentIdentifier,c);const h=(0,N.D0)(e.agentIdentifier),v=[c.beacon,c.errorBeacon];O||(h.proxy.assets&&(I(h.proxy.assets),v.push(h.proxy.assets)),h.proxy.beacon&&v.push(h.proxy.beacon),E(),(0,g.US)("activatedFeatures",k.B),e.runSoftNavOverSpa&&=!0===h.soft_navigations.enabled&&h.feature_flags.includes("soft_nav")),l.denyList=[...h.ajax.deny_list||[],...h.ajax.block_internal?v:[]],l.ptid=e.agentIdentifier,(0,o.V)(e.agentIdentifier,l),e.ee=s.ee.get(e.agentIdentifier),void 0===e.api&&(e.api=_(e.agentIdentifier,n,e.runSoftNavOverSpa)),void 0===e.exposed&&(e.exposed=f),O=!0}},8374:(e,t,r)=>{r.nc=(()=>{try{return document?.currentScript?.nonce}catch(e){}return""})()},860:(e,t,r)=>{"use strict";r.d(t,{$J:()=>o,K7:()=>n,P3:()=>i});const n={ajax:"ajax",genericEvents:"generic_events",jserrors:"jserrors",logging:"logging",metrics:"metrics",pageAction:"page_action",pageViewEvent:"page_view_event",pageViewTiming:"page_view_timing",sessionReplay:"session_replay",sessionTrace:"session_trace",softNav:"soft_navigations",spa:"spa"},i={[n.pageViewEvent]:1,[n.pageViewTiming]:2,[n.metrics]:3,[n.jserrors]:4,[n.spa]:5,[n.ajax]:6,[n.sessionTrace]:7,[n.softNav]:8,[n.sessionReplay]:9,[n.logging]:10,[n.genericEvents]:11},o={[n.pageViewTiming]:"events",[n.ajax]:"events",[n.spa]:"events",[n.softNav]:"events",[n.metrics]:"jserrors",[n.jserrors]:"jserrors",[n.sessionTrace]:"browser/blobs",[n.sessionReplay]:"browser/blobs",[n.logging]:"browser/logs",[n.genericEvents]:"ins"}}},n={};function i(e){var t=n[e];if(void 0!==t)return t.exports;var o=n[e]={exports:{}};return r[e](o,o.exports,i),o.exports}i.m=r,i.d=(e,t)=>{for(var r in t)i.o(t,r)&&!i.o(e,r)&&Object.defineProperty(e,r,{enumerable:!0,get:t[r]})},i.f={},i.e=e=>Promise.all(Object.keys(i.f).reduce(((t,r)=>(i.f[r](e,t),t)),[])),i.u=e=>"nr-rum-1.274.0.min.js",i.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),e={},t="NRBA-1.274.0.PROD:",i.l=(r,n,o,a)=>{if(e[r])e[r].push(n);else{var s,c;if(void 0!==o)for(var u=document.getElementsByTagName("script"),d=0;d<u.length;d++){var l=u[d];if(l.getAttribute("src")==r||l.getAttribute("data-webpack")==t+o){s=l;break}}if(!s){c=!0;var f={296:"sha512-gkYkZDAwQ9PwaDXs2YM+rNIdRej1Ac1mupWobRJ8eahQcXz6/sunGZCKklrzi5kWxhOGRZr2tn0rEKuLTXzfAA=="};(s=document.createElement("script")).charset="utf-8",s.timeout=120,i.nc&&s.setAttribute("nonce",i.nc),s.setAttribute("data-webpack",t+o),s.src=r,0!==s.src.indexOf(window.location.origin+"/")&&(s.crossOrigin="anonymous"),f[a]&&(s.integrity=f[a])}e[r]=[n];var g=(t,n)=>{s.onerror=s.onload=null,clearTimeout(p);var i=e[r];if(delete e[r],s.parentNode&&s.parentNode.removeChild(s),i&&i.forEach((e=>e(n))),t)return t(n)},p=setTimeout(g.bind(null,void 0,{type:"timeout",target:s}),12e4);s.onerror=g.bind(null,s.onerror),s.onload=g.bind(null,s.onload),c&&document.head.appendChild(s)}},i.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},i.p="https://js-agent.newrelic.com/",(()=>{var e={840:0,374:0};i.f.j=(t,r)=>{var n=i.o(e,t)?e[t]:void 0;if(0!==n)if(n)r.push(n[2]);else{var o=new Promise(((r,i)=>n=e[t]=[r,i]));r.push(n[2]=o);var a=i.p+i.u(t),s=new Error;i.l(a,(r=>{if(i.o(e,t)&&(0!==(n=e[t])&&(e[t]=void 0),n)){var o=r&&("load"===r.type?"missing":r.type),a=r&&r.target&&r.target.src;s.message="Loading chunk "+t+" failed.\n("+o+": "+a+")",s.name="ChunkLoadError",s.type=o,s.request=a,n[1](s)}}),"chunk-"+t,t)}};var t=(t,r)=>{var n,o,[a,s,c]=r,u=0;if(a.some((t=>0!==e[t]))){for(n in s)i.o(s,n)&&(i.m[n]=s[n]);if(c)c(i)}for(t&&t(r);u<a.length;u++)o=a[u],i.o(e,o)&&e[o]&&e[o][0](),e[o]=0},r=self["webpackChunk:NRBA-1.274.0.PROD"]=self["webpackChunk:NRBA-1.274.0.PROD"]||[];r.forEach(t.bind(null,0)),r.push=t.bind(null,r.push.bind(r))})(),(()=>{"use strict";i(8374);var e=i(944),t=i(6344),r=i(9566);class n{agentIdentifier;constructor(e=(0,r.LA)(16)){this.agentIdentifier=e}#e(t,...r){if("function"==typeof this.api?.[t])return this.api[t](...r);(0,e.R)(35,t)}addPageAction(e,t){return this.#e("addPageAction",e,t)}setPageViewName(e,t){return this.#e("setPageViewName",e,t)}setCustomAttribute(e,t,r){return this.#e("setCustomAttribute",e,t,r)}noticeError(e,t){return this.#e("noticeError",e,t)}setUserId(e){return this.#e("setUserId",e)}setApplicationVersion(e){return this.#e("setApplicationVersion",e)}setErrorHandler(e){return this.#e("setErrorHandler",e)}addRelease(e,t){return this.#e("addRelease",e,t)}log(e,t){return this.#e("log",e,t)}}class o extends n{#e(t,...r){if("function"==typeof this.api?.[t])return this.api[t](...r);(0,e.R)(35,t)}start(){return this.#e("start")}finished(e){return this.#e("finished",e)}recordReplay(){return this.#e(t.G4.RECORD)}pauseReplay(){return this.#e(t.G4.PAUSE)}addToTrace(e){return this.#e("addToTrace",e)}setCurrentRouteName(e){return this.#e("setCurrentRouteName",e)}interaction(){return this.#e("interaction")}wrapLogger(e,t,r){return this.#e("wrapLogger",e,t,r)}}var a=i(860),s=i(9417);const c=Object.values(a.K7);function u(e){const t={};return c.forEach((r=>{t[r]=function(e,t){return!0===(0,s.gD)(t,"".concat(e,".enabled"))}(r,e)})),t}var d=i(7603);var l=i(1687),f=i(4234),g=i(5289),p=i(6154),h=i(384);const v=e=>p.RI&&!0===(0,s.gD)(e,"privacy.cookies_enabled");function m(e){return!!(0,h.dV)().o.MO&&v(e)&&!0===(0,s.gD)(e,"session_trace.enabled")}var b=i(6389);class y extends f.W{constructor(e,t,r=!0){super(e.agentIdentifier,t),this.auto=r,this.abortHandler=void 0,this.featAggregate=void 0,this.onAggregateImported=void 0,!1===e.init[this.featureName].autoStart&&(this.auto=!1),this.auto?(0,l.Ak)(e.agentIdentifier,t):this.ee.on("manual-start-all",(0,b.J)((()=>{(0,l.Ak)(e.agentIdentifier,this.featureName),this.auto=!0,this.importAggregator(e)})))}importAggregator(t,r={}){if(this.featAggregate||!this.auto)return;let n;this.onAggregateImported=new Promise((e=>{n=e}));const o=async()=>{let o;try{if(v(this.agentIdentifier)){const{setupAgentSession:e}=await i.e(296).then(i.bind(i,3861));o=e(t)}}catch(t){(0,e.R)(20,t),this.ee.emit("internal-error",[t]),this.featureName===a.K7.sessionReplay&&this.abortHandler?.()}try{if(t.sharedAggregator)await t.sharedAggregator;else{t.sharedAggregator=i.e(296).then(i.bind(i,9337));const{EventAggregator:e}=await t.sharedAggregator;t.sharedAggregator=new e}if(!this.#t(this.featureName,o))return(0,l.Ze)(this.agentIdentifier,this.featureName),void n(!1);const{lazyFeatureLoader:e}=await i.e(296).then(i.bind(i,6103)),{Aggregate:a}=await e(this.featureName,"aggregate");this.featAggregate=new a(t,r),n(!0)}catch(t){(0,e.R)(34,t),this.abortHandler?.(),(0,l.Ze)(this.agentIdentifier,this.featureName,!0),n(!1),this.ee&&this.ee.abort()}};p.RI?(0,g.GG)((()=>o()),!0):o()}#t(e,t){switch(e){case a.K7.sessionReplay:return m(this.agentIdentifier)&&!!t;case a.K7.sessionTrace:return!!t;default:return!0}}}var w=i(6630);class A extends y{static featureName=w.T;constructor(e,t=!0){super(e,w.T,t),this.importAggregator(e)}}var R=i(9908),E=i(2843),x=i(3878),_=i(782),N=i(1863);class T extends y{static featureName=_.T;constructor(e,t=!0){super(e,_.T,t),p.RI&&((0,E.u)((()=>(0,R.p)("docHidden",[(0,N.t)()],void 0,_.T,this.ee)),!0),(0,x.sp)("pagehide",(()=>(0,R.p)("winPagehide",[(0,N.t)()],void 0,_.T,this.ee))),this.importAggregator(e))}}var S=i(3969);class j extends y{static featureName=S.TZ;constructor(e,t=!0){super(e,S.TZ,t),this.importAggregator(e)}}new class extends o{constructor(t,r){super(r),p.gm?(this.features={},(0,h.bQ)(this.agentIdentifier,this),this.desiredFeatures=new Set(t.features||[]),this.desiredFeatures.add(A),this.runSoftNavOverSpa=[...this.desiredFeatures].some((e=>e.featureName===a.K7.softNav)),(0,d.j)(this,t,t.loaderType||"agent"),this.run()):(0,e.R)(21)}get config(){return{info:this.info,init:this.init,loader_config:this.loader_config,runtime:this.runtime}}run(){try{const t=u(this.agentIdentifier),r=[...this.desiredFeatures];r.sort(((e,t)=>a.P3[e.featureName]-a.P3[t.featureName])),r.forEach((r=>{if(!t[r.featureName]&&r.featureName!==a.K7.pageViewEvent)return;if(this.runSoftNavOverSpa&&r.featureName===a.K7.spa)return;if(!this.runSoftNavOverSpa&&r.featureName===a.K7.softNav)return;const n=function(e){switch(e){case a.K7.ajax:return[a.K7.jserrors];case a.K7.sessionTrace:return[a.K7.ajax,a.K7.pageViewEvent];case a.K7.sessionReplay:return[a.K7.sessionTrace];case a.K7.pageViewTiming:return[a.K7.pageViewEvent];default:return[]}}(r.featureName).filter((e=>!(e in this.features)));n.length>0&&(0,e.R)(36,{targetFeature:r.featureName,missingDependencies:n}),this.features[r.featureName]=new r(this)}))}catch(t){(0,e.R)(22,t);for(const e in this.features)this.features[e].abortHandler?.();const r=(0,h.Zm)();delete r.initializedAgents[this.agentIdentifier]?.api,delete r.initializedAgents[this.agentIdentifier]?.features,delete this.sharedAggregator;return r.ee.get(this.agentIdentifier).abort(),!1}}}({features:[A,T,j],loaderType:"lite"})})()})();</script> <meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"> <link rel="preconnect" href="https://static.nd.edu/" crossorigin> <link rel="preconnect" href="https://emergency.nd.edu/"> <link rel="preconnect" href="https://ajax.googleapis.com/"> <link rel="preconnect" href="https://fonts.googleapis.com/"> <link rel="preconnect" href="https://fonts.gstatic.com/" crossorigin> <link rel="preload" href="https://static.nd.edu/fonts/gp-min/gpc-bold.woff2" as="font" type="font/woff2" crossorigin> <meta name="generator" content="Conductor CMS"> <meta name="author" content="Marketing Communications: Web | University of Notre Dame"> <meta name="apple-mobile-web-app-title" content="Notre Dame Philosophical Reviews"> <meta name="application-name" content="Notre Dame Philosophical Reviews"> <meta name="twitter:card" content="summary"> <meta name="twitter:site" content="@notredame"> <meta name="twitter:creator" content="@ndwebteam"> <meta name="twitter:image" property="og:image" content="https://static.nd.edu/images/webclips/default/webclip-1024.png"> <meta property="og:description" name="description" content="Notre Dame Philosophical Reviews is entirely devoted to publishing substantive, high-quality scholarly philosophy books reviews."> <meta property="og:site_name" content="Notre Dame Philosophical Reviews"> <meta property="og:title" content="Notre Dame Philosophical Reviews"> <meta property="og:type" content="website"> <meta property="og:url" content="https://ndpr.nd.edu/"> <meta property="og:locale" content="en_US"> <link rel="canonical" href="https://ndpr.nd.edu/"> <title>Notre Dame Philosophical Reviews | University of Notre Dame</title> <link rel="manifest" href="/manifest.json" crossorigin="use-credentials"> <link rel="shortcut icon" href="/favicon.ico"> <link rel="icon" type="image/png" href="https://static.nd.edu/images/monogram/gold/monogram-32.png" sizes="32x32"> <link rel="icon" type="image/png" href="https://static.nd.edu/images/monogram/gold/monogram-96.png" sizes="96x96"> <link rel="apple-touch-icon" sizes="180x180" href="https://static.nd.edu/images/webclips/default/webclip-180.png"> <link rel="apple-touch-icon" sizes="512x512" href="https://static.nd.edu/images/webclips/default/webclip-512.png"> <link rel="mask-icon" href="https://static.nd.edu/images/monogram/monogram.svg" color="#002b5c"> <meta name="theme-color" content="#002b5c"> <link rel="stylesheet" href="/stylesheets/themes/ndt/3.0/ndt.css"> <link rel="stylesheet" type="text/css" href="/stylesheets/site.1629148227.css" /> <!--[if IE]> <link rel="stylesheet" type="text/css" href="/stylesheets/ie.1604954673.css" /> <![endif]--> <!--[if lt IE 9]> <script src="https://static.nd.edu/js/html5shiv.min.js"></script> <script src="https://static.nd.edu/js/respond.js"></script> <![endif]--> <script>var ndn=document.createElement("script");ndn.async=true;ndn.id="ndalertbarscript";ndn.src="https://emergency.nd.edu/api/alert/";var s=document.getElementsByTagName("script")[0];s.parentNode.insertBefore(ndn, s);</script> <link rel="alternate" type="application/atom+xml" title="News" href="/reviews.atom" /> <script async src="https://www.googletagmanager.com/gtag/js?id=G-5HWQMJB6ZC"></script> <script> window.dataLayer = window.dataLayer || []; function gtag(){dataLayer.push(arguments);} gtag('js', new Date()); gtag('config', 'G-5HWQMJB6ZC', { 'groups': 'network' }); gtag('config', 'G-GMJKBFF7C8', { 'groups': 'site' }); </script> <script type="text/javascript"> (function(c,l,a,r,i,t,y){ c[a]=c[a]||function(){(c[a].q=c[a].q||[]).push(arguments)}; t=l.createElement(r);t.async=1;t.src="https://www.clarity.ms/tag/"+i; y=l.getElementsByTagName(r)[0];y.parentNode.insertBefore(t,y); })(window, document, "clarity", "script", "5rwsvt6rt5"); </script> </head> <body id="home" class="home home home full-width nav-top-true " vocab="https://schema.org/"> <!-- Skip links --> <nav class="skip-links" aria-label="Skip links"> <ul> <li><a href="#content" accesskey="C" title="Skip to content = C">Skip To Content</a></li> <li><a href="#nav-top" accesskey="S" title="Skip to navigation = S">Skip To Navigation</a></li> <li><a href="#search-input-nav-top">Skip To Search</a></li> </ul> </nav> <div class="wrapper" id="wrapper"> <!-- Site Header --> <header id="header" class="site-header"> <p class="mark-header"><a href="https://www.nd.edu/">University of Notre Dame</a></p> <div class="site-title-group"> <h1 id="site-title" class="site-title"><a href="/" accesskey="1" title="Homepage shortcut key = 1">Notre Dame Philosophical Reviews</a></h1> </div> <!-- Header Search/Nav --> <div class="nav-header"> <nav id="nav-top" class="nav-top" role="navigation" aria-label="Primary navigation"> <div id="primary"><ul class="nav-level-1 depth_1"><li id="primary_115433" class="first active"><a href="/" aria-current="page" class="current current-last" aria-label="Home"><svg class="icon" width="16" height="16"><use xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#icon-home"></use></svg></a></li><li id="primary_115434"><a href="/about/">About</a></li><li id="primary_115440"><a href="/reviews/">Reviews</a></li><li id="primary_115435"><a href="/review-archive/">Archive</a></li><li id="primary_115437"><a href="/for-reviewers/">For Reviewers</a></li><li id="primary_115438" class="last"><a href="/subscribe/">Subscribe</a></li> <li class="nav-search"><button class="btn-search search-toggle" aria-label="Toggle search"><svg class="icon" width="16" height="16"><use xlink:href="#icon-search"></use></svg></button></li> </ul> <div class="nav-search-wrapper"> <form method="get" action="/search/" id="search-nav-top" class="search-form" role="search" aria-label="Site search"> <input type="hidden" name="as_sitesearch" value="ndpr.nd.edu"> <input type="hidden" name="entqr" value="3"> <input type="search" name="q" class="search-input" id="search-input-nav-top" placeholder="Search this site" title="type your search term" aria-label="Site Search input"> <button class="search-button" type="submit" aria-label="Search"><svg class="icon" width="16" height="16" data-icon="search"><use xlink:href="#icon-search"></use></svg></button> <button class="search-close search-toggle" aria-label="Close Search"><svg class="icon" width="16" height="16"><use xlink:href="#icon-close"></use></svg></button> </form> </div></div> </nav> </div> <!-- Mobile Navbar --> <div class="nav-mobile-util"> <ul class="no-bullets"> <li><a href="/"><svg class="icon" width="16" height="16"><use xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#icon-home"></use></svg> Home</a></li> <li><button class="btn-search search-toggle"><svg class="icon" width="16" height="16"><use xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#icon-search"></use></svg> Search</button></li> <li> <a href="#nav" class="nav-menu nav-skip"> <svg version="1.1" class="icon" xmlns="http://www.w3.org/2000/svg" width="16" height="16" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" viewBox="0 0 20 20" xml:space="preserve"> <line class="ni ni1" stroke-width="2" stroke-linecap="square" stroke-miterlimit="10" x1="0.98" y1="2" x2="18.94" y2="2"/> <line class="ni ni2" stroke-width="2" stroke-linecap="square" stroke-miterlimit="10" x1="0.98" y1="8.69" x2="18.94" y2="8.69"/> </svg> <span class="ni ni3">Menu</span> </a> </li> </ul> <div class="nav-search-wrapper"> <form method="get" action="/search/" id="search-navbar-mobile" class="search-form" role="search" aria-label="Site search"> <input type="hidden" name="as_sitesearch" value="ndpr.nd.edu"> <input type="hidden" name="entqr" value="3"> <input type="search" name="q" class="search-input" id="search-input-navbar-mobile" placeholder="Search this site" title="type your search term" aria-label="Site Search input"> <button class="search-button" type="submit" aria-label="Search"><svg class="icon" width="16" height="16"><use xlink:href="#icon-search"></use></svg></button> <button class="search-close search-toggle" aria-label="Close Search"><svg class="icon" width="16" height="16"><use xlink:href="#icon-close"></use></svg></button> </form> </div> </div> </header> <!-- Site Content --> <div id="content" class="site-content"> <div class="page-header"></div> <main class="page-main block-center block-center-wide"> <div class="page-primary home-primary hidden"> </div> <div class="home-news"> <div class="heading-action"> <h2 class="section-title has-rule">Latest Reviews</h2> </div> <ol class="no-bullets grid grid-lg-2"> <li> <article class="article snippet card horizontal horizontal hover-bg hover-grow" id="news_168444" typeof="NewsArticle"> <div class="card-image entry-image"> <img property="image" width="300" height="480" src="/assets/595938/300x480/snoke.jpeg" alt="Interpreting Quantum Mechanics: Modern Foundations"> </div> <div class="card-body hover-more"> <!-- Book Title --> <h3 class="article-title card-title" property="headline"> <a class="card-link" href="/reviews/interpreting-quantum-mechanics-modern-foundations/"> Interpreting Quantum Mechanics: Modern Foundations</a> </h3> <div class="article-meta"> <!-- Author/Publisher --> <p class="meta-item__author">David Snoke</p> <p class="meta-item__publisher">Cambridge University Press</p> <!-- Reviewer, NDPR Edition --> <div class="meta-item__reviewer" property="author" typeof="Person">Reviewed by <meta property="name" content="Emily Adlam, Chapman University">Emily Adlam, Chapman University</div> <p class="meta-item__edition">2024.11.10</p> <!-- Publication info --> <p class="visually-hidden meta-item publish-info"> <time property="datePublished" datetime="2024-11-22T13:31:00-05:00">November 22, 2024</time> </p> <link property="description" content="David Snoke&#8217;s book,&#160;Interpreting Quantum Mechanics: Modern Foundations, is an engaging and comprehensive introduction to interpretative issues in quantum mechanics. It provides an accessible presentation of the field which would be useful for students and teachers, and it also offers a valuable&#8230;" href="/reviews/interpreting-quantum-mechanics-modern-foundations/"> <link property="publisher" resource="#siteorg"> </div> </div> </article> </li> <li> <article class="article snippet card horizontal horizontal hover-bg hover-grow" id="news_168278" typeof="NewsArticle"> <div class="card-image entry-image"> <img property="image" width="300" height="480" src="/assets/594942/300x480/kristjansson.jpg" alt="Friendship for Virtue"> </div> <div class="card-body hover-more"> <!-- Book Title --> <h3 class="article-title card-title" property="headline"> <a class="card-link" href="/reviews/friendship-for-virtue/"> Friendship for Virtue</a> </h3> <div class="article-meta"> <!-- Author/Publisher --> <p class="meta-item__author">Kristjan Kristj谩nsson</p> <p class="meta-item__publisher">Oxford University Press</p> <!-- Reviewer, NDPR Edition --> <div class="meta-item__reviewer" property="author" typeof="Person">Reviewed by <meta property="name" content="Mavis Biss, Loyola University Maryland">Mavis Biss, Loyola University Maryland</div> <p class="meta-item__edition">2024.11.8</p> <!-- Publication info --> <p class="visually-hidden meta-item publish-info"> <time property="datePublished" datetime="2024-11-15T12:26:00-05:00">November 15, 2024</time> </p> <link property="description" content="Some thinkers are attracted to the philosophy of friendship because of their interest in the best possibilities of friendship while others are interested in the whole shebang, virtuous and unvirtuous. Kristjan Kristj&#225;nsson falls in the middle, as he takes Aristotelian character friendship as his topic,&#8230;" href="/reviews/friendship-for-virtue/"> <link property="publisher" resource="#siteorg"> </div> </div> </article> </li> <li> <article class="article snippet card horizontal horizontal hover-bg hover-grow" id="news_168281" typeof="NewsArticle"> <div class="card-image entry-image"> <img property="image" width="300" height="480" src="/assets/594950/300x480/maitra_mcweeny.jpg" alt="Feminist Philosophy of Mind"> </div> <div class="card-body hover-more"> <!-- Book Title --> <h3 class="article-title card-title" property="headline"> <a class="card-link" href="/reviews/feminist-philosophy-of-mind/"> Feminist Philosophy of Mind</a> </h3> <div class="article-meta"> <!-- Author/Publisher --> <p class="meta-item__author">Keya Maitra and Jennifer McWeeny (eds.)</p> <p class="meta-item__publisher">Oxford University Press</p> <!-- Reviewer, NDPR Edition --> <div class="meta-item__reviewer" property="author" typeof="Person">Reviewed by <meta property="name" content="Marianne Janack, Hamilton College">Marianne Janack, Hamilton College</div> <p class="meta-item__edition">2024.11.9</p> <!-- Publication info --> <p class="visually-hidden meta-item publish-info"> <time property="datePublished" datetime="2024-11-15T12:26:00-05:00">November 15, 2024</time> </p> <link property="description" content="When my department underwent an external review recently, the reviewers recommended that the department offer a class on feminist philosophy. I was a bit perplexed by this recommendation. After all, most of the members of my department include feminist work in our classes on ethics, critical thinking,&#8230;" href="/reviews/feminist-philosophy-of-mind/"> <link property="publisher" resource="#siteorg"> </div> </div> </article> </li> <li> <article class="article snippet card horizontal horizontal hover-bg hover-grow" id="news_168216" typeof="NewsArticle"> <div class="card-image entry-image"> <img property="image" width="300" height="480" src="/assets/594561/300x480/pitt.jpg" alt="The Quality of Thought"> </div> <div class="card-body hover-more"> <!-- Book Title --> <h3 class="article-title card-title" property="headline"> <a class="card-link" href="/reviews/the-quality-of-thought/"> The Quality of Thought</a> </h3> <div class="article-meta"> <!-- Author/Publisher --> <p class="meta-item__author">David Pitt</p> <p class="meta-item__publisher">Oxford University Press</p> <!-- Reviewer, NDPR Edition --> <div class="meta-item__reviewer" property="author" typeof="Person">Reviewed by <meta property="name" content="Sam Coleman, University of Hertfordshire">Sam Coleman, University of Hertfordshire</div> <p class="meta-item__edition">2024.11.6</p> <!-- Publication info --> <p class="visually-hidden meta-item publish-info"> <time property="datePublished" datetime="2024-11-13T08:24:00-05:00">November 13, 2024</time> </p> <link property="description" content="In this little whirlwind of a book, David Pitt, like some philosophical Tasmanian Devil, whirls us across the landscapes of philosophy of language and philosophy of mind, overturning dilapidated doctrines and whisking away outdated structures. Once it has forcefully achieved its destructive work,&#8230;" href="/reviews/the-quality-of-thought/"> <link property="publisher" resource="#siteorg"> </div> </div> </article> </li> <li> <article class="article snippet card horizontal horizontal hover-bg hover-grow" id="news_168217" typeof="NewsArticle"> <div class="card-image entry-image"> <img property="image" width="300" height="480" src="/assets/594562/300x480/westerhoff.jpg" alt="The Golden Age of Indian Buddhist Philosophy"> </div> <div class="card-body hover-more"> <!-- Book Title --> <h3 class="article-title card-title" property="headline"> <a class="card-link" href="/reviews/the-golden-age-of-indian-buddhist-philosophy-2/"> The Golden Age of Indian Buddhist Philosophy</a> </h3> <div class="article-meta"> <!-- Author/Publisher --> <p class="meta-item__author">Jan Westerhoff</p> <p class="meta-item__publisher">Oxford University Press</p> <!-- Reviewer, NDPR Edition --> <div class="meta-item__reviewer" property="author" typeof="Person">Reviewed by <meta property="name" content="Mark Siderits, Illinois State University">Mark Siderits, Illinois State University</div> <p class="meta-item__edition">2024.11.7</p> <!-- Publication info --> <p class="visually-hidden meta-item publish-info"> <time property="datePublished" datetime="2024-11-13T08:24:00-05:00">November 13, 2024</time> </p> <link property="description" content="This book, part of the Oxford History of Philosophy series, is an account of the development of Indian Buddhist philosophy during the first millennium of the common era. It thus begins its history not with the Buddha (roughly 5th c BCE) but with the rise of distinct schools of interpretation of the&#8230;" href="/reviews/the-golden-age-of-indian-buddhist-philosophy-2/"> <link property="publisher" resource="#siteorg"> </div> </div> </article> </li> <li> <article class="article snippet card horizontal horizontal hover-bg hover-grow" id="news_168119" typeof="NewsArticle"> <div class="card-image entry-image"> <img property="image" width="300" height="480" src="/assets/594168/300x480/bostrom.jpeg" alt="Deep Utopia"> </div> <div class="card-body hover-more"> <!-- Book Title --> <h3 class="article-title card-title" property="headline"> <a class="card-link" href="/reviews/deep-utopia-life-and-meaning-in-a-solved-world/"> Deep Utopia: Life and Meaning in a Solved World</a> </h3> <div class="article-meta"> <!-- Author/Publisher --> <p class="meta-item__author"></p> <p class="meta-item__publisher">Ideapress Publishing</p> <!-- Reviewer, NDPR Edition --> <div class="meta-item__reviewer" property="author" typeof="Person">Reviewed by <meta property="name" content="Matthew Hammerton, Singapore Management University">Matthew Hammerton, Singapore Management University</div> <p class="meta-item__edition">2024.11.4</p> <!-- Publication info --> <p class="visually-hidden meta-item publish-info"> <time property="datePublished" datetime="2024-11-09T06:42:00-05:00">November 09, 2024</time> </p> <link property="description" content="Nick Bostrom is perhaps best known for his 2014 book&#160;Superintelligence, which explores the existential threat posed to humans by superintelligent AI. In his new book, &#8230;" href="/reviews/deep-utopia-life-and-meaning-in-a-solved-world/"> <link property="publisher" resource="#siteorg"> </div> </div> </article> </li> <li> <article class="article snippet card horizontal horizontal hover-bg hover-grow" id="news_168120" typeof="NewsArticle"> <div class="card-image entry-image"> <img property="image" width="300" height="480" src="/assets/594172/300x480/james.jpg" alt="How Nature Matters"> </div> <div class="card-body hover-more"> <!-- Book Title --> <h3 class="article-title card-title" property="headline"> <a class="card-link" href="/reviews/how-nature-matters-culture-identity-environmental-value/"> How Nature Matters: Culture, Identity, & Environmental Value</a> </h3> <div class="article-meta"> <!-- Author/Publisher --> <p class="meta-item__author">Simon P. James</p> <p class="meta-item__publisher">Oxford University Press</p> <!-- Reviewer, NDPR Edition --> <div class="meta-item__reviewer" property="author" typeof="Person">Reviewed by <meta property="name" content="Allen Thompson, Oregon State University">Allen Thompson, Oregon State University</div> <p class="meta-item__edition">2024.11.5</p> <!-- Publication info --> <p class="visually-hidden meta-item publish-info"> <time property="datePublished" datetime="2024-11-09T06:42:00-05:00">November 09, 2024</time> </p> <link property="description" content="Simon James offers an engaging and useful view about how parts of nature have constitutive value as important, often irreplaceable parts of meaningful wholes. It is a descriptive account of one way in which nature can be valuable to human beings, which means contributing to human welfare, as an alternative&#8230;" href="/reviews/how-nature-matters-culture-identity-environmental-value/"> <link property="publisher" resource="#siteorg"> </div> </div> </article> </li> <li> <article class="article snippet card horizontal horizontal hover-bg hover-grow" id="news_167977" typeof="NewsArticle"> <div class="card-image entry-image"> <img property="image" width="300" height="480" src="/assets/593156/300x480/wilson.jpg" alt="Kant and the Naturalistic Turn of 18th Century Philosophy"> </div> <div class="card-body hover-more"> <!-- Book Title --> <h3 class="article-title card-title" property="headline"> <a class="card-link" href="/reviews/kant-and-the-naturalistic-turn-of-18th-century-philosophy/"> Kant and the Naturalistic Turn of 18th Century Philosophy</a> </h3> <div class="article-meta"> <!-- Author/Publisher --> <p class="meta-item__author">Catherine Wilson</p> <p class="meta-item__publisher">Oxford University Press</p> <!-- Reviewer, NDPR Edition --> <div class="meta-item__reviewer" property="author" typeof="Person">Reviewed by <meta property="name" content="Courtney D. Fugate, Florida State University">Courtney D. Fugate, Florida State University</div> <p class="meta-item__edition">2024.11.3</p> <!-- Publication info --> <p class="visually-hidden meta-item publish-info"> <time property="datePublished" datetime="2024-11-04T19:43:00-05:00">November 04, 2024</time> </p> <link property="description" content="notre dame philosophical reviews Catherine Wilson, Kant and the Naturalistic Turn of 18th Century Philosophy, Oxford University Press 2022, 312pp., $97.00 (hbk), ISBN 9780192847928. Reviewed by Courtney D. Fugate, Florida State University&#8230;" href="/reviews/kant-and-the-naturalistic-turn-of-18th-century-philosophy/"> <link property="publisher" resource="#siteorg"> </div> </div> </article> </li> <li> <article class="article snippet card horizontal horizontal hover-bg hover-grow" id="news_167967" typeof="NewsArticle"> <div class="card-image entry-image"> <img property="image" width="300" height="480" src="/assets/593119/300x480/roberts.jpg" alt="The Existence Puzzles"> </div> <div class="card-body hover-more"> <!-- Book Title --> <h3 class="article-title card-title" property="headline"> <a class="card-link" href="/reviews/the-existence-puzzles-an-introduction-to-population-ethics/"> The Existence Puzzles: An Introduction to Population Ethics</a> </h3> <div class="article-meta"> <!-- Author/Publisher --> <p class="meta-item__author"></p> <p class="meta-item__publisher">Oxford University Press</p> <!-- Reviewer, NDPR Edition --> <div class="meta-item__reviewer" property="author" typeof="Person">Reviewed by <meta property="name" content="Krister Bykvist, Stockholm University">Krister Bykvist, Stockholm University</div> <p class="meta-item__edition">2024.11.1</p> <!-- Publication info --> <p class="visually-hidden meta-item publish-info"> <time property="datePublished" datetime="2024-11-03T13:54:00-05:00">November 03, 2024</time> </p> <link property="description" content="&#8216;We are in favour of making people happy, but neutral about making happy people&#8217;, Narveson famously quipped (Narveson 1976, 73). In her book, M.A. Roberts transforms this snappy slogan into a thorough and innovative theory of population ethics. She defends two ideas that initially seem to be in tension,&#8230;" href="/reviews/the-existence-puzzles-an-introduction-to-population-ethics/"> <link property="publisher" resource="#siteorg"> </div> </div> </article> </li> <li> <article class="article snippet card horizontal horizontal hover-bg hover-grow" id="news_167973" typeof="NewsArticle"> <div class="card-image entry-image"> <img property="image" width="300" height="480" src="/assets/593127/300x480/baras.jpg" alt="Calling for Explanation"> </div> <div class="card-body hover-more"> <!-- Book Title --> <h3 class="article-title card-title" property="headline"> <a class="card-link" href="/reviews/calling-for-explanation/"> Calling for Explanation</a> </h3> <div class="article-meta"> <!-- Author/Publisher --> <p class="meta-item__author">Dan Baras</p> <p class="meta-item__publisher">Oxford University Press</p> <!-- Reviewer, NDPR Edition --> <div class="meta-item__reviewer" property="author" typeof="Person">Reviewed by <meta property="name" content="Harjit Bhogal, University of Maryland, College Park">Harjit Bhogal, University of Maryland, College Park</div> <p class="meta-item__edition">2024.11.2</p> <!-- Publication info --> <p class="visually-hidden meta-item publish-info"> <time property="datePublished" datetime="2024-11-03T13:54:00-05:00">November 03, 2024</time> </p> <link property="description" content="Dan Baras&#8217;s excellent book investigates the phenomenon that some facts seem to be&#160;striking or to call out for explanationmore than others. As Baras discusses (section 1.1), this phenomenon plays a central role in arguments across philosophy. For example, fine-tuning arguments for&#8230;" href="/reviews/calling-for-explanation/"> <link property="publisher" resource="#siteorg"> </div> </div> </article> </li> </ol> </div> <div class="section section--reviews-search-form bg-full-bleed section-skyblue"> <div class="block-center"> <h2 class="h3">Search Reviews</h2> <form class="reviews-form" action="/search/" role="search"> <input type="hidden" name="as_sitesearch" value="ndpr.nd.edu"> <div class="review-form__group"> <label class="visually-hidden" for="search-q">Search Reviews</label> <input type="search" class="reviews-form__input" name="q" id="search-q" placeholder="Search Reviews"> <select class="search-key reviews-form__select" name="search_keyword"> <option value="">Keywords</option> <option value="search_authors">Author</option> <option value="search_title">Title</option> <option value="search_reviewers">Reviewer</option> </select> </div> <button class="reviews-form__btn btn">Search</button> <a class="btn btn-inline btn-more" href="/reviews/archives">Review Archive</a> </form> <script> var form = document.querySelector('.reviews-form'); var searchKey = form.querySelector('[name="search_keyword"]'); var q = form.querySelector('[name="q"]'); form.addEventListener('submit', function(e) { e.preventDefault(); var qString = (searchKey.value.length) ? "more:pagemap:metatags-" + searchKey.value + ":" + q.value : q.value; var searchURL = '/search/?search_keyword=' + searchKey.value + '&as_sitesearch=ndpr.nd.edu&q=' + qString; document.location = searchURL; }); </script> </div> </div> </main> <div class="page-sidebar"> <nav id="nav" class="nav-site nav-full" role="navigation" aria-label="Primary navigation"><ul class="nav-level-1 depth_1"><li class="first active nav-115433"><a href="/" aria-current="page" class="current current-last">Home</a></li><li class="nav-115434"><a href="/about/">About</a></li><li class="nav-115440"><a href="/reviews/">Reviews</a></li><li class="nav-115435"><a href="/review-archive/">Archive</a></li><li class="nav-115437"><a href="/for-reviewers/">For Reviewers</a></li><li class="last nav-115438"><a href="/subscribe/">Subscribe</a></li></ul></nav> </div> </div> <!-- Site Footer --> <footer id="footer" class="site-footer"> <div class="footer-org" typeof="Organization" resource="#siteorg"> <meta property="parentOrganization" resource="#parentorg" content="University of Notre Dame"> <ul class="footer-breadcrumbs"><li><a href="https://al.nd.edu">College of Arts and Letters</a></li> <li><a href="https://philosophy.nd.edu">Department of Philosophy</a></li> </ul> <p><a href="/" class="site-link" property="url"><span property="name">Notre Dame Philosophical Reviews</span></a></p> <div class="footer-contacts"> <p class="contact-info"> <span class="address" property="address" typeof="PostalAddress"> <span property="streetAddress">Department of Philosophy <br> 100 Malloy Hall</span><br> <span property="addressLocality">Notre Dame</span>, <span property="addressRegion">IN</span> <span property="postalCode">46556</span> <span property="addressCountry">USA</span> </span> <span class="footer-email" property="email"><a rel="noopener" href="mailto:ndpr@nd.edu">ndpr@nd.edu</a></span> </p> <nav class="social" aria-label="Notre Dame Philosophical Reviews social media navigation" vocab=""> <ul> </ul> </nav> </div> <div property="logo" typeof="ImageObject"><meta property="url" content="https://static.nd.edu/images/webclips/default/webclip-60.png"></div> <p class="copyright"><a href="https://www.nd.edu/copyright/">© 2024</a> <a href="https://www.nd.edu">University of Notre Dame</a></p> </div> <div class="footer-parent" property="parentOrganization" typeof="CollegeOrUniversity" resource="#parentorg"> <meta property="name" content="University of Notre Dame"> <a href="https://www.nd.edu/" class="mark-footer" property="url logo" typeof="ImageObject" aria-label="University of Notre Dame"> <img src="https://static.nd.edu/images/marks/gray/ndmark.svg" width="250" height="60" alt="University of Notre Dame" property="url"> </a> <div class="footer-parent-links"> <nav aria-label="Footer links navigation"> <ul class="footer-links"> <li><a href="https://search.nd.edu/" aria-label="Search Notre Dame">Search</a></li> <li><a href="https://mobile.nd.edu/" aria-label="Notre Dame Mobile App">Mobile App</a></li> <li><a href="https://news.nd.edu/" aria-label="Notre Dame News">News</a></li> <li><a href="https://events.nd.edu/" aria-label="Notre Dame Events">Events</a></li> <li><a href="https://www.nd.edu/visit/" aria-label="Visit Notre Dame">Visit</a></li> <li><a href="https://www.nd.edu/about/accessibility/" aria-label="Notre Dame Accessibility Information">Accessibility</a></li> </ul> </nav> <nav class="social" aria-label="Notre Dame social media navigation" vocab=""> <ul> <li><a class="soc-facebook" href="https://www.facebook.com/notredame/" rel="noopener" aria-label="Notre Dame on Facebook"><svg class="icon" width="16" height="16" aria-hidden="true"><use xlink:href="#icon-facebook"></use></svg> Facebook</a></li> <li><a class="soc-twitter" href="https://twitter.com/NotreDame/" rel="noopener" aria-label="Notre Dame on X/Twitter"><svg class="icon" width="16" height="16" aria-hidden="true"><use xlink:href="#icon-twitter-x"></use></svg> X/Twitter</a></li> <li><a class="soc-instagram" href="https://www.instagram.com/notredame/" rel="noopener" aria-label="Notre Dame on Instagram"><svg class="icon" width="16" height="16" aria-hidden="true"><use xlink:href="#icon-instagram"></use></svg> Instagram</a></li> <li><a class="soc-youtube" href="https://www.youtube.com/user/NDdotEDU" rel="noopener" aria-label="Notre Dame on YouTube"><svg class="icon" width="16" height="16" aria-hidden="true"><use xlink:href="#icon-youtube"></use></svg> YouTube</a></li> <li><a class="soc-linkedin" href="https://www.linkedin.com/school/university-of-notre-dame/" rel="noopener" aria-label="Notre Dame on Linkedin"><svg class="icon" width="16" height="16" aria-hidden="true"><use xlink:href="#icon-linkedin"></use></svg> LinkedIn</a></li> </ul> </nav> </div> </div> </footer> </div><!-- .wrapper --> <script src="/javascripts/themes/ndt/3.0/ndt.js"></script> <script src="/javascripts/site.1693405443.js"></script> </body> </html>