🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: pl.comp.programming
Article #217832

Re: mój obfuskator - problem projektowy

#217832
From: Maciek Godek
Date: Fri, 28 Oct 2022 10:59
109 lines
6670 bytes
piątek, 28 października 2022 o 12:32:17 UTC+2 heby napisał(a):
> On 28/10/2022 12:08, Maciek Godek wrote: 
> > To zależy jak zarządzasz pamięcią.
> Oczywiście. Wszak w C++ można używać np. garbage collectorow. Co czyni 
> go podobnym do Javy. Prawda? 

Java pod wieloma innymi względami jest podobna do C++.

> W tym tępie dojdziemy za chwilę do wniosku, że wszystkie języki 
> programowania są identyczne.

Raczej nie dojdziemy do tego, że są identyczne,
w każdym razie nie bez poważnych błędów w rozumowaniu.

> > Co do współczesnych wersji PHP, to jeżeli np. używasz funkcji shmop_*, 
> > to zarządzanie taką pamięcią niewiele się różni od tego, co byś pisał w C.
> A używasz i/lub znasz kogoś kto używa?

Zdarzyło mi się.

> >> Niewątpliwie należy mocno naciągnąć tą "cechę" aby uzasadnić takie 
> >> twierdzenia. 
> > Nieprawda. 
> > Składnia pętli for jest praktycznie identyczna.
> Serio? W C++, który ma być ponoć podobny, jest:
> for( auto x : container) [...]

No widzisz.
W PHP też jest for_each, który się różni od tego co masz w C
(i jest - uwaga uwaga - bardziej podobny do tego co masz w C++)

> > Podobnie jak pozostałe 
> > instrukcje sterujące (if, while, switch, do while).
> A wies,z że są prawi identyczne równiez w JS, Javie i wielu innych? 

Tak. Jak również to, że są języki, w których ich nie ma.
Bo - uwaga uwaga - JS i Java też są składniowo podobne do C.

(Natomiast mniej podobne składniowo są np. Lua, Ruby czy Python)

> Zaryzykujesz, że Java i C++ to jezyki "podobne" bo mają te same 
> instrukcje co prawie każdy jezyki imperatywny? 

Java i C++ to języki podobne, bo Java celowo była tak projektowana,
żeby była podobna do C++. (I nie nazwałbym tego stwierdzenia ryzykownym)

> W takich oparach absurdu będzie cieżko znaleźc język "niepodobny". No 
> chyba, że brainfuck.

Również Forth jest dość mocno niepodobny.
Tzn. ok, jest podobny pod tym względem, że można w nim używać słów.

Natomiast są takie języki, jak np. unlambda czy whitespace,
które są pod tym względem podobne do brainfucka, że
- są ezoteryczne
- nie można w nich używać słów

> > W PHP jest nawet funkcja "define", która została tak "zaprojektowana", 
> > żeby przypominać preprocesor języka C (którego wielu programistów 
> > używało do definiowania stałych w programie)
> Do robienia prymitywnych substytutów. #define w C jest o wiele bardziej 
> skomplikowana, co nie jest, zaznaczam, ani trochę zaletą.

Owszem.

> >>> Jak weźmiesz np. Lamborghini Diablo, i resoraka Lamborghini Diablo, to też będą do siebie podobne, 
> >>> chociaż jeden z nich będzie dużo mniejszy i nie będzie nawet miał silnika. 
> >> Jak by to było takie podobieństwo, to bym nie protestował. 
> > To jest dokładnie takie podobieństwo.
> Nie, to dwa różne języki o wspólnej inspiracji. *Ważnych* detali je 
> różniących jest zdecydowanie za dużo, aby była mowa o tym że są podobne, 
> bo "klamry".

Ale te "klamry" to Ty powiedziałeś.

> >> W PHP są tylko "klamry" podobne do C++. Pozostałe cechy są skrajnie 
> >> różne. Oba imperatywne, ale to akurat 95% języków na rynku ma tą cechę. 
> >> PHP to zupełnie inny język, ze składnią kradzioną nie tylko z C++ ale 
> >> również z wysypiska śmieci, chorych urojeń i przypadkowych pomysłów. 
> > Czyli z dokładnie tych samych źródeł, co C++. Kolejne podobieństwo.
> "Kolega pisze na komputerze a ja długopisem. Dlatego właśnie można 
> powiedzieć, że robimy to bardzo podobnie, bo oboje piszemy". 

I pewnie nawet obaj używamy alfabetu łacińskiego.

> Jesteś pewny, że rozumiesz słowo "podobieństwo" tak samo jak reszta 
> ludzkości?

Podobieństwo dwóch przedmiotów rozumiem w taki sposób,
że istnieją w tych przedmiotach pewne cechy, które są identyczne.

A Ty jak rozumiesz? (I jak rozumiesz, że reszta ludzkości rozumie?)


> Nie ma, ale tu usenet a ja ciągle nie wiem gdzie PHP jest podobny do 
> C++.

Nie wiesz, bo nie pytasz po to, żeby się dowiedzieć, tylko po to,
żeby się dowartościować i pokazać swoją wyższość nad rozmówcą.

> Miałem szczerą nadzieję, że w świecie PHP, z którym zerwałem 
> kontakt 20 lat temu, coś ciekawego się wydarzyło.

