I want to stop watching too much pornography at night. It'd be useful if I were to create a script to automatically turn off my Mac at 11:00 PM and keep it turned off until 7:00 AM. If I power the computer on at any time between 11 o'clock and 7 o'clock, it should immediately shut itself down again. I also want disabling the script to be difficult to prevent myself from easily bypassing it to watch porn. How do I create this program?
This is what Parental Controls can be used for.
You can set the times where you can and cannot use the computer. The caveat is that you cannot be an Admin so you will need to give the reins of control over to a trusted person.
That said, Parental Controls is just one avenue and you cannot rely on tech to address an issue like this.
I say this with the utmost sincerity and with nothing else than the stated goal of seeing you helped:
This is symptomatic of an addictive behavioral disorder and can be something that is very difficult to overcome. In addition to the tech blocks, I highly suggest you seek out a licensed therapist.
One other possibility is, if you want to continue using your administrator account, is Focus app. After setting it up, you can give the password to unlock it to a trusted person and then restrict your account usage during the hours you don't want to use your computer.
Of course, this is no substitute for having the willpower to prevent yourself from using your computer when you would not like to. If you are creative enough, there will be a way to bypass these restrictions. However, this app is a reasonable step to take if you think that you a slightly stronger method of prevention from using your computer.
Note: Focus comes with a free trial and costs $20 for a single license. There are other apps which provide similar services, some of which may provide your desired functionality for free. Focus app is simply the app which I am the most familiar with and have sufficient confidence in, so I am suggesting it here.