all messages for Emacs-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
From: Emanuel Berg <embe8573@student.uu.se>
To: help-gnu-emacs@gnu.org
Subject: Re: Check for redundancy
Date: Sun, 28 Jun 2015 04:02:27 +0200	[thread overview]
Message-ID: <877fqolhe4.fsf@nl106-137-147.student.uu.se> (raw)
In-Reply-To: m1zj3l1tvq.fsf@nobis-it.eu

Stefan Nobis <snobis@gmx.de> writes:

> IMHO the most interesting part would be to identify
> similar code blocks (even using different functions
> and variables internally), that can be refactored to
> a new, more generalized function with
> apropriate parameters.
>
> But this "similiarity" is quite difficult. In the
> general case you could summarize all your code
> blocks into one single function and on the other
> hand there might be quite some functions that are
> quite similiar but should stay separated because
> this way the intentions are better expressed and the
> the code using these function will be more readable.
>
> Therefore training an AI to produce really helpful
> recommendations will be quite difficult, me thinks.

What I remember from the thrice-accursed textbooks on
AI the standard example was a machine playing
tic-tac-toe on a 3x3 grid (like in the Wargames
movie). To this end they made a physical array of
boxes that each would contain balls of different
colors. This would correspond to the heuristics of
search space traversal, and it would be gradually
refined for each game played. Soon the machine would
play a perfect game. When computers came they put this
into a program and the training consisted of the
program playing against another instance of itself.

This is all cool and well, but I still think it would
be much easier to base this on some base machine
representation. That way, you don't have to worry
about variable and function names as those would be
data and references in registers.

It doesn't have to be a perfect hit! You can have it
suggest here as well. But put it this way: if the
compiler can't put it into nearly the same form after
applying all optimization - either the compiler isn't
that good, or the functions just aren't the same.

I just got and idea - stay tuned...

-- 
underground experts united
http://user.it.uu.se/~embe8573




  reply	other threads:[~2015-06-28  2:02 UTC|newest]

Thread overview: 44+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-06-24  9:29 Check for redundancy Andreas Röhler
2015-06-24 13:23 ` Drew Adams
2015-06-24 14:55   ` Andreas Röhler
     [not found]   ` <mailman.5580.1435157733.904.help-gnu-emacs@gnu.org>
2015-06-24 18:21     ` Stefan Monnier
2015-06-24 21:10       ` tomas
2015-06-25  3:23         ` Stefan Monnier
2015-06-25  7:47           ` tomas
2015-06-26 15:01             ` Emanuel Berg
2015-06-26 20:25               ` Marcin Borkowski
2015-06-26 22:48                 ` Emanuel Berg
2015-06-27 12:11                 ` Robert Thorpe
2015-06-27 13:12                   ` tomas
2015-06-27 23:02                     ` Emanuel Berg
2015-06-28 11:07                       ` tomas
2015-06-28 15:50                         ` Emanuel Berg
2015-06-28 16:35                           ` Yuri Khan
2015-06-28 20:03                             ` Emanuel Berg
2015-06-28 21:38                           ` Robert Thorpe
2015-06-28 23:47                             ` Emanuel Berg
2015-07-02 23:37                               ` Robert Thorpe
2015-07-03  3:36                                 ` Yuri Khan
2015-07-03  6:41                                   ` Eli Zaretskii
2015-07-03 11:48                                     ` Yuri Khan
2015-07-03 12:16                                       ` Eli Zaretskii
2015-07-03 22:59                                         ` Robert Thorpe
2015-07-03  6:09                                 ` tomas
2015-07-03 19:56                                   ` Emanuel Berg
     [not found]                                 ` <mailman.6215.1435903802.904.help-gnu-emacs@gnu.org>
2015-07-03  6:38                                   ` Rusi
2015-07-03  7:54                                     ` tomas
2015-07-03  8:55                                     ` Loris Bennett
2015-06-24 23:31       ` Emanuel Berg
2015-06-25  2:03       ` Óscar Fuentes
2015-06-25  2:07         ` Emanuel Berg
2015-06-25  2:53           ` Óscar Fuentes
2015-06-25  3:21             ` Emanuel Berg
     [not found]       ` <mailman.5603.1435188769.904.help-gnu-emacs@gnu.org>
2015-06-25  7:43         ` Stefan Nobis
2015-06-25  8:52           ` Andreas Röhler
2015-06-26 14:51             ` Emanuel Berg
2015-06-26 14:39           ` Emanuel Berg
     [not found]           ` <mailman.5719.1435329683.904.help-gnu-emacs@gnu.org>
2015-06-27  7:40             ` Stefan Nobis
2015-06-28  2:02               ` Emanuel Berg [this message]
2015-06-28  2:40                 ` Emanuel Berg
     [not found] <mailman.6209.1435880273.904.help-gnu-emacs@gnu.org>
2015-07-03  8:40 ` Pascal J. Bourguignon
2015-07-03 20:04   ` Emanuel Berg

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=877fqolhe4.fsf@nl106-137-147.student.uu.se \
    --to=embe8573@student.uu.se \
    --cc=help-gnu-emacs@gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this external index

	https://git.savannah.gnu.org/cgit/emacs.git
	https://git.savannah.gnu.org/cgit/emacs/org-mode.git

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.