Wydarzyło. W PHP5.2 wprowadzono domknięcia, w PHP7 uproszczono składnię,
w PHP8 zdaje się usprawniono wydajność.

> Aż strach pomyśleć,  jak ktoś w to uwierzy, że to "prawie jak w C++".

Bo co się wtedy stanie?
Technical Details
Message-ID: <6f90c461-2fa9-435c-a120-31cae1a9b3a4n@googlegroups.com>
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.icm.edu.pl!newsfeed.pionier.net.pl!news.samoylyk.net!3.eu.feeder.erje.net!feeder.erje.net!proxad.net!feeder1-2.proxad.net!209.85.160.216.MISMATCH!news-out.google.com!nntp.google.com!postnews.google.com!google-groups.googlegroups.com!not-for-mail
References: <tj64ne$36qsg$3@portraits.wsisiz.edu.pl> <tj64rj$1mmv4$1@dont-email.me> <tj8epv$3afh$1@portraits.wsisiz.edu.pl> <tj8vg4$21ll8$2@dont-email.me> <tjabcs$t53e$2@portraits.wsisiz.edu.pl> <tjan0p$2drd6$1@dont-email.me> <tjb0ft$10mf6$1@portraits.wsisiz.edu.pl> <tjb0up$2eot6$1@dont-email.me> <tjb1g2$10mnn$2@portraits.wsisiz.edu.pl> <tjb2ee$2ep64$1@dont-email.me> <tjg379$2q700$1@portraits.wsisiz.edu.pl> <tjg38l$314k8$2@dont-email.me> <tjg3ua$2qa65$1@portraits.wsisiz.edu.pl> <tjg46f$314k8$3@dont-email.me> <e896216c-e3ca-4ec9-9903-8a33d43fcc00n@googlegroups.com> <tjg6o5$31ke4$1@dont-email.me> <6a159c97-995c-4408-9cf8-d14faee45dd9n@googlegroups.com> <tjg8j5$31ke4$2@dont-email.me> <90bbce43-c979-43da-aa26-9397596021c6n@googlegroups.com> <tjgb3e$31ke4$3@dont-email.me>

Show Full Headers
Complete Article Headers
X-Received: by 2002:ad4:596b:0:b0:4b1:ee66:1cb8 with SMTP id eq11-20020ad4596b000000b004b1ee661cb8mr45246092qvb.3.1666954798007;        Fri, 28 Oct 2022 03:59:58 -0700 (PDT)
X-Received: by 2002:a81:7502:0:b0:36b:a5a9:aa1d with SMTP id q2-20020a817502000000b0036ba5a9aa1dmr28344054ywc.300.1666954797699; Fri, 28 Oct 2022 03:59:57 -0700 (PDT)
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.icm.edu.pl!newsfeed.pionier.net.pl!news.samoylyk.net!3.eu.feeder.erje.net!feeder.erje.net!proxad.net!feeder1-2.proxad.net!209.85.160.216.MISMATCH!news-out.google.com!nntp.google.com!postnews.google.com!google-groups.googlegroups.com!not-for-mail
Newsgroups: pl.comp.programming
Date: Fri, 28 Oct 2022 03:59:57 -0700 (PDT)
In-Reply-To: <tjgb3e$31ke4$3@dont-email.me>
Injection-Info: google-groups.googlegroups.com; posting-host=85.14.70.66; posting-account=f7iIKQoAAAAkDKpUafc-4IXhmRAzdB5r
NNTP-Posting-Host: 85.14.70.66
References: <tj64ne$36qsg$3@portraits.wsisiz.edu.pl> <tj64rj$1mmv4$1@dont-email.me> <tj8epv$3afh$1@portraits.wsisiz.edu.pl> <tj8vg4$21ll8$2@dont-email.me> <tjabcs$t53e$2@portraits.wsisiz.edu.pl> <tjan0p$2drd6$1@dont-email.me> <tjb0ft$10mf6$1@portraits.wsisiz.edu.pl> <tjb0up$2eot6$1@dont-email.me> <tjb1g2$10mnn$2@portraits.wsisiz.edu.pl> <tjb2ee$2ep64$1@dont-email.me> <tjg379$2q700$1@portraits.wsisiz.edu.pl> <tjg38l$314k8$2@dont-email.me> <tjg3ua$2qa65$1@portraits.wsisiz.edu.pl> <tjg46f$314k8$3@dont-email.me> <e896216c-e3ca-4ec9-9903-8a33d43fcc00n@googlegroups.com> <tjg6o5$31ke4$1@dont-email.me> <6a159c97-995c-4408-9cf8-d14faee45dd9n@googlegroups.com> <tjg8j5$31ke4$2@dont-email.me> <90bbce43-c979-43da-aa26-9397596021c6n@googlegroups.com> <tjgb3e$31ke4$3@dont-email.me>
User-Agent: G2/1.0
MIME-Version: 1.0
Message-ID: <6f90c461-2fa9-435c-a120-31cae1a9b3a4n@googlegroups.com>
Subject: Re: mój obfuskator - problem projektowy
From: Maciek Godek <godek.maciek@gmail.com>
Injection-Date: Fri, 28 Oct 2022 10:59:57 +0000
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit